반응형

2024/04 10

RHCSA 공부 3일차

7. 기본 스토리지 관리 파티션, 파일 시스템, 영구 마운트 추가 디스크 파티셔닝 디스크 파티셔닝은 하드 드라이브를 여러 개의 논리 스토리지 파티션으로 나눈다. 파티션을 사용하면 다양한 요구 사항에 따라 스토리지를 분할할 수 있으며, 이러한 분할은 다양한 이점을 제공한다. 애플리케이션 또는 사용자가 사용할 수 있는 공간을 제한한다. 사용자 파일에서 운영 체제와 프로그램 파일을 구분한다. 메모리 스왑을 위해 별도 영역을 생성한다. 디스크 공간 사용을 제한하여 진단 도구 및 백업 이미징의 성능을 향상한다. MBR 파티션 MBR 파티셔닝 체계는 BIOS 펌웨어를 실행하는 시스템의 표준 최대 네 개의 주 파티션을 지원, Linux 시스템에서는 확장 및 논리 파티션을 사용하여 최대 15개의 파티션을 생성할 수 있..

Linux 2024.04.20

Helm을 사용하여 Jenkins 설치해보기

먼저 Helm 패키지 매니저를 설치해보도록 하겠습니다. Helm 설치하는 방법은 공식 홈페이지에 잘 나와있습니다.(https://helm.sh/ko/docs/intro/install/) 저는 Ubuntu 환경이여서 Apt 패키지 매니저로 설치를 해보았습니다. Helm 설치# curl https://baltocdn.com/helm/signing.asc | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg > /dev/null# apt-get install apt-transport-https --yes# echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/helm.gpg] http..

Jenkins 2024.04.19

쿠버네티스 클러스터에 Master, Worker 노드 추가

이번엔 쿠버네티스 클러스터에 Master, Worker 노드 추가해보도록 하겠습니다. Master와 Worker 노드를 추가하려면 token을 생성해주어야 합니다. 아래의 명령어를 통해 Master 노드에서 Token을 생성 할 수 있습니다. # kubeadm token create 아래 명령어로 생성된 토큰을 확인 할 수 있습니다. # kubeadm token list Master 노드 추가하는 방법 Master 노드를 추가하려면 certificate key를 생성 해줍니다. # kubeadm init phase upload-certs --upload-certs I0418 11:01:19.681646 532904 version.go:256] remote version is much newer: v1.3..

쿠버네티스 2024.04.18

Linux rsync를 사용하여 백업

rsync는 파일이나 디렉터리를 로컬 및 원격에서 동기화 하는데 사용됩니다. 그래서 주로 백업을 할 때 많이 사용되는 명령어 입니다. cp와의 차이점은 rsync는 source 와 destination 의 변경 사항을 확인 하고 자동으로 sync를 맞춰줍니다. cp는 source에 있는 파일이나 디렉터리를 destination 에 덮어씌운다고 생각하시면 편합니다. 설치방법 yum or apt 를 사용하여 설치를 하면 됩니다. ex) apt install -y rsync or yum install -y rsync rsync 옵션 확인 -a: 동기화되는 파일의 권한, 소유권, 타임스탬프 및 기타 속성을 유지합니다. 정확한 복사본을 만드는데 사용됩니다. -v: rsync 명령어를 사용하여 sync를 맞추는 과..

Linux 2024.04.17

NFS mount 오류 확인 및 해결 (Connection time out)

오류 상황 # mount -t nfs -o vers=3 => Connection time out 에러 발생 백업용으로 vSAN 클러스터를 구성해서 vSAN 파일 공유로 NFS 마운트를 하는 과정에서 계속 Connection Time out 에러가 나왔다. 이럴 때는 먼저 mount 명령어의 -v 옵션을 사용하여 에러 로그를 먼저 확인하면 된다. 해결 방안 # mount -t nfs -o vers=3 -v => mount.nfs: trying 10.10.228.192 prog 100005 vers 3 prot UDP port 20048 => mount.nfs: portmap query retrying: RPC: Timed out 에러 발생 저 같은 경우에는 20048 포트가 열려 있지 않아서 계속 Conn..

Linux 2024.04.16

MetalLB 사용해서 외부로 노출 시키기

바닐라 쿠버네티스에서 서비스를 외부로 노출시키는 방법으로 LoadBalancer 타입이 존재하는데, 일반적인 바닐라 쿠버네티스에서는 LoadBalancer 서비스를 사용할 수 없습니다. 때문에, MetalLB를 설치하여 외부로 서비스를 노출 시켜보도록 하겠습니다. MetalLB를 설치하는 방법은 크게 두 가지가 있습니다. 1) Kubernetes 매니페스트 파일 사용 2) Helm 패키지를 사용하여 설치 이번엔 1번 방법을 사용하여 설치를 해보도록 하겠습니다. MetalLB 설치 MetalLB 설치 방법은 공식 홈페이지에 모두 나와있습니다. (https://metallb.universe.tf/installation/) 우선 kube-proxy 설정을 변경 해줍니다. # kubectl edit config..

쿠버네티스 2024.04.15

RHCSA 공부 2일차

3. 로그 분석 및 저장 정확한 시간 유지 관리 NTP(Network Time Protocol)을 사용하여 정확한 시간 동기화를 유지하고 시스템 저널 및 로그에서 기록하는 이벤트의 타임스탬프가 정확하도록 시간대를 구성한다. 로컬 시계 및 시간대 관리 시스템 시간 동기화는 여러 시스템의 로그 파일을 분석하는 데 중요하다. 또한 일부 서비스가 정확하게 작동하려면 시간 동기화가 필요할 수 있다. timedatectl: timedatectl 명령은 시스템의 현재 시간, 시간대 및 NTP 동기화 설정을 포함하여 현재 시간과 관련된 시스템 설정의 개요를 표시한다. ex) 명령 결과 [user@host ~]$ timedatectl Local time: Wed 2022-03-16 05:53:05 EDT Universa..

Linux 2024.04.13

쿠버네티스 클러스터 구조 알아보기

쿠버네티스 클러스터가 어떻게 구성되어 있는지 알아보겠습니다. 컨트롤 플레인 컨트롤 플레인은 클러스터를 제어하고 작동시킵니다. 또한 클러스터의 상태를 유지하고 제어하지만, 애플리케이션을 실행하지 않습니다. 구성 요소는 아래와 같습니다. API 서버: 사용자, 컨트롤 플레인 구성 요소와 통신을 담당한다. 스케줄러: 애플리케이션의 배포를 담당 ex) 워커 노드의 상태를 확인하여 파드를 할당 컨트롤러 매니저: 구성 요소 복제본, 워커 노드 추적, 노드 장애 처리 등과 같은 클러스터 단의 기능을 수행 ETCD: 클러스터 구성을 지속적으로 저장하는 분산 데이터 저장소 각 구성요소에 대해 조금 더 자세히 설명을 하면, ETCD의 기능 : API 서버가 다시 시작되거나 실패하더라도 쿠버네티스에서 생성하는 모든 오브젝트..

쿠버네티스 2024.04.10

쿠버네티스 harbor에서 이미지 받아 오기 (insecure-registry)

이번엔 Private Registry에서 인증서를 무시하고 이미지를 받아오는 것을 알아보겠습니다. 현재 구성해놓은 클러스터에서는 CONTAINER-RUNTIME을 containerd를 사용하고 있기 때문에, containerd의 설정 파일에서 Private Registry 주소를 등록을 해주어야 합니다. 1. config.toml 파일 확인 containerd 설정 파일을 확인 해줍니다. /etc/containerd/config.toml 에 주로 있지만, 혹시 파일이 없다면 containerd config default > /etc/containerd/config.toml 명령어를 통해 생성해줍니다. 2. private registry 주소 등록 [plugins."io.containerd.grpc.v1...

쿠버네티스 2024.04.08

RHCSA 공부 1일차

1. 명령줄 생산성 향상 Bash 스크립트 작성 스크립트의 첫 번째 행은 '#!' 표기법으로 시작한다. '#!' 두 문자의 이름은 she-bang 또는 hash-bang을 따서, sharp, hash, bang이라고 합니다. bash 구문 스크립트 파일의 경우 첫 번째 줄은 "#!/usr/bin/bash" 로 작성한다. 쉘 스크립트 파일을 일반 명령으로 실행하려면 실행 권한이 있어야 한다. Bash 쉘 스크립트가 쉘의 PATH 환경변수에 나열된 디렉터리에 저장된 경우 컴파일된 명령을 실행하는 것과 유사하게 파일 이름만 사용하여 쉘 스크립트를 실행 할 수 있다. => echo $PATH 명령으로 PATH 경로 확인 인용 특수 문자 Bash 쉘에서 특별한 의미를 갖는 문자와 단어가 있다. 이러한 문자들을 특..

Linux 2024.04.04
반응형