-
[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 무슨 의미와...
-
[Linux] dig command 사용법
DNS 질의 매번 잊어버려서 따로 정리함. 자주 활용되는 것만 정리. dig command 란? dig 는 도메인 네임 시스템 네임서버에 질의하기 위한 네트워크 관리 명령 줄 인터페이스 도구 입니다. Domain 의 IP 확인 Domain 에 연결된 IP 를 확인하는 방법입니다. chhan@chhanPC:~$ dig chhanz.mooo.com ; <<>> DiG 9.16.1-Ubuntu <<>> chhanz.mooo.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31021 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;;...
-
[Ubuntu] Ubuntu 22.04 PXE Boot Server 구성
isc-dhcp-server, tftpd-hpa, apache2 Ubuntu 22.04 PXE Boot Server 구성 PXE Boot 를 구성하기 위해서는 3가지 요소가 필요하다. httpd : ISO 배포를 위함. tftpd : bootloader 배포를 위함. dhcpd : PXE Boot 간 IP 를 임대하기 위함. httpd 구성 apache2 를 이용하여 구성합니다. (nginx 와 같은 기타 다른 WEB Application 을 이용해도 무방합니다.) Install apache2 아래 명령을 이용하여 설치를 진행합니다. $ sudo apt install -y apache2 Ubuntu ISO 를 Web 서버의 DocumentRoot 에 추가합니다. $ cd /var/www/html/ $ sudo...
-
[Linux] Package 에 포함된 file 목록 확인
Ubuntu/CentOS/Rocky/RHEL Package 에 포함된 file 목록 확인 특정 Package 에 포함된 File 이 무엇인지 확인하기 위해선 아래와 같이 Linux 에 따라 확인이 가능합니다. CentOS / RHEL / Rocky 계열 rpm 명령을 통해 확인합니다. $ rpm -ql epel-release-7-11.noarch /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel.repo /usr/lib/systemd/system-preset/90-epel.preset /usr/share/doc/epel-release-7 /usr/share/doc/epel-release-7/GPL 위와 같이 epel-release package 에 포함된 파일을 확인 할 수 있습니다. Ubuntu 계열 dpkg 명령을 통해 확인합니다. $ dpkg -L tmux /. /usr /usr/bin /usr/bin/tmux /usr/share /usr/share/doc /usr/share/doc/tmux /usr/share/doc/tmux/NEWS.Debian.gz /usr/share/doc/tmux/README /usr/share/doc/tmux/changelog.Debian.gz /usr/share/doc/tmux/copyright /usr/share/doc/tmux/example_tmux.conf...
-
[Kubernetes] Cloud Native PostgreSQL Operator (CloudNativePG)
Cloud Native PostgreSQL Operator (CloudNativePG) Cloud Native PostgreSQL Operator (이하 CloudNativePG) 란? 모든 Kubernetes Cluster 에서 PostgreSQL Workload 를 관리하도록 설계된 Operator 입니다. 기본적으로 Primary/Standby 구조, Native Streaming Replication 사용하는 PostgreSQL Database Cluster 생성/관리 됩니다. Install CloudNativePG Manifest 를 이용한 설치 (공식 문서) 는 아래와 같은 방법으로 진행합니다. kubectl apply -f \ https://raw.githubusercontent.com/cloudnative-pg/cloudnative-pg/main/releases/cnpg-1.15.1.yaml 관련하여 Helm Chart 로도 관리가 가능하도록 Chart 를 제공하고 있습니다. 이번 포스팅에선 Helm Chart 를 이용한 설치에 대한 내용을 담도록 하겠습니다. (☁...
-
[Kubernetes] MySQL Operator
MySQL Operator MySQL Operator 는 MySQL 서버 및 MySQL 라우터 그룹으로 구성된 하나 이상의 MySQL InnoDB 클러스터 관리에 중점을 둔 Operator 입니다. MySQL Operator 자체는 Kubernetes 클러스터에서 실행되며 MySQL Operator 를 통해 계속 사용 가능하고 실행 중인지 확인하는 역할을 합니다. Operator 배포 Helm 을 이용하여 MySQL Operator 를 배포 하겠습니다. (☁ |DOIK-Lab:default) root@chhan-k8s-1:~# helm repo add mysql-operator https://mysql.github.io/mysql-operator/ "mysql-operator" has been added to your repositories (☁ |DOIK-Lab:default) root@chhan-k8s-1:~# helm repo update Hang tight while we...
-
[Kubernetes] Statefulset 와 Headless Service
목차 Statefuleset 이란? Test Run Statefuleset Headless Service 참고 자료 Statefuleset 이란? Statefulset 은 deployment 와 유사하게 container spec 기반으로 pod 를 관리하는 resource 이다. Statefulset 는 아래와 같은 환경을 요구하는 어플리케이션에서 유용하게 사용 할 수 있다. 안정된, 고유한 네트워크 식별자. 안정된, 지속성을 갖는 스토리지. 순차적인, 정상 배포(graceful deployment)와 스케일링. 순차적인, 자동 롤링 업데이트. Test 아래 yaml 을 이용하여 Statefulset 을 만들었다. 사용된 어플리케이션은 Flask 이며, App 이 기동될 때 Pod 정보를 PV 에 기록하는...
-
[Kubernetes] OpenStack Instance 에서 Cailco CNI 로 Kubernetes 구성
목차 Intro Issue Root Cause Finish 참고 자료 Intro 최근 Kubernetes 에서 데이터베이스 오퍼레이터를 이용하여 데이터베이스 배포 및 운영을 스터디하는 그룹에 참여하게 되었습니다. (https://gasidaseo.notion.site/e49b329c833143d4a3b9715d75b5078d) 위와 같은 스터디를 진행하기위해 Kubernetes Cluster 를 생성하는데 kubeadm 으로 Kubernetes 를 배포하면 되는 쉬운 환경이라 큰 걱정 없이 환경 구축을 시작했습니다. 대부분의 스터디맴버의 환경은 AWS 이고 나의 환경은 OpenStack 이며, 나는 Public Cloud 를 사용 할 이유가 없었다. 하지만 스터디맴버들과 다른 나의 환경이 문제가 되었습니다.ㅎㅎㅎ Issue kubeadm 을 이용하여 Master...