Chapter01/Kubernetes 8

[Kubernetes] Components 역할 및 관계

1대의 Master NodeControl plane Component : kube-apiserver, kube-scheduler, kube-controller-manager, etcd n대의 WorkersWorker Component : kubelet, container runtime,kube-proxy,docker  📁 /etcd/kubernetes/manifests  ㄴ kube-apiserver.yaml  ㄴ etcd.yaml  ㄴ kube-scheduler.yaml  ㄴ kube-proxy.yaml  ㄴ kube-controller-manager.yaml   사용자가 kubectl create (pod 생성명령어) 하면 kube-aiserver에 보내면 etcd(DB역할)에 이 pod 정보를 저..

[ Kubernetes ] 클러스터의 관리 및 오케스트레이션

kube-apiserverkube-schedulerkube-controller-manager 이 세 가지 컴포넌트는 Kubernetes 클러스터의 관리 및 오케스트레이션을 담당하는 주요 역할을 함.  kube-apiserverKubernetes의 API 서버 역할을 하며, 클러스터의 모든 요청을 처리하는 중앙 관리 지점kubectl 명령이나 다른 클러스터 내 외부 시스템에서 들어오는 요청을 처리기능:클러스터와 외부 시스템 간의 커뮤니케이션을 담당API 엔드포인트를 제공하고, 클러스터 상태에 대한 데이터를 JSON 형식으로 응답모든 Kubernetes 클러스터 리소스에 대한 CRUD(Create, Read, Update, Delete) 작업을 처리운영 방식: API 서버는 RESTful API를 통해 외부..

[ Kubernetes ] 자주 쓰는 명령어

1. kubectl get: 리소스 조회전체 파드 목록 조회: kubectl get pods  특정 네임스페이스에서 파드 조회: kubectl get pods -n   전체 서비스 목록 조회: kubectl get svc  특정 네임스페이스에서 서비스 조회: kubectl get svc -n   전체 디플로이먼트 조회: kubectl get deployments  2. kubectl describe: 리소스 상세 정보 조회파드 상세 정보 조회: kubectl describe pod   디플로이먼트 상세 정보 조회: kubectl describe deployment   3. kubectl logs: 파드 로그 조회특정 파드의 로그 조회: kubectl logs   다중 컨테이너 파드에서 로그 조회: kub..

[ Kubernetes ]MetalLB와 Ingress 사용해 배포하기

1. DeploymentDeployment는 애플리케이션의 배포와 관리를 위한 Kubernetes 리소스. 특정 수의 파드를 실행하고, 파드의 상태를 관리합.apiVersion: apps/v1 kind: Deployment metadata:   name: mailserver-deployment spec:   replicas: 1   selector:     matchLabels:       app: mailserver   template:     metadata:       labels:         app: mailserver     spec:       containers:       - name: mailserver         image: your-dockerhub-id/mymailserver..

[ Kubernetes ] MetalLB와 Ingress를 사용해 외부에서 접근 가능한 인프라 구축

▼ ▼ ▼ ▼ ▼ 이미지 생성 ▼ ▼ ▼ ▼https://dev-emma-dev.tistory.com/231 [ Docker ] 이미지 만들기Docker 이미지 만들기는 크게 Dockerfile 작성해 해당 이미지 빌드 후 Docker Hub에 푸시의 과정으로 나눌 수 있음.mailserver이미지 만드는 예시로 ㄱㄱ 1. /root경로에 Dockerfile 생성# 베이스 이미지 지정dev-emma-dev.tistory.com ▼ ▼ ▼ ▼ ▼ 배포 ▼ ▼ ▼ ▼https://dev-emma-dev.tistory.com/233 [ Kubernetes ]MetalLB와 Ingress 사용해 배포하기1. DeploymentDeployment는 애플리케이션의 배포와 관리를 위한 Kubernetes 리소스. 특..

[ Kubernetes ] .yaml로 Nginx Pod을 K8S cluster에 배포하기

두 가지 방식이 있음1.kubectl create deployment 명령어로 Deployment를 생성하기2. YAML파일로 kubectl apply 차이점은kubectl create deployment 명령어를 사용하면 deployment 리소스가 생성되어 deployment를 관리하는 Pod의 복제본을 유지해 Pod이 실패하는 경우 자동으로 새로운 Pod을 생성한다.YAML 파일로 생성한 것은 단일 Pod라서 Pod이 실패하면 자동으로 다시 생성되지 않아 새로운 Pod을 만들어야함. 그래서 복제본을 유지하거나 애플리케이션 가동 중단 없이 업데이트를 해야하는 경우라면 deployment 를 생성하는 방식이 유용하고,굳이 그렇지 않은 경우라면 간단하게 YAML을 만들어 생성,관리를 용이하게 하면된다관리..

에러모음_혼자기록한거

https://velog.io/@ghkdtlwns987/Kubernetes-%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EC%97%90%EB%9F%AC [Kubernetes] 쿠버네티스 에러쿠버네티스 공부좀 하려고 하는데 무슨 에러가 이렇게 많이 나는지 모르겠다.다음에 또 설치할 때 헷갈릴까봐 정리함.아래 명령어 실행이렇게 했는데도 잘 안됀다?Master에서 실행Worker에서 이전velog.io https://it-hangil.tistory.com/59 쿠버네티스 클러스터 재구성(초기화)네트워크 대역이 변경돼서 kubeadm의 노드를 초기화 한후 다시 진행 하려면 마스터,컨트롤 플레인 노드에서 kubeadm reset cleanup-node 후 다시 설정 해주면 ..

[ Kubernetes ] 설치하기

네트워크설정    apt install net-tools    vi /etc/netplan/00-installer-config.yamlnetwork:  ethernets:    enp0s3:      dhcp4: no      dhcp6: false      addresses:       - 192.168.48.20/16      nameservers:        addresses: [8.8.8.8]      routes:        - to: default          via: 192.168.0.1  version: 2      netplan apply    호스트네임 변경    hostnamectl set-hostname master    hostname    vi /etc/hosts    1..