전체 글 483

[CKA] 22. k8s cluster backup 방법

개요 k8s cluster의 설정을 backup 하는 방법을 알아보겠습니다 backup의 대상 1. Resource Configuration 2. ETCD Cluster 3. Persistent Volumes Resource Configuration backup 방법 1. Imperative (명령어 방식) 방식 일일이 수행한 명령어는 저장하는 방식 장점 없는 거 같음.. 단점 어떻게 생성했는지 까먹으면 골치가 아픕니다. 2. Declarative (선언적 방식) 방식 yaml file을 저장하는 방식 장점 github 같은 저장소에 보관해서 팀 내에서 공유하기 편합니다. 단점 Imperative로 만든 object는 관리가 안됩니다. 3. Resource configs backup 방식 kube-api..

Cloud/k8s-CKA 2023.05.07

[CKA] 21. k8s cluster upgrade

개요 k8s의 cluster의 버전을 upgrade 하는 방법을 알아보겠습니다. 유의 사항 1. 하나씩 올리면서 업데이트를 해야 합니다. 2. k8s와 kubelet과 kubectl은 수동으로 upgrade 해주어야 합니다. 3. upgrade작업 시 kubelet를 upgrade하기 전에 drain을 사용하여 모든 pod를 안전하게 다른 node에 옮겨 놓고 update후에 uncordon 해주어야 합니다. k8s의 버전 체계 k8s 모듈별 하위 호환성 정보 https://v1-26.docs.kubernetes.io/releases/version-skew-policy/ Version Skew Policy The maximum version skew supported between various Kube..

Cloud/k8s-CKA 2023.05.05

[CKA] 20. node operating system update

개요 worker node의 operating system을 update시 운영중인 service에 영향을 주지 않고 update하는 방법을 알아보겠습니다. Node가 갑자기 종료되었을 때 현상 k8s에서는 5분간 worker node가 살아나지 않으면 Node가 죽었다고 판단하여 해당 node에 할당되 pod를 종료 처리 합니다. 그리고 replicaset으로 생성된 pod는 다른 node에 다시 생성하고 replicaset으로 생성하지 않는 pod는 사라지게 됩니다. Node를 정상적으로 종료 하는 방법 drain 사용 #kubectl drain worker1 위 명령어는 worker1에 pod를 scheduling 할 수 없게 만듭니다. 그리고 할당된 pod를 정상 종료 시키고 pod를 다른 nod..

Cloud/k8s-CKA 2023.04.24

[영어] 영포자 탈출기 1

개요 문법, 단어, 전화 영어를 하면서 제가 느낀 영어 공부함에 있어서의 답답함을 하나씩 GPT와 함께 풀어 나가 보려고 합니다. GPT가 생각 보다 영어 공부하기엔 매우 좋은 거 같습니다. ㅎㅎ 목표 영어 강의 및 외국인 개발자와 자유로운 의사소통을 하는 것을 목표로 합니다. 본론 우선 영어를 공부를 어떻게 해야하는지 제 나름대로 정리해 보겠습니다. 우리가 모르는 언어를 보았을때 어떻게 해석하는지 절차를 한번 저의 주관적인 관점에서 정리해 보겠습니다. 아마 영어의 기초가 탄탄하지 못한 사람들은 아마 다 저와 같은 순서대로 해석할 확률이 99% 일듯 합니다. ㅎㅎ 중국어를 예로 들겠습니다(예로든이유는. 중국어를 한 번도 공부해 본 적이 없어서 저에게는 외계어랑 같기 때문입니다.) 예제 문장으로 아래 문장..

[CKA] 19. multi container pods

개요 pod를 생성할 때 다수의 container를 포함하는 Pod를 생성해 보겠습니다. 왜 필요한가? service를 개발하다 보면 항상 같이 다녀야 하는 service들이 존재합니다. 그래서 service들 한 개의 pod안에 모아서 구성하는 것이 multi conatiner pod입니다. 사용방법 간단하게 pod안에 container만 추가시켜 주면 끝입니다. 다만 유의할 점은 service 하는 port가 중복이 되면 안 된다는 것입니다. 추가 방법 container는 배열 형태로 추가되기 때문에 - 를 넣어서 container를 추가할 수 있습니다. apiVersion: v1 kind: Pod metadata: labels: run: multiple-container-pod name: multi..

Cloud/k8s-CKA 2023.04.20

[영어] 표현 공부

1. 나의 딸에게 미니언를 보여주어야겠다 "I should show Minions to my daughter." "I should show Minions to my daughter"는 영어에서 자주 사용되는 문장 형식 중 하나인 S-MDO-IO 형식입니다. 여기서 S는 주어(Subject), MDO는 도치사(Preposition)가 있는 목적어(Direct Object), 그리고 IO는 간접 목적어(Indirect Object)를 의미합니다. 문장 구성 요소는 다음과 같습니다: S - 주어(Subject): "I" Modal verb: "should" Main verb: "show" MDO - 도치사가 있는 목적어(Direct Object with a preposition): "Minions to" IO..

[CKA] 18. Environment Variables

개요 k8s에서 Evrionment Variables들이 어떻게 관리되는지 또 어떻게 사용하는지 알아보겠습니다. : how to set environment and use environment in k8s Evironment Variables의 종류 1. Environment Variables in Application 2. ConfigMaps in Application 3. secretkey in Application Environment Variables in Application yaml 파일에 Environment Variables를 정의하여 container 내부에서 사용하는 방법입니다. 사용법 env: 필드를 사용하여 name : value 형식으로 Environment Variables를 넘..

Cloud/k8s-CKA 2023.03.28

[CKA] 17. command and argument

개요 deployment yaml 또는 Pod yaml 파일에서 command와 argument를 어떻게 전달하는 알아보겠습니다. 사전 지식 deployment / Pod yaml 파일에서 command와 argument를 어떻게 전달하는 알아보기 전에 Dockerfile에서 command와 argument를 어떻게 전달하는지 먼저 알아보겠습니다. 이걸 먼저 알아보는 이유는 Dockerfile에서 사용하는 command와 argument 전달 방식이 deployment / pod yaml 파일에서 동일한 개념으로 사용되기 때문입니다. Dockerfile에서 command와 argument 전달 방법 2가의 전달 방법이 있습니다. CMD 이용과 ETNRYPOINT 이용합니다. CMD 이용 CMD 정의 Do..

Cloud/k8s-CKA 2023.03.25

[CKA] 16. k8s Rolling update and Rollback

개요k8s Rolling update와 Rollback 방식을 알아보겠습니다. 업데이트 방식1. Recreate update2. Rolling updateRecreate Update기존에 배포한 pod를 모두 내리고 새로운 pod를 배포하는 방식입니다. 그러나 이방식의 큰문제는 서비스가 중단된다는 것입니다. 그래서 무중단 서비스를 위해서 우리는 Rolling update를 해야 합니다.Rolling update란?depolyment를 update할 때 사용되는 update 방식입니다. k8s에서 기본적으로 사용하는 deployment update 방식 입니다.검증deployment yaml 파일을 수정해서 apply를 다시 하거나 배포된 deployment의 image를 아래 명령어로 교체 kubectl..

Cloud/k8s-CKA 2023.03.23