Ssoon
[1주차] CHAPTER-01 쿠버네티스 개요와 클러스터 설치 본문
이정훈님이 집필하신 "24단계 실습으로 정복하는 쿠버네티스" 로 진행하는 CloudNet@ 팀의 PKOS 1주차 정리입니다.
✅ 실습1 - Kubespray 를 이용해 3개 노드의 클러스터 구축
❓ Kubespray : Ansible 기반의 쿠버네티스 설치 자동화 도구cp
📌 사전에 Virtualbox에 ubuntu20.04 가상머신 3대 (ubuntu20-0, ubuntu20-1, ubuntu20-2)를 준비하였습니다.
✔ 소스코드 : https://github.com/kubernetes-sigs/kubespray
💠 kubespray 소스코드를 clone 합니다.
💠 pip3 를 설치하고 requirement.txt 의 명시된 kubespray 설치에 필요한 모듈을 설치합니다.
💠 소스 파일 inventory/sample 디렉토리를 inventory/mycluster 로 복사합니다. 복사한 inventory/mycluster 디렉토리에서 노드정보가 담긴 hosts.yml 파일을 생성합니다.
all:
hosts:
ubuntu20-0:
ansible_host: ubuntu20-0
ubuntu20-1:
ansible_host: ubuntu20-1
ubuntu20-2:
ansible_host: ubuntu20-2
children:
kube_control_plane:
hosts:
ubuntu20-0:
ubuntu20-1:
ubuntu20-2:
kube_node:
hosts:
ubuntu20-0:
ubuntu20-1:
ubuntu20-2:
etcd:
hosts:
ubuntu20-0:
ubuntu20-1:
ubuntu20-2:
k8s_cluster:
children:
kube_control_plane:
kube_node:
calico_rr:
calico_rr:
hosts: {}
✔ all: hosts: 각 노드의 호스트명
✔ all: children: kube_control_plane: 컨트롤 플레인 노드 리스트
✔ all: children: kube_node: 워커노드 리스트
✔ all: children: etcd: etcd 데이터베이스 노드 리스트
💠 /kubespray/inventory/mycluster/group_vars/k8s_cluster/k8s_cluster.yml 옵션을 수정합니다.
# MetalLB 사용하기 위한 설정
kube_proxy_strict_arp: true
# 클러스터 감사 로그 활성화
kubernetes_audit: true
💠 쿠버네티스 설치를 진행합니다.
💠 설치된 쿠버네티스 클러스터 정보를 확인합니다.
✅ 실습2 - K3s 로 단일노드 구성 클러스터 구축
💠 아래의 명령어로 K3s 를 설치합니다.
curl -sfL https://get.k3s.io | sh -
💠 설치 정보를 확인합니다.
✅ 로컬호스트에서 kubectl 설치
💠 윈도우즈에 설치한 ubuntu 에서 kubectl 를 다운로드 받아 설치합니다.
💠 원격 클러스터 정보를 kubeconfig에 등록합니다.
📌 쿠버네티스는 api 인증정보를 kubeconfig(${HOME}/.kube/config) 에서 관리합니다.
✔ cluster : 원격 클러스터 api서버의 인증서 정보/ip정보
✔ context : 여러 클러스터 중 현재 사용 중인 클러스터와 유저/네임스페이스 정보
✔ users : 사용자 이금롸 키 정보
💠 호스트에서 원격클러스터 정보를 확인합니다.
💠 config 정보를 확인합니다.
'Production Kubernetes Online Study' 카테고리의 다른 글
[1주차] CHAPTER-05 쿠버네티스 트러블슈팅 (0) | 2023.03.10 |
---|---|
[1주차] CHAPTER-04 YAML파일를 이용한 오브젝트 관리 (0) | 2023.03.10 |
[1주차] CHAPTER-03 쿠버네티스 주요 오브젝트 (0) | 2023.03.10 |
[1주차] CHAPTER-02 효율적인 쿠버네티스 클러스터 관리 (0) | 2023.03.10 |
[1주차] AWS kOps 설치 및 기본 사용 (0) | 2023.03.06 |