-
[Linux] Note tail/tailf
intro 이번 포스트는 간단한 메모 형식으로 작성하고 작성하게된 계기는 안좋은 옛날 습관이 얼마나 무서운가를 남기기 위해 작성하였다. Where is my tailf….? 기존에 UNIX engineer 시절 때는 tail 명령으로 -f 옵션을 이용하여 로그를 모니터링을 하였다. 하지만 어느 날 Linux engineer 를 하면서 tailf 라는 명령어를 알게 되면서 tail 을 안쓰는 이상한 습관이 생겨버렸다. tailf 는 util-linux Package 에 포함되어 있다가 2017 년도에 제거된 명령어인 것으로 보인다. (https://www.spinics.net/lists/util-linux-ng/msg13779.html) 그런데 나는 아직까지 사용을 했었다. 키보드 3회를 더 누르는게...
-
[Linux] Amazon Linux 2 systemd editor 변경
intro 요즘 Amazon Linux 2 (ec2) 를 사용하면서 개인적으로 불편한 점을 발견하여 아래와 같이 기록한다. systemctl edit 제목과 같이 systemctl edit 명령을 통해 systemd 의 override.conf 를 수정 할 수 있는데 Amazon Linux 2 에서는 계속 nano Editor 로 해당 editor 가 작동하는 불편함이 있었다. OS 전체의 Editor 가 nano 로 설정된 것은 아니다. crontab -e 는 vi 로 열린다. Configuration 아래 명령어를 통해 Environment 를 추가하면 systemd Editor 를 변경 할 수 있다. $...
-
[OCP] [Preview] Microshift (Lightweight Openshift)
Microshift 란? Kubecon 2022 에서 Redhat 이 발표한 Lightweight Kubernetes Solution 입니다. (https://www.redhat.com/en/about/press-releases/red-hat-introduces-lightweight-kubernetes-solution-power-next-evolution-open-edge-computing) k3s 와 같은 느낌의 Solution 으로 예상이 되어 한번 설치하여 테스트하고 설치 과정중 이슈가 있던 부분에 대해 기록해보도록 하겠습니다. 설치 먼저 이번 테스트 환경은 CentOS 8 Stream 에서 진행하였습니다. $ cat /etc/redhat-release CentOS Stream release 8 CRI-O 설치 공식 문서에선 cri-o 1.21 version 을 설치하는 가이드가 있어서 그대로 진행했으나 진행이 안되었습니다. 마치 cri-o repository 가 등록이 되어 있는 것처럼 되어 있으나 등록이...
-
[Docker] Docker Completion 설정
Docker Completion 설정 (자동 완성) 최근 Podman 만 사용하다가 오랜만에 Docker 를 설치하면서 변경된 부분이 있는데 따로 공식 문서나 자료가 없어서 관련하여 작성해본다. 변경된 이유 Docker CE (https://github.com/docker/docker-ce) ⚠️ This repository is now deprecated and will be archived (Docker CE itself is NOT deprecated) ⚠️ Starting with the Docker 20.10 release, packages for the Docker Engine and Docker CLI are built directly from their respective source repositories instead of from this repository. 기존에 사용중이던 docker-ce...
-
[Linux] Udev Rule 사용법
udevadm, udev/rules.d Udev 란 Udev 는 리눅스 커널을 위한 장치 관리자이다. devfsd와 hotplug를 계승하는 udev는 주로 /dev 디렉터리의 장치 노드를 관리한다. CentOS/RHEL/OL/Rocky 에서 systemd-udevd daemon 으로 동작된다. 장치 정보 상세 보기 Udev Rule 을 사용하기 위해선 udevadm 명령을 통해 장치의 상세 정보를 확인해야된다. 아래는 장치의 기본 정보를 확인하는 방법이다. # udevadm info /dev/sdb P: /devices/pci0000:80/0000:80:08.3/0000:83:00.0/ata2/host1/target1:0:0/1:0:0:0/block/sdb N: sdb S: disk/by-id/ata-Samsung_SSD_860_PRO_2TB_S5Gqwerasdfzxfc S: disk/by-id/wwn-0x500123456789012 S: disk/by-path/pci-0000:83:00.0-ata-2.0 E: DEVLINKS=/dev/disk/by-id/ata-Samsung_SSD_860_PRO_2TB_S5Gqwerasdfzxfc /dev/disk/by-id/wwn-0x500123456789012 /dev/disk/by-path/pci-0000:83:00.0-ata-2.0 E: DEVNAME=/dev/sdb E: DEVPATH=/devices/pci0000:80/0000:80:08.3/0000:83:00.0/ata2/host1/target1:0:0/1:0:0:0/block/sdb E: DEVTYPE=disk ...생략 P 는 DEVPATH,...
-
[SSL] Apache/Nginx/etc 인증서 교체 방법
https SSL 인증서 교체 방법 Apache 교체 Apache 의 경우, <VirtualHost *:443> ServerName "지정한 서버인증서에 포함(지원)된 도메인" SSLEngine on SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1 (서버 환경에 따라서 선택적 적용) SSLCertificateKeyFile /인증서파일경로/개인키 ex. sslcert.co.kr_xxxxx.key.pem SSLCertificateFile /인증서파일경로/서버인증서 ex. sslcert.co.kr_xxxxx.crt.pem SSLCertificateChainFile /인증서파일경로/체인인증서ex. chain-bundle.pem SSLCACertificateFile /인증서파일경로/루트인증서 ex. AAACertificateServices.Root.crt.pem </VirtualHost> 위와 같이 SLCertificateKeyFile, SSLCertificateFile, SSLCertificateChainFile, SSLCACertificateFile option 이 별도로 분리되어 있습니다. 각각 option 형식에 맞는 SSL 인증서의 경로를 입력하고 Apache 를 재시작 합니다. 설정 파일 참고 (https://www.sslcert.co.kr/guides/Apache-SSL-Certificate-Install) Nginx 교체 Nginx 의...
-
[Kubernetes] SOPS(Secrets OPerationS) Guide
Kubernetes Secret/ConfigMap 암호화 SOPS(Secrets OPerationS) 란? sops 는 YAML, JSON, ENV, INI, BINARY 형식의 파일 암호화를 지원하고 AWS KMS, GCP KMS, Azure Key Vault, age 등을 이용하여 암호화하는 파일 편집기 입니다. vs kubeseal GitOps 를 하다보면 Secret 혹은 API Token, Key 등을 git repository 에 실수로 Push 하여 침해 사고를 겪는 경우가 많이 발생 됩니다. 그리하여 kubeseal 이라는 Sealed Secret 도구를 이용하여 ConfigMap 혹은 Secret 을 Sealed 하여 Git 에 Push 하는 방식을 선택하기도 합니다. kubeseal 도 보안을...
-
[Ubuntu] Ubuntu 22.04 Ring Buffer 설정 방법
Temporary settings 아래와 같이 ethtool 명령을 통해 online 중에 변경이 가능하다. 주의) 변경되는 Interface 의 Link UP/DOWN 이 발생한다. $ sudo ethtool -G eth0 rx 4096 tx 4096 $ sudo ethtool -g eth0 Ring parameters for eth0: Pre-set maximums: RX: 4096 RX Mini: n/a RX Jumbo: n/a TX: 4096 Current hardware settings: RX: 4096 RX Mini: n/a RX Jumbo: n/a TX: 4096 Permanently settings 주로 CentOS 와 같은 RHEL 계열은 network-script 에 ETHTOOL_OPTS 을 사용하거나...
-
[Prometheus] Pacemaker Exporter 사용기
Pacemaker Exporter 사용기 Pacemaker (이하 pcs) Exporter 를 사용해보고 실제 pcs cluster 를 어떻게 모니터링 하는지 확인해보자. pcs exporter 설치 아래 명령을 통해 설치가 가능하다. [root@c-node-4 ~]# wget https://github.com/ClusterLabs/ha_cluster_exporter/releases/download/1.3.0/ha_cluster_exporter-amd64.gz [root@c-node-4 ~]# gzip -d ha_cluster_exporter-amd64.gz [root@c-node-4 ~]# chmod u+x ha_cluster_exporter-amd64 pcs cluster node 에 해당 exporter 를 설치한다. pcs exporter option pcs exporter 의 option 은 아래와 같다. [root@c-node-4 ~]# ./ha_cluster_exporter-amd64 --help usage: ha_cluster_exporter-amd64 [<flags>] Flags: -h, --help Show context-sensitive help (also try --help-long and --help-man)....
-
[Ubuntu] Ubuntu 22.04 needrestart 설정
What? Ubuntu 22.04 를 사용하는 어느 날 apt 를 사용하여 package 설치간 아래와 같은 log 가 나왔다. $ sudo apt install xxx ...생략 Scanning processor microcode... Scanning linux images... Running kernel seems to be up-to-date. The processor microcode seems to be up-to-date. No services need to be restarted. No containers need to be restarted. No user sessions are running outdated binaries. No VM guests are running outdated hypervisor (qemu) binaries on this host 무슨 의미와...