지니데비 기록 자세히보기
반응형

데브옵스/Orchestration 72

[Kubernetes] 39. Authentication - TLS Certificates (1)

모든 유저의 요청은 kube-apiserver를 거치고 요청을 처리하기 전에 인증(Authentication)을 거친다. kube-apiserver 인증(Authentication) 메커니즘1. static password file(v1.19부터 사용 불가)2. static token file ( v1.19부터 사용 불가)3. certificates TLS란 무엇인가?http로 요청 시 id/pw는 일반 텍스트로 전송됨 - 추출 용이id: user1password: password123 https로 요청하면 키/밸류 모두 암호화되어 전송됨XCDV: DKSJKFDLSFDLKFJDK: DLKJFADKLFJDSymmetric encryption(대칭 암호화): 키도 함께 보내서 서버에서 암호회 된 데이터 복호..

[Kubernetes] 38. Authentication - basic

kube-apiserver authentication(인증)who can access? authorization(권한부여)who can they do?  AuthenticationAccounts - 외부에서 관리하기 때문에 클러스터 내부에서 사용자 조회 불가 ServiceAccounts - 쿠버네티스에서 생성하고 관리하여 조회 가능kubectl create serviceaccount sa1kubectl get serviceaccount 모든 유저의 요청은 kube-apiserver를 거치고 요청을 처리하기 전에 인증(Authentication)을 거친다. kube-apiserver 인증(Authentication) 메커니즘1. static password file(v1.19부터 사용 불가)user-det..

[Kubernetes] 35. Cluster Upgrade

minor version 1씩 업그레이드 진행할 것 controlplane 먼저 업그레이드 한 뒤전략1: 모든 워커노드 동시에 업그레이드 (서비스 중단됨)전략2: 노드 하나씩 순차적으로 업그레이드전략3: 새로운 노드 추가하여 기존 노드의 앱 이관하여 업그레이드 kubectl get nodecat /etc/*release*## 업그레이드 할 버전으로 바꾸고 실행echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.28/deb/ /" | sudo tee /etc/apt/sources.list.d/kubernetes.listcurl -fsSL https://pkgs.k8s.io/..

[Kubernetes] 34. Software Version, Cluster Upgrade

v1.11.3v[major].[minor].[patch] alpha version:beta versionmajor version: minor version: feature, functionalitiespatch version: bug fixes   cat /etc/*release*# 마스터노드 업그레이드vi /etc/apt/sources.list.d/kubernetes.listsudo apt updatesudo apt-cache madison kubeadmsudo apt-mark unhold kubeadm && \sudo apt-get update && sudo apt-get install -y kubeadm='1.31.0-1.1' && \sudo apt-mark hold kubeadmkubeadm ve..

[Kubernetes] 33. OS Upgrades

※ 주의사항: 쿠버네티스 버전 업그레이드 시 버전은 꼭 1씩 올려야 한다. 예를 들어, V1.30.8에서 V1.32.0으로 올려야 한다면 V1.30.8 → V1.31.4 → V1.32.0의 순서로 각 노드 하나씩 업그레이드 작업을 해야한다.# master nodeyum list --showduplicates kubeadm --disableexcludes=kubernetesyum install -y kubeadm-1.32.0-150500.1.1 --disableexcludes=kuberneteskubeadm versionkubeadm upgrade plankubeadm upgrade apply v1.32.0kubectl drain [노드명] --ignore-daemonsets# replicaset, job..

[Kubernetes] 31. InitContainers

Init Container는 메인 컨테이너를 실행하기 전에 먼저 실행되는 컨테이너로, 실행 전 사전작업(설정, 데이터 다운로드, 실행환경 준비 등)을 수행한다. Init Container를 Multi로 구성할 경우, 파일에 정의된 순서대로 실행된다. 모든 컨테이너가 실행 성공할 때까지 다시 실행되며, 초기화 작업이 모두 성공하면 Init Container는 종료되고 메인 컨테이너를 실행한다.Init Container 예시apiVersion: v1kind: Podmetadata: name: myapp-pod labels: app: myappspec: containers: - name: myapp-container image: busybox:1.28 command: ['sh', '-c..

[Kubernetes] 30. Multi-Container

서로 의존하며 Lifecycle이 동일한 컨테이너를 동일한 Pod에 배치하는 것을 Multi-Container라고 한다.Multi-Container 구성 및 로그 확인# Multi-Container 구성apiVersion: v1kind: Podmetadata: name: simple-webapp labels: name: simple-webappspec: containers: - name: simple-webapp image: simple-webapp ports: - containerPort: 8080 - name: log-agent image: log-agent# Pod 접속 후 로그 보기kubectl exec -it [pod name] -c [container n..

반응형