본문 바로가기

Engineering

(18)
[Redhat Linux] Kernel downgrade yum을 통해 rpm을 설치하거나 업그레이드를 했을 때 dependancy 때문에 커널이 업그레이드되는 일이 벌어질 때가 있다. 모든 sw가 그렇듯 upgrade보다 downgrade가 좀 더 까다롭다. 상용 장비에서는 이런 실수를 방지하고자 yum repository를 모두 disable 시키는 편이다. [01] 현재 시스템이 가용가능한 커널 정보 확인[root@localhost ~]# grubby --info=ALL | grep ^kernelkernel="/boot/vmlinuz-4.18.0-553.30.1.el8_10.x86_64"kernel="/boot/vmlinuz-4.18.0-477.10.1.el8_8.x86_64"kernel="/boot/vmlinuz-0-rescue-e2776747db8a4..
[Wireshark] Diameter dictionary 추가 diameter 패킷을 wireshark로 열어서 확인하려고 했더니, 위 사진과 같이 Unknown으로 인식이 되는 경우가 있다.이는 diameter dictionary에 해당 코드가 등록되어 있지 않아서 그런것이다. 따라서 규격서를 찾아서 손으로 추가해주어야 한다.   diameter dictionary 파일 열기 문서 edit tool > 관리자 권한 실행'C:\Program Files\Wireshark\diameter' 아래에 위치한 dictionary.xml 열기Unknown cmd code '8388728' 찾기주석으로 DPR/DPA 임이 명시 되어있음. dictionary에 추가  Unknown이던 Command Code가 추가 행에 알맞게 display 됨. 나머지 Unknown인 AVP들도..
[Ansible]10. Ansible Role 플레이북을 작성하다 보면 이전에 사용한 코드를 재활용할 여지가 많다. 하지만 플레이북 자체의 내용이 길고 복잡하다면 일일히 수정하기 어려워진다. 앤서블에서는 표준화된 디렉토리 구조로 컨텐츠들을 모듈화하여 코드 재사용 및 협업을 편리하게 할 수 있도록 Ansible role 이라는 기능을 제공한다. 또 Ansible galaxy를 통하여 작성한 롤을 공유할 수 있다. 앤서블 롤의 구조앤서블 롤은 아래와 같은 표준화된 디렉토리 구조를 가진다. 최상위 디렉토리인 'role'은 롤 자체의 이름을 의미하며, 하위 디렉토리들은 롤에서 목적에 따라 정의된 역할을 수행한다. 각 files와 templates을 제외한 각 하위토리 안에는 main.yml 파일이 존재한다. 최종적으로 롤이 실행될 때, main.yml 파일..
[Ansible] 9. 핸들러 및 작업 실패 처리 어떠한 작업이 이루어진 이후에 실행되어야만 하는 작업들이 있다. 예를 들어 서비스의 config를 변경 후에 변경사항을 적용하려면 서비스를 재시작 해야 하는데, 이때 핸들러를 사용하여 작업 할 수 있다. 핸들러는 대상 노드가 변경 될 때(play 결과가 changed일 때) 수행하게 된다. 앤서블 핸들러앤서블에서 핸들러를 사용하려면 notify 문을 이용하여 명시적으로 호출된 경우에 사용할 수 있다.[root@Ansible-Controller ch09_handler]# cat handler-ex.yml ---- hosts: node1 tasks: - name: restart rsyslog ansible.builtin.service: name: rsyslog state: rest..
[Redhat Linux] KVM을 이용하여 가상화 환경 구축하기 KVMKernel-based Virtual Machine의 약어로, 오픈소스 가상화 기술이다. 리눅스를 하이퍼바이저로써 이용할 수 있게 해주는 솔루션이다. KVM은 리눅스 커널의 일부이기 때문에 리눅스 커널 자원을 공유하고, 이를 본인의 리소스로써 활용할 수 있다.구축 Preliminary EnviromentBIOS > Virtualization technology - onOS: Rocky 8.8하나 이상의 Routed port네트워크  위 그림과 같이 kvm에서 관리하는 vm들이 호스트 서버와 네트워크 자원을 공유하여 사용할 수 있게끔, bridge interface를 생성한다. [기존 인터페이스]$ cat /etc/sysconfig/network-scripts/ifcfg-eno1TYPE=Etherne..