-
Flatcar Container Linux on AWS 에서 ignition 및 cloud-init 설정
Flatcar Container Linux 란? Flatcar Container Linux 는 기존 CoreOS Container Linux 에서 Fork 해서 만들어진 컨테이너 리눅스 배포판입니다. Ignition vs Cloud-init Ignition 이란 컨테이너 리눅스 운영체제에서 사용되는 low-level 시스템 구성 도구입니다. Ignition 은 첫번째 부팅에서 실행이 되도록 설정이 되어있고 초반 컨테이너 리눅스 운영체제의 구성을 담당하는 역할을 하고 있습니다. 그리고 cloud-init 으로 말하지만 컨테이너 리눅스 운영체제에서는 coreos-cloudinit 혹은 oem-cloudinit 를 통해 일반적인 리눅스의 cloud-init 과 유사한 동작을 지원하는 것으로 생각하면 좋을 것 같습니다. Ignition 배포...
-
[Linux] Out of Memory 테스트
Flask App Out of Memory 를 생성하는 테스트 어플리케이션 Out of Memory 현상을 확인하기 위해 아래와 같은 Flask 테스트 어플리케이션을 제작하였습니다. 코드는 Gen AI 의 도움을 받아 생성하였습니다. Install 아래와 같은 방식으로 Python virtual environment 를 생성하고 pip 을 이용하여 Package 를 설치합니다. [root@ip-172-31-14-46 ~]# python3 -m venv flask [root@ip-172-31-14-46 ~]# source flask/bin/activate (flask) [root@ip-172-31-14-46 ~]# pip install Flask psutil 아래와 같은 방법으로 소스를 추가합니다. (flask) [root@ip-172-31-14-46 ~]# mkdir -p app/templates (flask) [root@ip-172-31-14-46 ~]# vi app/app.py (flask)...
-
[Amazon Linux 2023] update-alternatives 로 editor 변경
update-alternatives 로 editor 변경 이번 글에서는 Amazon Linux 2023 에서 update-alternatives 을 이용하여 Default Editor 를 변경하는 과정을 직접 등록하고 사용해보도록 하겠습니다. Configuration 사용할 Editor 를 아래와 같은 방법으로 등록합니다. $ sudo update-alternatives --install /usr/bin/editor editor /usr/bin/vim 1 $ sudo update-alternatives --install /usr/bin/editor editor /usr/bin/nano 2 등록된 Editor 를 다음과 같은 방법으로 확인합니다. $ sudo update-alternatives --display editor editor - status is auto. link currently points to /usr/bin/nano /usr/bin/vim - priority 1 /usr/bin/nano - priority...
-
[Linux] CentOS 7 : Could not resolve host: mirrorlist.centos.org; Unknown error
EOS CentOS 7 - yum error End of Service - CentOS 7 CentOS 7 은 2024년 06월 30일 이후로 End of Service 가 되었습니다. 지속적인 사용을 위해서는 CentOS Stream 혹은 RHEL 계열의 배포판을 사용해야합니다. ERROR yum 다음과 같이 Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=genclo error was 14: curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error" 에러가 발생되는 것을 확인 할 수 있습니다. [root@ip-172-31-6-151 ~]# yum repolist Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=genclo error...
-
[Proxmox] Import the qcow2 image
Import Rocky Linux and Amazon Linux 2023 이전 글 Install Proxmox : https://tech.chhanz.xyz/linux/2024/05/13/install-pve-8-2/ Create Cluster : https://tech.chhanz.xyz/linux/2024/05/31/pve-cluster Deploy Ceph in Proxmox 8.2.1 : https://tech.chhanz.xyz/linux/2024/05/31/pve-with-ceph/ VM Live Migration on Proxmox 8.2.1 : https://tech.chhanz.xyz/linux/2024/06/07/pve-migration/ Qcow2 이미지 추가 Proxmox 에 Cloud-init device 기능과 qcow2 유형의 Cloud Image 를 이용하면 Proxmox 에서도 간단하게 운영체제를 설정하고 생성, 운영 할 수 있습니다. How to 먼저 Template 생성을 위해 VM 을 생성합니다. 아래 작성한 내용은 Rocky Linux 8.10 을 추가하기 위한 내용을 구성되어 있습니다. Template 생성을 위한 VM 생성을...
-
[Proxmox] VM Live Migration on Proxmox 8.2.1
이전 글 Install Proxmox : https://tech.chhanz.xyz/linux/2024/05/13/install-pve-8-2/ Create Cluster : https://tech.chhanz.xyz/linux/2024/05/31/pve-cluster Deploy Ceph in Proxmox 8.2.1 : https://tech.chhanz.xyz/linux/2024/05/31/pve-with-ceph/ Migration 기본적으로 PVE Cluster 내에서 수행되는 offline 마이그레이션과 online 마이그레이션이 존재합니다. 참고로 기존 PVE Cluster 에서 Remote Cluster 로 마이그레이션하는 remote-migrate 방식도 존재합니다. How to 아래와 같은 방법으로 VM 을 마이그레이션 할 수 있습니다. 위와 같이 마이그레이션을 할 VM 에서 Migrate 메뉴를 선택합니다. PVE Cluster 내에서 마이그레이션 될 PVE 노드를 선택합니다. 위와 같이 Migrate 가 완료된 것을 볼...
-
[Proxmox] Deploy Ceph in Proxmox 8.2.1
Proxmox with Ceph 설치 이전 글 Install Proxmox : https://tech.chhanz.xyz/linux/2024/05/13/install-pve-8-2/ Create Cluster : https://tech.chhanz.xyz/linux/2024/05/31/pve-cluster Ceph Cluster 배포 이전 글에 이어서 설치된 Proxmox 3대를 이용하여 Ceph Cluster 를 구성해보겠습니다. 테스트 구성도 테스트에 사용할 네트워크 정보 vmbr0 : VM Network Cluster 및 CEPH Public Network : 20.20.20.0/24 CEPH Cluster Network : 30.30.30.0/24 배포 PVE 관리 GUI > Datacenter > Ceph 메뉴를 선택하고 Install Ceph 를 선택합니다. 설치할 Ceph 버전을 Quincy 로 선택하고 Repository 를 No-Subscription 을 선택하였습니다. Ceph 패키지를 설치를 수행합니다....
-
[Proxmox] Create Cluster the Proxmox 8.2.1
Proxmox Cluster 생성 이전 글 Install Proxmox : https://tech.chhanz.xyz/linux/2024/05/13/install-pve-8-2/ Cluster 생성 이전 글에 이어서 설치된 Proxmox 3대를 이용하여 Cluster 를 구성해보겠습니다. 테스트 구성도 테스트에 사용할 네트워크 정보 vmbr0 : VM Network Cluster 및 CEPH Public Network : 20.20.20.0/24 PVE 관리 GUI > Datacenter > Cluster > Create Cluster 를 선택하고 Cluster Name / Network 을 입력합니다. Cluster 생성을 수행하면 위와 같이 TASK 가 완료되는 것을 확인 할 수 있습니다. pve1 노드 한개로 구성된 Cluster 정보를 볼 수 있습니다....
-
[Proxmox] Install Proxmox 8.2.1
Install Proxmox 8.2.1 Proxmox 란? Proxmox Virtual Environment는 가상화 관리를 위한 오픈 소스 소프트웨어 서버입니다. Type 2 하이퍼바이저로서 리눅스와 윈도우를 포함한 운영 체제들을 x64 하드웨어에서 구동할 수 있는 소프트웨어입니다. 위키백과 : https://ko.wikipedia.org/wiki/Proxmox_Virtual_Environment 최근 VMware 의 라이센스 정책이 변경 되면서 사용하기 좋은 오픈 소스 가상화 솔루션에 대해 조사를 하면서 Proxmox 라는 솔루션을 보았고, 하나씩 기능 테스트를 하면서 다양한 용도의 활용에 좋은지 확인하는 글을 작성해보려고 합니다. Install Proxmox 공식 홈페이지에서 Download 한 ISO 를 이용하여 부팅을 하면...
-
[Linux] How to extend MD device (RAID 0)
RAID 0 MD device 증설 방법 RAID 0 MD device 증설 방법 사용하는 RAID 0 의 MD device 를 증설하는 여러 방법에 대해 작성해보겠습니다. 테스트 RAID 디바이스 생성 아래와 같은 방법으로 디스크 3장을 RAID 0 디바이스로 생성 할 수 있습니다. $ sudo mdadm --create --level=0 --raid-devices=3 /dev/md0 /dev/xvdb /dev/xvdc /dev/xvdd mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md0 started. $ sudo mdadm --detail /dev/md0 /dev/md0: Version : 1.2 Creation Time : Mon Apr 8 23:19:51 2024 Raid Level : raid0...
-
[Linux] Install sosreport on Amazon Linux 2023
Amazon Linux 2023 에 sosreport (sos) 설치 sos 는 시스템의 로그 및 구성 요소를 수집하고 저장하는 유용한 도구입니다. 하지만 기본적으로 Amazon Linux 는 sos(sosreport) 명령어가 제공이 안됩니다. 이번 포스팅은 sos 를 수동 설치 하는 방법에 대해 알아보도록 하겠습니다. 설치 테스트 환경 : Amazon Linux 2023 Release Version : 2023.3.20240312 아래와 같이 sos 설치에 필요한 패키지를 설치합니다. $ sudo dnf -y install git python3-pip python3-magic 다음 sos github repository 를 clone 합니다. $ sudo git clone...
-
[Linux] convert2rhel 사용법
CentOS7 > RHEL 7 로 변환하는 법 개요 2020년 CentOS 운영체제에 대한 정책 변경으로 인해 사용자들은 대체 운영체제인 Rocky Linux, Alma Linux 등 기타 운영체제로 변경하는 경우들도 많았습니다. 그리고 얼마 후면 CentOS 7 의 EOS 인 2024년 06월 30일가 됩니다. 위와 같이 이유로 인해 convert2rhel 를 이용하면 CentOS 에서 RHEL 로 변경하고 ELS 와 같은 계약을 통해 EOS 기간을 늘리면서 다른 배포판으로 전환하는 기간을 확보 혹은 RHEL 로 전환 등 여러 방향으로 사용이 가능할 것으로 보여서 아래와 같이 운영체제를 CentOS 에서 RHEL...
-
[Linux] Install nbd on Amazon Linux 2
Network Block Device nbd (Network Block Device) nbd 를 Amazon Linux 2 에 설치하고 테스트를 해보았습니다. Install Server Side 서버쪽에 원본 데이터 디스크가 있을 것이고 해당 디스크를 nbd 를 이용하여 클라이언트에게 제공하는 환경입니다. $ sudo amazon-linux-extras install epel $ sudo yum -y install nbd 위와 같이 epel repository 를 활성화 하고 nbd 패키지를 설치합니다. $ sudo mkdir /etc/nbd-server $ sudo vi /etc/nbd-server/config [generic] listenaddr = 0.0.0.0 port = 9090 [export] exportname = /dev/nvme1n1 readonly = false multifile =...
-
[Linux] Ansible Playbook 을 이용한 EC2 인스턴스 PCS Cluster 환경 생성
Ansible Playbook 을 이용한 EC2 인스턴스 Pacemaker Cluster 환경 생성 AWS 에서 Pacemaker 테스트 환경을 구성 할 때, 여러 작업을 Ansible Playbook 을 통해 테스트 환경 구축을 자동화 할 수 있습니다. ansible.ha-cluster-pacemaker 플레이북을 이용하여 자동화가 되며, 해당 플레이북에 Add support for fence_aws PR 을 진행했고, AWS 에서도 사용이 가능한 Playbook 이 되어서 빠른 테스트 환경 구축에 활용 할 수 있게 되었습니다. 테스트 환경 EC2 인스턴스를 준비 합니다. RHEL-HA AMI 를 이용하여 인스턴스를 생성합니다. 참고 :...
-
[Linux] Amazon Linux 2023 rc.local 활성화
[Linux] Amazon Linux 2023 rc.local 활성화 Amazon Linux 2023 에서 rc.local 기능을 사용하기 위해서는 아래와 같은 방법을 이용하면 사용이 가능합니다. (1) /etc/rc.d/rc.local 파일을 생성합니다. man page 를 확인하면 아래와 같이 기존에는 /etc/rc.local 이였지만 지금은 /etc/rc.d/rc.local 으로 변경된 것을 확인 할 수 있습니다. $ man systemd-rc-local-generator DESCRIPTION systemd-rc-local-generator is a generator that checks whether /etc/rc.d/rc.local exists and is executable, and if it is, pulls the rc-local.service unit into the boot process. ... $ sudo vi /etc/rc.d/rc.local...
-
[Linux] Putty 에서 imported-openssh-key 또는 Putty Fatal Error 오류가 발생하는 경우
Putty 를 통해 EC2 Linux 인스턴스에 연결할 때 imported-openssh-key 또는 Putty Fatal Error 오류가 발생하는 이유는 무엇인가요? 사내에서 Putty 로 Linux 인스턴스에 접근 할 때, 주로 발생하는 일반적인 문제에 대해 쉽게 이해 할 수 있도록 한국어로 영상을 현지화하여 공개 하였습니다. 자세한 내용을 확인하기 위해서는 아래 문서 및 영상 자료를 참고하시면 도움이 됩니다. 문서 : https://repost.aws/ko/knowledge-center/linux-credentials-error 영상 자료 더 많은 AWS 한국어 지식센터 영상 한국어 지식 센터 : https://youtube.com/playlist?list=PLhr1KZpdzukdy7W_CUiyAJZzlnFGiz9VJ&feature=shared
-
[Linux] userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms
userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms 오류 해결 방법 주로 구버전의 운영체제 혹은 구버전의 SSH client 에서 최신 버전의 운영체제로 접속 할 때, 위와 같은 에러를 /var/log/secure 에서 확인 할 수 있습니다. (예 /> Ubuntu 14.04 에서 Amazon Linux 2023 접속 할 때 등) /var/log/secure 로그 내용은 아래와 같습니다. (운영체제 마다 로그 위치는 차이가 있습니다.) Jul 26 05:20:18 ip-172-31-35-0 sshd[7154]: userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms [preauth] Jul 26 05:20:18 ip-172-31-35-0 sshd[7154]: Connection...
-
[Linux] systemd-networkd DEBUG mode 활성화
Enable DEBUG mode on systemd-networkd systemd-networkd 를 사용하는 Ubuntu, Amazon Linux 2023 과 같은 운영체제에서 systemd-networkd의 Debug mode 를 활성화하여 조금 더 자세한 로그를 살펴 볼 수 있습니다. How to 아래와 같이 systemd override directory 를 생성합니다. $ sudo mkdir -p /etc/systemd/system/systemd-networkd.service.d/ 해당 경로에 /etc/systemd/system/systemd-networkd.service.d/10-debug-mode.conf 라는 설정 파일을 생성하고 아래 내용을 입력합니다. $ sudo vi /etc/systemd/system/systemd-networkd.service.d/10-debug-mode.conf [Service] Environment=SYSTEMD_LOG_LEVEL=debug systemd-networkd 를 재시작합니다. $ sudo systemctl daemon-reload $ sudo systemctl restart systemd-networkd Debug 모드로 로그가 생성되는지 확인합니다....
-
[Amazon Linux 2023] Certbot 을 이용하여 nginx 에 HTTPS 적용
Certbot 이란? Certbot은 무료로 TLS 인증서를 발급해주는 비영리기관인 Let’s encrypt 를 이용해서 TLS 인증서를 발급, 갱신할 수 있게 도와주는 오픈 소스 프로그램입니다. 테스트 환경 Amazon Linux 2023 에서 HTTP (80) 으로 운영중인 Nginx 에 HTTPS (443) 을 적용하도록 하겠습니다. Nginx 설정 Nginx 의 설정은 아래 설정만 반영된 기본적은 설정입니다. # cat /etc/nginx/nginx.conf ... server { listen 80; listen [::]:80; server_name test.chhanz.xyz; root /usr/share/nginx/html; ... Certbot 설치 Amazon Linux 2023 에서는 따로 rpm package 를 미제공하고...
-
[Ubuntu] Ubuntu 18.04 LTS Enable ESM
ESM 이란? ESM(Extended security maintenance)는 Ubuntu LTS 릴리즈의 보안 유지관리의 범위 및 기간을 기본 5년 지원에 추가로 5년 확장 지원하는 서비스 팩입니다. Ubuntu 18.04 EOL Ubuntu 18.04 LTS(Bionic)는 2023년 5월 31일부로 지원 종료로 인해 ESM 활성화를 해야 최신 보안 패치 유지가 가능합니다. ESM 활성화 - 개인 사용자 Ubuntu One 에 가입을 하면 개인 사용자의 경우, 최대 5대 활성화가 가능한 ESM 토큰을 발급 받습니다. 위와 같이 사전에 생성되어 있는 명령어를 이용하여 Ubuntu 운영체제에 입력합니다. (optional) pro...
-
[Amazon Linux 2023] crontab: command not found
, #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' 간단 메모 요즘은 Amazon Linux 2023 을 써보면서, 기존 Amazon Linux 2 와 다른 부분에 대해 알아가보고 있습니다. EC2 Image Builder 를 통해, AMI 빌드 및 테스트를 수행하다가 crontab 명령이 수행이 안되서 빌드에 실패하는 현상이 발생하여 이 이슈에 대해 자세히 살펴보았습니다. [ec2-user@ip-172-31-39-169 ~]$ cat /etc/os-release NAME="Amazon Linux" VERSION="2023" ID="amzn" ID_LIKE="fedora"...
-
[Amazon Linux 2] docker buildx 사용법
Buildx ? Buildx 는 멀티 플랫폼 용으로 빌드하는 기능 등을 포함하는 CLI 확장 플러그인으로 19.03 버전 부터 사용할 수 있습니다. Buildx on Amazon Linux 2 CentOS (RHEL 계열) 및 Ubuntu 의 배포판에서는 docker-buildx-plugin 패키지를 설치하면 Buildx 플러그인이 활성화 되는 방식입니다. Amazon Linux 2 의 경우, docker 만 설치하면 따로 추가 패키지 설치 없이 플러그인이 활성화 되어있습니다. Install docker on Amazon Linux 2 아래 명령어를 통해 docker 설치가 가능합니다. $ sudo amazon-linux-extras install -y docker $...
-
[Amazon Linux] ec2rl 사용법 (EC2 Rescue for Linux)
EC2 Rescue for Linux 사용법 ec2rl 이란?, Amazon Linux 의 sosreport 와 같은 인스턴스 정보 수집 및 문제 해결 도구입니다. 설치 해당 문서(AWS Docs) 에서 설치 방법을 확인하거나 아래 Git Repository 에서 Download 합니다. $ sudo curl -O https://s3.amazonaws.com/ec2rescuelinux/ec2rl.tgz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 7497k 100 7497k 0 0 2300k 0 0:00:03 0:00:03 --:--:-- 2299k 수집 사용법은 RHEL 의 sosreport 와...
-
[Ubuntu] Default boot kernel 변경 방법 (use rescue node)
Ubuntu - Default boot kernel 변경 방법 Ubuntu 인스턴스에서 특정 커널 버전이 이슈가 있어서 이전에 사용하던 커널 버전으로 변경이 필요한 경우엔 아래와 같은 방법을 통해 Default Boot Kerenl 을 변경 할 수 있습니다. 참고 : 해당 과정은 인스턴스가 시작이 안될때, 복구 인스턴스를 이용하여 복구하는 방법이고 인스턴스가 동작한다면 후반부의 Boot Kernel 확인, Update Grub 만 적용하면 된다. Workaround 복구 인스턴스에 문제가 되는 인스턴스의 Root Volume 을 Attach 합니다. $ sudo lsblk NAME MAJ:MIN RM SIZE RO...
-
[Linux] noVNC 구성 with python3
noVNC with python2 https://chhanz.github.io/linux/2019/12/13/linux-configure-novnc/ noVNC 구성 기존에 python2 기반(centos 7)으로 작성되있는 문서에 python3(rhel 8)으로 변경된 부분 업데이트 작성한 문서입니다. noVNC 란? noVNC는 HTML VNC 클라이언트 프로그램입니다. noVNC 구성 TEST ENV : AWS EC2 RHEL 8.6 install requirement package $ sudo dnf -y groupinstall GNOME $ sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm install noVNC package $ sudo dnf -y install novnc python3-websockify python3-numpy tigervnc-server start service vncserver $ vncserver :1 vncserver 가 시작되면 vnc 접속용 password 입력을...
-
[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 를 변경 할 수 있다. $...
-
[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,...
-
[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...
-
[Ubuntu] unattended-upgrades 설정 (자동 업데이트)
Ubuntu 22.04 unattended-upgrades 란? unattended-upgrades 는 Ubuntu system 의 최신 보안 패치 및 기타 업데이트를 자동으로 수행하고 시스템을 유지, 관리 하는 것에 목적이 있는 서비스 입니다. 설치 Ubuntu 를 설치하면 기본적으로 해당 서비스는 설치되어 작동하고 있습니다. 만약 설치가 안되어 있다면 아래와 같이 설치를 진행합니다. $ sudo apt install unattended-upgrades -y 구동중인 daemon 정보는 아래와 같습니다. $ sudo systemctl status unattended-upgrades ● unattended-upgrades.service - Unattended Upgrades Shutdown Loaded: loaded (/lib/systemd/system/unattended-upgrades.service; enabled; vendor preset: enabled) Active: active (running) since...
-
[Ubuntu] Local mirror site 구성(DVD/Repository sync)
Ubuntu 22.04 목차 overview DVD 사용 Mount DVD sources.list 추가 Repository 추가 Sync Repository apt-mirror 설치 mirror.list 수정 Sync Repository Check Sync mirror data location Mirror site 운영 Mirror site 추가 APT update overview 이번 포스팅은 DVD 를 활용하여 인터넷이 안되는 환경에서 Ubuntu package 를 다루는 방법과 외부 환경이 아닌 내부에 Repository mirror site 를 구성하는 방법에 대해 알아보도록 하겠습니다. DVD 사용 주로 인터넷이 안되는 망분리 된 곳에서 많이 활용될 방식입니다. Mount DVD 아래 명령어를 통해 DVD...
-
[Ubuntu] APT Repository 사용법
Ubuntu 22.04 Ubuntu 22.04 - APT Repository 사용법 Repository Component 종류 Ubuntu 에서 사용되는 Repository Component 는 아래와 같습니다. Main : Ubuntu 무료 및 오픈소스 소프트웨어 Universe : Linux 커뮤니티의 무료 및 오픈소스 소프트웨어 Restricted : Vender 장치 드라이버 및 소프트웨어 Multiverse : 법적 제한(저작권 등)이 있는 소프트웨어 Default Repository Ubuntu 가 설치되면 기본적으로 아래와 같이 /etc/apt/sources.list 파일로 Repository 가 관리됩니다. root@u-node-1:/etc/apt/sources.list.d# cat /etc/apt/sources.list | egrep -v "#|^$" deb http://archive.ubuntu.com/ubuntu jammy main restricted deb http://archive.ubuntu.com/ubuntu jammy-updates main...
-
[Ubuntu] apt-mirror 를 이용하여 sync 후, apt-get error 발생
Ubuntu 22.04 apt-mirror 를 이용하여 sync 후, apt-get error 발생 apt-mirror 를 이용하여 Repository 를 sync 하고 아래와 같은 에러가 발생했습니다. ... 생략 Ign:22 http://localhost:8000/ubuntu jammy/multiverse amd64 c-n-f Metadata Err:7 http://localhost:8000/ubuntu jammy/main amd64 c-n-f Metadata 404 File not found [IP: 127.0.0.1 8000] <<< Ign:10 http://localhost:8000/ubuntu jammy/restricted amd64 c-n-f Metadata Ign:16 http://localhost:8000/ubuntu jammy/universe amd64 c-n-f Metadata Ign:22 http://localhost:8000/ubuntu jammy/multiverse amd64 c-n-f Metadata Fetched 38.0 MB in 0s (128 MB/s) Reading package lists... Done E: Failed to fetch http://localhost:8000/ubuntu/dists/jammy/main/cnf/Commands-amd64...
-
[Ubuntu] NTP Service
Ubuntu 20.04 Ubuntu 20.04 NTP Service Ubuntu Server Version 을 설치하게 되면 기본적으로 NTP 서비스를 활성화가 되어있습니다. root@u-node-0:/etc/systemd# timedatectl -a Local time: Thu 2022-04-28 11:14:26 KST Universal time: Thu 2022-04-28 02:14:26 UTC RTC time: Thu 2022-04-28 02:14:27 Time zone: Asia/Seoul (KST, +0900) System clock synchronized: yes << NTP service: active RTC in local TZ: no RHEL 계열의 ntpd 혹은 chronyd 가 자동으로 설치가 되어서 그런건가? Ubuntu 는 설치가 되면 systemd-timesyncd 라는 daemon 이 기본적으로 NTP 서비스를 수행합니다....
-
[Linux] VirtualBMC 를 이용한 IPMI node 생성
use kvm VirtualBMC 를 이용한 IPMI node 생성 해당 문서는 Libvirt(KVM) 환경에서 각 VM 을 관리하는 IPMI Node 를 생성하는 방법에 대해 설명하고 있습니다. IPMI Node 설정 SSH Key 배포 SSH 를 이용하여 KVM 에 접근 및 통제를 하기 위해 SSH KEY Password 배포를 진행합니다. [root@ipmi-node ~]# ssh-copy-id root@kvm Python-pip 설치 아래와 같은 방법으로 pip 을 설치합니다. [root@ipmi-node ~]# yum -y install python3 python3-pip [root@ipmi-node ~]# pip3 install -U pip VirtualBMC 설치 아래와 같은 방법으로 vBMC 를...
-
[Linux] ipmitool 사용법
매번 잊어버려서 따로 정리함. ipmitool 설치 아래 명령을 통해 ipmitool 명령을 설치 할 수 있다. RHEL/CentOS/Rocky 계열 $ sudo yum install ipmitool or $ sudo dnf install ipmitool Ubuntu $ sudo apt install ipmitool IPMI 정보 확인 아래 명령을 통해 IPMI 정보를 확인 할 수 있다. $ ipmitool lan print [<channel num>] Set in Progress : Set Complete Auth Type Support : NONE MD5 PASSWORD Auth Type Enable : Callback : MD5 PASSWORD : User...
-
[Linux] njmon with Prometheus
njmon, telegraf, Prometheus, Grafana 목차 Njmon 란? Architecture Telegraf config Njmon config Prometheus config Grafana Dashboard 참고 자료 Njmon 이란? njmon 는 nmon 과 비슷하지만 더 많은 성능 및 구성 데이터를 수집하고 JSON 형식으로 출력하고 해당 데이터를 데이터베이스(if. InfluxDB, Prometheus)에 입력하는 기능을 수행합니다. 주로 nmon 에 익숙하여 다른 Metric 을 사용하기 힘들거나, Exporter 를 설치하는데 어려움이 있는 CASE 에서 사용하기 좋은 Tool 일 것 같습니다. Architecture 위와 같은 구조로 njmon 데이터를 수집 받고 Telegarf 가 마치 Node Exporter 처럼...
-
[Linux] CentOS 8: Failed to download metadata for repo 'appstream'
EOS CentOS 8 EOS CentOS 8 CentOS 8 은 December 31, 2021 부로 EOS 되었습니다. 지속적인 사용을 위해서는 CentOS 8 Stream 으로 배포판 변경을 해야지 지속적인 지원을 받을 수 있습니다. Error dnf Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist 메시지가 나오면서 dnf 가 수행이 안되는 것을 확인 할 수 있습니다. [root@chhan-c8 ~]# dnf repolist CentOS Linux 8 - AppStream 87 B/s | 38 B 00:00 Error: Failed to download...
-
[Ventoy] ISO 를 바로 사용하는 OS Install Boot Device 생성
Alternative to the IODD Intro 시스템 장애로 인해 OS 를 재설치 해야되는 경우가 생겼다. 시스템팀에서 OS 재설치를 해야되는데 DVD 도 없고 USB 이미지도 없었다. 급하게 설치를 해야되서 내가 가지고 있는 IODD 를 이용하여 OS 설치를 하게 되었다. Ventoy 무료로 IODD 와 같이 사용 할 수 있는 것이 있나 찾다가 발견된 것은 Ventoy 이다. 따로 Boot device 로 생성안하고 바로 ISO 이미지를 넣어서 OS Install Device 로 사용이 가능하다. Ventoy 설치 (for Linux) Ubuntu 시스템에서 Ventoy device 설치를 해본다. root@u-node-1:~/ventoy#...
-
[Linux] authselect 을 이용하여 faillock module 적용
RHEL v8 이후 변경점 RHEL v8 계열(CentOS/Oracle Linux/Rocky Linux) 부터는 이전과 같이 PAM 을 수정하여 설정하는 것을 권장하지 않습니다. [root@chhanz-c8-vm ~]# cat /etc/pam.d/system-auth ... # Generated by authselect on Fri Jul 16 13:13:24 2021 # Do not modify this file manually. <<< ... 추가로 RHEL v8 계열부터는 기존에 사용하던 보안 설정으로 많이 사용 되던 pam_tally2 module 이 deprecated 되었습니다. anthconfig 로 PAM 설정이 가능하였으나, RHEL v8 계열부터 authselect 을 사용하도록 변경 되었습니다. authselect 이란? authselect...
-
[Linux] Yum Group 상세 활용
yum group 관련 명령어 Group Package 를 설치 할 때, 주로 이용하는 명령어 입니다. yum groupinstall , yum groupinfo , yum grouplist 등이 있습니다. 기본 사용법 주로 사용 하는 명령어 몇가지에 대해 알아보자. yum grouplist 해당 명령은 Group Package 목록 및 설치 가능, 설치됨 여부를 확인 할 수 있습니다. [root@fastvm-centos-7-6-30 ~]# yum group list hidden ids ... Available Environment Groups: 최소 설치 (minimal) 계산 노드 (compute-node-environment) 인프라 서버 (infrastructure-server-environment) 파일 및 프린트 서버 (file-print-server-environment) 기본...
-
[Linux] du / ncdu 활용
du 현재 경로의 사용률을 확인 하는 명령입니다. [opc@instance-20201011-1438 TEST]$ tree . ├── big1 │ ├── 1g_bigfiles.img │ ├── 1g_bigfiles1.img │ └── 1g_bigfiles2.img ├── big2 │ └── 1g_bigfiles6.img ├── big3 ├── big4 ├── dummyfile1 ├── dummyfile10 ├── dummyfile2 ├── dummyfile3 ├── dummyfile4 ├── dummyfile5 ├── dummyfile6 ├── dummyfile7 ├── dummyfile8 └── dummyfile9 4 directories, 14 files 위와 같은 구조를 가지고 있는 경로에서 du 명령을 사용할 경우, [opc@instance-20201011-1438 TEST]$ du -h 3.0G ./big1 1.0G ./big2 0 ./big3...
-
[Linux] VDO(Virtual Data Optimizer) 활용
VDO 란? VDO(Virtual Data Optimizer)는 데이터의 중복제거, 압축 등의 기능을 사용해 스토리지의 공간 활용도를 높이는 기술입니다. VDO 활용 위와 같이 다양한 분야에서 사용이 가능합니다. VDO 장단점 장점 : 중복 제거 및 압축 기능을 이용하여 스토리지 공간 활용도가 높아지며, 주로 VM 및 컨테이너 환경에서 높은 효율을 보인다고 합니다. 단점 : 일반적인 스토리지에 비해 성능 저하가 발생합니다. 참고 자료 : https://www.redhat.com/en/blog/look-vdo-new-linux-compression-layer VDO 설치 설치 환경 : CentOS 8.1 아래 명령을 통해 설치를 진행합니다. [root@fastvm-centos-8-1-30 ~]# dnf install...
-
[Linux] `YumRepo Error: All mirror URLs are not using ftp, http[s] or file.`
해결 방법 (CentOS 6) YumRepo Error: All mirror URLs are not using ftp, http[s] or file. 해결 방법 아래와 같이 CentOS 6에서 발생되는 이슈입니다. [root@fastvm-centos-6-10-51 ~]# yum repolist Loaded plugins: fastestmirror Determining fastest mirrors YumRepo Error: All mirror URLs are not using ftp, http[s] or file. Eg. Invalid release/repo/arch combination/ removing mirrorlist with no valid mirrors: /var/cache/yum/x86_64/6/base/mirrorlist.txt YumRepo Error: All mirror URLs are not using ftp, http[s] or file. Eg. Invalid release/repo/arch combination/ removing mirrorlist with no valid mirrors:...
-
[Linux] haproxy 를 이용한 RoundRobin 구성 (on CentOS7)
haproxy 를 이용한 RoundRobin 구성 (on CentOS7) HAPROXY 를 이용하여 HW L4 를 구현 할 수 있다????? 이번 포스팅에서는 haproxy 의 RoundRobin(rr) 알고리즘을 이용하여 RoundRobin 웹서비스를 구현하도록 하겠습니다. 테스트용 웹 서비스 아래와 같이 각각의 flask app 서비스를 하는 웹 서비스를 테스트에 활용합니다. [root@k3s-10-50-1-70 ~]# kubectl get all NAME READY STATUS RESTARTS AGE pod/pod-test-app-1 1/1 Running 0 2m47s pod/pod-test-app-2 1/1 Running 0 83s pod/pod-test-app-3 1/1 Running 0 69s NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/kubernetes ClusterIP...
-
[Linux] DHCP 서버 구성 (on CentOS7)
DHCP 란? 동적 호스트 구성 프로토콜(Dynamic Host Configuration Protocol, DHCP)은 호스트 IP 구성 관리를 단순화하는 IP 표준이다. 동적 호스트 구성 프로토콜 표준에서는 DHCP 서버를 사용하여 IP 주소 및 관련된 기타 구성 세부 정보를 네트워크의 DHCP 사용 클라이언트에게 동적으로 할당하는 방법을 제공한다. 참고 : 위키백과 - DHCP DHCP 동작 원리 아래 내용을 보면 DHCP 의 동작 원리를 쉽게 이해 할 수 있습니다. 출처 : https://www.netmanias.com/ko/post/blog/5348/dhcp-ip-allocation-network-protocol/understanding-the-basic-operations-of-dhcp DHCP 설치 아래 커멘드를 통해 Package 를 설치합니다. $ sudo yum...
-
[DNS] CentOS 7 - DNS 설치 및 forwarders 구성
DNS 설치 (on CentOS 7) DNS 설치는 아래 커맨드를 통해 설치가 가능합니다. $ sudo yum -y install bind DNS 실행 아래 커맨드로 실행을 합니다. $ sudo systemctl enable --now named $ sudo systemctl status named ● named.service - Berkeley Internet Name Domain (DNS) Loaded: loaded (/usr/lib/systemd/system/named.service; enabled; vendor preset: disabled) Active: active (running) since Thu 2020-11-05 10:27:12 KST; 889ms ago Process: 25609 ExecStart=/usr/sbin/named -u named -c ${NAMEDCONF} $OPTIONS (code=exited, status=0/SUCCESS) Process: 25607 ExecStartPre=/bin/bash -c if...
-
[Linux] ReaR 를 이용하여 OS Backup 구성
[Linux] ReaR 를 이용하여 OS Backup 구성 ReaR 란? ReaR 또는 Relax & Recover는 마이그레이션 및 재해 복구 도구입니다. ReaR는 실행중인 Linux 시스템에 대한 부팅 가능한 이미지를 생성하며 필요한 경우에는 백업된 이미지를 사용하여 시스템을 복구 할 수 있습니다. 백업된 이미지를 사용하여 OS를 다른 하드웨어로 복원 할 수도 있으므로 ReaR를 마이그레이션 도구로 사용할 수도 있습니다. ReaR Backup 용 NFS 서버 구성 ReaR 로 Backup 되는 Boot ISO 및 Backup DATA 를 저장할 NFS 서버를 구성합니다. (NAS...
-
[Linux] How to reposync only latest package
[Linux] How to reposync only latest package reposync 를 받는데 모든 version 의 package 들이 있다보니 reposync 할 때, 시간도 오래 걸리고 용량도 큰 문제가 있었습니다. [root@fastvm-r76-34 ~]# yum repolist Loaded plugins: product-id, search-disabled-repos, subscription-manager repo id repo namestatus !rhel-7-server-rpms/7Server/x86_64 Red Hat Enterprise Linux 7 Server (RPMs) 29,237 ... 위와 같이 29237 개의 package 를 가지고 있습니다. 아래와 같이 하면 최신 버전의 package 만 sync 할 수 있습니다. $ reposync -n -r rhel-7-server-rpms (1/5475): 389-ds-base-1.3.10.1-14.el7_8.x86_64.rpm...
-
[Linux] CentOS6 OPENSSL 최신버전 설치
CentOS6 에 OPENSSL 최신버전 설치 CentOS 6 에서는 openssl 1.0.1e-58.el6_10 까지만 지원하고 (Repository 에서 제공하는 Version) https://www.openssl.org 에서 제공하는 버전은 openssl-1.1.1g 입니다. CentOS 6 에서는 Source 설치를 해야지만 최신 버전 사용이 가능한 것입니다. Requirement package 아래와 같이 필수 패키지를 설치합니다. $ yum install gcc make gcc-c++ perl perl-Test-Harness perl-Test-Simple zlib-devel Source 설치 설치 방법은 간단합니다. $ wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz $ cd openssl-1.1.1g $ ./config $ make $ make test $ make install 하지만 위와 같이 하면...
-
[Python] Python 으로 간단히 웹서비스 구동
Python 으로 간단히 웹서비스를 구동해보자. Local PC 에서 jekyll 과 같이 내가 만든 정적 웹서비스를 테스트 할 수 있는 방법이 없을까 궁리하다가 찾은 방법입니다. 실행 Web Source 가 있는 위치로 이동하여 아래와 같이 명령을 입력합니다. $ pwd /var/www/html/ $ cat index.html HELLO!!! $ python -m SimpleHTTPServer Serving HTTP on 0.0.0.0 port 8000 ... 10.10.10.10 - - [20/Jan/2017 16:44:01] "GET / HTTP/1.1" 200 - 10.10.10.10 - - [20/Jan/2017 16:46:22] "GET / HTTP/1.1" 200 - 위와 같이...
-
[Linux] .bash_history 로그에 timestamp 추가하기
.bash_history 로그에 timestamp 추가하기 Add timestamp to .bash_history /etc/profile 에 해당 구문을 추가한다. HISTTIMEFORMAT="[%Y-%m-%d %H:%M:%S] " export HISTTIMEFORMAT Result [root@fastvm-centos-7-7-30 ~]# history 1 [2020-01-13 17:34:40] history -ps 2 [2020-01-13 17:34:40] ls 3 [2020-01-13 17:34:40] ip a 4 [2020-01-13 17:34:40] lsblk 5 [2020-01-13 17:34:40] df 6 [2020-01-13 17:34:40] history -ps 7 [2020-01-13 17:34:40] history 8 [2020-01-13 17:34:40] ls 9 [2020-01-13 17:34:40] cd /etc 10 [2020-01-13 17:34:40] ls 11 [2020-01-13 17:34:40] cd profile.d/
-
[RHV] Red Hat Virtualization Host 추가 및 VM 생성
목차 Red Hat Virtualization Host 설치 Red Hat Virtualization Standalone Manager 설치 Red Hat Virtualization Host 추가 및 VM 생성 Red Hat Virtualization Host 추가 이전 포스트에서는 RHVM 을 설치하였습니다. 첫번째 포스트에서 설치한 RHVH 를 RHVM 에 연결하여 Manager 에서 Hypervisor 를 관리 할 수 있도록 하겠습니다. RHVH 호스트 추가 RHVM 관리 포탈에서 호스트 탭을 선택합니다. 그리고 새로 만들기를 선택합니다. RHVH 의 주소 정보 및 SSH 접속 정보를 입력합니다. 연결이 되면 호스트를 관리하기 위한 설치를...
-
[RHV] Red Hat Virtualization Standalone Manager 설치
목차 Red Hat Virtualization Host 설치 Red Hat Virtualization Standalone Manager 설치 Red Hat Virtualization Host 추가 및 VM 생성 Red Hat Virtualization Manager 요구 사항 Red Hat Virtualization Manager(이하 RHVM)은 아래와 같은 하드웨어 요구 사항이 있습니다. 참고 자료 : RHV Document Red Hat Virtualization Manager 설치 RHVM은 설치 방법이 두가지가 있습니다. Standalone 방식, Self-Hosted Engine 방식이 있습니다. 이 방식에 대해 간단히 설명을 하면, Standalone : RHVM 단독 시스템(baremetal) Self-Hosted Engine : RHVM을 Hypervisior 에...
-
[RHV] Red Hat Virtualization Host 설치
목차 Red Hat Virtualization Host 설치 Red Hat Virtualization Standalone Manager 설치 Red Hat Virtualization Host 추가 및 VM 생성 Red Hat Virtualization Host 란? RHVH (Red Hat Virtualization Host)는 Red Hat Enterprise Linux 기반의 최소 운영 체제이며 Red Hat Virtualization 환경에서 하이퍼바이저 역할을 하는 물리적 시스템을 간단하게 설정할 수 있도록 설계되었습니다. 참고 자료 : RHV Document RHVH 설치 준비된 RHVH 4.1 DVD 이미지를 통해 부팅을 합니다. 언어를 선택합니다. 아래 화면은 RHVH 설치 화면입니다. 기본적으로...
-
[Linux] KVM nested virtualization
KVM nested virtualization KVM nested virtualization 를 구성하여 VM CPU 가상화를 활성화 할 수 있습니다. 이와 같이 구성 할 경우, 가상화 VM 내에서 한번더 가상화 구성이 가능합니다. kvm-intel module 설정 아래와 같이 kvm-intel module parameter 를 추가합니다. [root@kvm ~]# cat /etc/modprobe.d/kvm-nested-module.conf options kvm-intel nested=1 이후 시스템을 재부팅하고 KVM nested virtualization 구성이 되었는지 확인합니다. [root@kvm ~]# cat /sys/module/kvm_intel/parameters/nested Y kvm-intel module 상세 확인 [root@kvm ~]# modinfo kvm-intel filename: /lib/modules/3.10.0-1062.4.3.el7.x86_64/kernel/arch/x86/kvm/kvm-intel.ko.xz license: GPL author: Qumranet retpoline: Y rhelversion:...
-
[Linux] noVNC 구성
noVNC 구성 noVNC 란? noVNC는 HTML VNC 클라이언트 프로그램입니다. noVNC 구성 install requirement package $ yum -y groupinstall "GNOME Desktop" $ yum -y install epel-release install noVNC package $ yum -y install novnc python-websockify numpy tigervnc-server start service vncserver $ vncserver :1 vncserver 가 시작되면 vnc 접속용 password 입력을 요구합니다. 해당 password 는 noVNC 에 접근 할 때 필요한 password 입니다. start service websockify $ websockify -D --web=/usr/share/novnc/ 6080 localhost:5901 위와 같이 명령을 수행하면 6080...
-
[Linux] Squid 를 이용한 Proxy 서버 구성
[Linux] Squid 를 이용한 Proxy 서버 구성 주로 on-premise 환경에서 운영되는 시스템은 인터넷이 안되는 시스템이 많습니다. 이런 상황이다 보니, Yum 을 통한 Package 관리가 쉽게 되지 않습니다. 그렇다고 모든 시스템은 인터넷이 가능하게 만들어 보안에 취약해지는 환경을 만들수는 없습니다. 아래와 같이 Proxy 서버를 이용하여 하나의 시스템을 통해 모든 시스템이 인터넷이 가능하도록 구성 할 수 있습니다. 주 된 목적은 Yum 을 통해 Package 관리가 가능하도록 구성하는 것이 목적입니다. 목표 구성도 위와 같이 Server Farm 의 시스템은 인터넷이...
-
[Linux] Converting VMware ESXi Linux VM to KVM (virt-v2v)
Converting VMware ESXi Linux VM to KVM (virt-v2v) 1. Install package virt-v2v $ yum install virt-v2v 위와 같이 virt-v2v package 를 설치 합니다. 2. ESXi - KVM 간 ssh key 인증 설정 KVM 호스트에서 ESXi 의 데이터스토어에 Password 없이 접근이 가능하도록 설정을 해야 virt-v2v 를 이용하여 VM 을 이관 할 수 있습니다. + VMware ESXi ssh Daemon 시작 위와 같이 ESXi Web Console 에서 작업 > 서비스 > SSH 사용 선택 + KVM, ssh-keygen 명령...
-
[fast-vm] CentOS 8 custom image 생성
CentOS 8 custom image 생성 드디어 CentOS 8 이 release 되었습니다. (2019-09-24) CentOS 8 release news 이것 저것 새로운 기능들을 테스트 해보고 싶은 욕망에 fast-vm 에서 사용할 custom image 를 생성해 보도록 하겠습니다. Custom image 생성 아직 CentOS 8 의 fast-vm public image 는 아직 추가가 안 되었습니다. 하지만 RHEL 8 을 통해 CentOS 8 image 를 생성 할 수 있습니다. 여담으로 fast-vm 의 개발자, @ondrej 에게 공식 public image upload 를 요청 하였습니다. 테스트...
-
[Linux] Fast-VM 설치 및 활용
Fast-VM Fast-VM 이란? Fast-VM 라는 Open Source Solution 을 알게된 것은 Ondrej Faměra 라는 친구를 만나면서 입니다. Thank You. Ondrej ^o^ Fast-VM 은 Ondrej Faměra 가 만든 libvirtd 기반의 가상화 Provisioning Solution 입니다. 기존의 libvirtd 기반의 가상화는 virt-manager 혹은 virsh 을 통해 VM 생성 및 운영을 하였습니다. Fast-VM 을 이용하면 fast-vm 이라는 명령어 하나로 VM을 생성하고 관리 할 수 있습니다. 다양한 Linux 배포판을 설치하고 테스트를 해야되는 저는 fast-vm 을 통해 여러가지 스트레스들이 사라졌습니다. ^^ Fast-VM...
-
[Linux] sosreport 생성 경로 변경
[참고] Install sosreport Package [root@fastvm-centos-7-6-ext-50 ~]# yum -y install sos ... 중략 ... Installed: sos.noarch 0:3.6-19.el7.centos 위와 같이 sos Package 를 설치하면 sosreport 를 수집 할 수 있습니다. sosreport 생성 경로 변경 sosreport 는 기본적으로 아래와 같이 /var/tmp/sosreport-XXXX.tar.xz 로 생셩이 됩니다. /var 경로에 용량이 부족하거나 sosreport 로 수집된 파일의 크기가 큰 경우, 생성 위치를 변경 할 수 있습니다. sosreport 기본 경로 생성 로그 [root@fastvm-centos-7-6-ext-50 ~]# sosreport sosreport (version 3.6) ... 중략 ... Creating compressed archive......
-
[VMware] Linux SCSI ID 확인 방법
VMware ESXi에서 Linux SCSI ID 확인 방법 VMware ESXi 상에서 운영중인 Linux 의 경우, 아래와 같이 DISK 의 SCSI ID 가 확인이 불가능합니다. GuestOS 의 DISK 를 다른 GuestOS 로 이관을 하거나, GuestOS 의 VMX 를 재생성 하였을때, VMDK 의 순서가 확인이 안될 경우… 이러한 경우로 인해 명확하게 어떤 VMDK 가 실제로 운영체제에서 어떤 DISK 로 사용 되었는지 확인이 필요합니다. 실제로 VMware 시스템에서는 아래와 같이 SCSI ID 가 확인이 기본적으로 안됩니다. 이처럼 SCSI ID 가...
-
[Linux] CentOS7 PPC 설치 on PowerVM
CentOS 7 PPC 설치 on PowerVM 설치 환경 IBM Power7 P750 IBM PowerVM 2.4 CentOS7(1804) VM 설정 VIOS 에서 VM LPAR 를 생성하고 vCD-ROM 을 이용하여 ISO 를 Mount 하여 OS 설치 준비를 합니다. $ loadopt -disk CentOS-7-ppc64-Everything-1804.iso -vtd vtopt0 lsrep $ lsrep Size(mb) Free(mb) Parent Pool Parent Size Parent Free 10198 2958 rootvg 279552 220416 Name File Size Optical Access CentOS-7-ppc64-Everything-1804.iso 7240 vtopt0 rw $ lsmap -vadapter vhost25 SVSA Physloc Client Partition ID ---------------...
-
[Linux] grubby 사용법
GRUBBY COMMAND 활용 grubby 라는 명령을 통해 GRUB2 부트로더를 손쉽게 수정 할 수 있습니다. grubby –help [root@fastvm-centos-7-6-21 ~]# grubby --help Usage: grubby [OPTION...] --add-kernel=kernel-path add an entry for the specified kernel --add-multiboot=STRING add an entry for the specified multiboot kernel --args=args default arguments for the new kernel or new arguments for kernel being updated --mbargs=STRING default arguments for the new multiboot kernel or new arguments for multiboot kernel being updated --bad-image-okay don`t sanity check images...
-
[GPFS] CentOS 7 - IBM GPFS Hands on Tranining
[GPFS] CentOS 7 - IBM GPFS Hands on Tranining 목표 Hands-on 구성도 Hands-on 환경 OS Version : CentOS 7.3 Kernel Version : 3.10.0-514.el7.x86_64 GPFS Version : gpfs v4.2.2-3 OS Configuration : SSH Key Copy 완료 Hands-on Lab Cluster 구성 [root@gpfs1 desc]# mmcrcluster -N node_desc --ccr-disable -p gpfs1 -s gpfs2 -r /usr/bin/ssh -R /usr/bin/scp -C gpfscluster mmcrcluster: Performing preliminary node verification ... mmcrcluster: Processing quorum and other critical nodes ... mmcrcluster: Finalizing the cluster data structures...
-
[Linux] CentOS 7 HP SSACLI Command 사용법
[Linux] CentOS 7 HP SSACLI Command 사용법 벤더(IBM,HP,Dell 등) 의 x86 하드웨어에서는 Linux 운영체제 상에서 하드웨어 레이드 컨트롤러의 상태를 확인 할 수 있는 도구들을 제공하고 있습니다. HP의 경우, Smart Storage Adminstrator 관리 명령어를 제공하고 있습니다. (예전에는 hpssacli, hpasucil 와 같은 명령어였습니다.) 현재는 ssacli 로 변경 되었으며, Linux 운영체제상에서 하드웨어 RAID 구성, 상태 확인, 변경등이 가능하도록 지원하는 HP 에서 제공되는 관리 도구 입니다. SSACLI 설치 Download : HP Support Link 위 HP Support 페이지에서 해당 rpm...
-
[Linux] CentOS 7 raw device 자동 생성 스크립트
[Linux] CentOS 7 raw device 자동 생성 스크립트 고객사에서 Multipath 로 생성된 mpath device 를 raw device 로 생성하는 작업이 있었습니다. 너무 많은 mpath device 를 raw device 로 생성을 하다보니, 오타도 발생되고 작업 환경을 콘솔에서 하다보니 불편함도 있다보니 해당 스크립트를 만들었습니다. Download Link GitHub Raw Script 사용 방법 Multipath Device 의 mpath 를 기준으로 해당 DM_UUID 값을 생성하여 60-raw.rules.$DATE 파일로 생성합니다. 1) Multipath List 확인 # multipath -ll | grep mpath mpathb (3600c0ff00011e91abe3a475901000000) dm-3...
-
[Linux] logger 를 이용한 로그 관리
[Linux] logger 를 이용한 로그 관리 /var/log/messages 는 syslogd 를 이용하여 로그를 기록합니다. 주로 시스템의 핵심 로그가 작성되고, 해당 파일을 모니터링하여 시스템의 장애에 대해 파악하기가 좋습니다. 시스템을 운영하면서 특별히 /var/log/messages 에 별도의 메시지를 기록하기 위해서는 logger 라는 명령을 사용하면 쉽게 적용이 가능합니다. 아래는 이번 포스팅을 위해 httpd Web 서비스가 정상인지 체크하는 간단하게 제작된 스크립트입니다. 해당 스크립트에서 발생되는 메시지를 /var/log/messages 에 기록 하도록 하겠습니다. Check Web #!/bin/bash echo -e " " echo -e " Service Check...
-
[Linux] systemd 에 Service 등록
RHEL/CentOS [Linux][RHEL/CentOS] systemd 에 Service 등록 Systemd 에 사용자가 자주 사용하는 Service 를 등록하고 Systemd 를 통해 관리 할 수 있습니다. 아래는 Systemd 에 등록할 Service Script 입니다. Systemd test 용 Script #!/bin/bash echo -e " Start Systemd Test " | logger -t Testsystemd while : do echo -e "Running systemd" sleep 30 done systemd 에 Service 등록 systemd 에 서비스를 등록하기 위해 아래 경로에 아래와 같이 설정을 합니다. # vi /etc/systemd/system/testchk.service // /etc/systemd/system/testchk.service 내용 [Unit]...
-
[Linux] CentOS 6 Python 2.7 설치
[Linux] CentOS 6 Python 2.7 설치 CentOS 6 의 기본 Python 버전은 v2.6 입니다. CentOS 의 응용프로그램들은 Python 2.6 과 호환되도록 설정되어있고, 이를 Update 를 할 경우 다수의 응용프로그램들이 문제가 발생 할 수 있습니다. 하지만 일부 시스템은 몇몇 소프트웨어를 사용하기위해, 최신 버전의 Python 을 사용하기 원합니다. 위와 같은 일부 시스템에 최신 버전의 Python 을 설치하기 위해서는 다음과 같은 절차로 설치를 진행하면 됩니다. SCL Repository 연결 yum 명령을 통해 SCL Repository 를 연결합니다. # yum install...
-
[Linux] Default boot kernel 변경 방법
RHEL/CentOS RHEL / CentOS 7 - Default boot kernel 변경 방법 시스템을 부팅을 하면서 GRUB Menu 에서 Kernel 을 특정 버전으로 선택하여, 부팅을 할 수 있습니다. 하지만 시스템을 물리적으로 접근이 불가능하거나, 원격으로만 작업이 가능할 경우에는 아래와 같은 방법으로 Default boot Kernel 을 변경해서 특정 버전으로 선택하여 부팅을 할 수 있습니다. 주로 Kernel Update 이후, Kernel Version 원복 등으로 사용 할 수 있습니다. Kernel Entry 확인 GRUB Menu 에서 Kernel Entry 가 어떻게 나올지 확인을 합니다. #...
-
[Linux] CentOS 7 raw device 생성
[Linux] CentOS 7 raw device 생성 raw device 생성을 위해 아래 절차를 따라 /etc/udev/rules.d/60-raw.rules 을 수정합니다. udev rules 을 사용하여 raw device 를 생성합니다. # vi /etc/udev/rules.d/60-raw.rules SCSI Device 를 사용하는 경우, ACTION=="add|change", KERNEL=="sdc", RUN+="/usr/bin/raw /dev/raw/raw1 %N" multipath device 를 사용하는 경우, ACTION=="add|change", ENV{DM_NAME}=="mpath1", RUN+="/usr/bin/raw /dev/raw/raw1 %N" LVM device 를 사용하는 경우, ACTION=="add|change", ENV{DM_VG_NAME}=="vg_test", ENV{DM_LV_NAME}=="lv_test1", RUN+="/bin/raw /dev/raw/raw1 %N" raw device 의 권한 설정 ACTION=="add", KERNEL=="raw*", OWNER="oracle", GROUP="dba", MODE="0660" udev rules 갱신 # udevadm trigger --action=add raw...
-
[Linux] Bonding Network Currently Active Slave 변경
RHEL/CentOS RHEL / CentOS 7 Bonding Currently Active Slave 변경 Bonding(본딩) 는 이중화 구성을 통한 빠른 장애 대응 및 네트워크 대역폭 증가에 매우 유용합니다. 아래 절차는 본딩 인터페이스를 중단하지 않고, Slave 인터페이스로 전환하는 방법을 설명하려고 합니다. # cat /proc/net/bonding/bond0 Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: fault-tolerance (active-backup) Primary Slave: None Currently Active Slave: eth1 MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface:...
-
[PowerKVM] PowerKVM Install Guide
[PowerKVM] PowerKVM Install Guide IBM PowerKVM Install Guide 입니다. IBM PowerKVM Install Guide from CheolHee Han 작성일 : 2018.08.01 배포일 : 2019.01.14
-
[Linux] CentOS 7 네트워크 Bonding 구성
[Linux] CentOS 7 네트워크 Bonding 구성 CentOS 7 에서 bonding 구성을 위해서는 아래와 같은 절차가 필요합니다. CentOS 7 에서는 bonding 모듈이 기본적으로 로드가 되어 있지 않습니다. 아래 명령을 통해 boning 모듈을 로드합니다. # modprobe --first-time bonding Bond Interface 생성 Bond Interface 생성을 하기위해서는 /etc/sysconfig/network-scripts/ 의 ifcfg-bond0 파일을 생성해야됩니다. # cat /etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE=bond0 NAME=bond0 TYPE=Bond IPADDR=10.0.0.1 NETMASK=255.255.255.0 ONBOOT=yes BOOTPROTO=none BONDING_OPTS="mode=1 miimon=100" SLAVE Interface 생성 bond Interface 의 SLAVE Interface 파일을 생성합니다. /etc/sysconfig/network-scripts/ 의 ifcfg-eth1 과 ifcfg-eth2...
-
[RHEL] Local Yum Repository 만들기
[RHEL] Local Yum Repository 만들기 Red Hat Enterprise Linux 설치 ISO 및 물리 DVD 가 있다면 외부 rhn 을 사용하지 않고, base yum Repository 를 만들 수 있습니다. 구성 절차는 아래와 같습니다. DVD 혹은 ISO 파일 mount 진행 ISO 파일의 경우, 시스템에 Upload 진행합니다. // DVD # mount /dev/sr0 /mnt // ISO # mount /root/rhel-server-7.5-x86_64-dvd.iso /mnt Local Disk 로 DVD 혹은 ISO 파일 데이터 복사 # cp -rpH /mnt /home/repo # vi /etc/yum.repos.d/media.repo /etc/yum.repos.d/media.repo 내용...