전체 글
-
쿠버네티스 파드 생성 해보자! 눈감고 파드 생성하기Kubernetes/kubectl 시작 2023. 6. 8. 22:08
이제 pod 정도는 무엇인지 정의는 아는데, 익숙하게 손으로 바로 생성 할 수 있도록 연습! [pod 생성하기] - 2가지 방법 1. kubectl run 명령(cli)으로 생성 $ kubectl run webserver —image=nginx 2.pod yaml을 이용해서 생성 -> pod 실행 $ kubectl create -f pod-nginx.yaml [현재 동작 중인 pod를 확인] kubectl get pods kubectl get pods -o wide kubectl get pods -o yaml kubectl get pods -o json -> json 형식으로 볼 수 있으며, 자세하게 보기 가능 kubectl get pods webserver -o json | grep -i podip -..
-
쿠버네티스 - namespace의 정의Kubernetes/kubectl 시작 2023. 6. 8. 21:38
[namespace] 의 개념 및 의미 kubectl create namespace 만약에, namespace를 생성할 때, 여러가지로 만들 수 있음. ex) pink, black, purple 의 namespace를 생성한다면, 이 중 하나를 지정하여 prd, dev, beta test에서 사용가능함! 즉 물리클러스터는 하나지만, 여러 개 인것 처럼 만들어서 작동 가능!!! 위와 같이 각각의 namespace를 여러개 만들어서 실제 namespace는 한 번 호출하고 뒤에 여러개 중 하나의 스페이스를 지정해준다! -> 만약 어떤 계열사에서 면세점, 백화점, 비행기 예약 등등의 웹페이지를 운영하는 직무를 맡았을 때, 하루 동안 면세점 페이지를 수정, 테스트 배포의 순으로 진행 -> namespace 고정..
-
container와 pod의 차이 - 쿠버네티스Kubernetes/kubectl 시작 2023. 6. 8. 21:03
앞에서도 잠시 container와 pod 의 차이에 대해서 적어놨지만, 본격적으로 정리해보자! (복습) [container 정리] cat > app.js const http = requie('https'); const os = require('os'); console.log("Test sever starting..."); var handler = function(req, res) { res.wirteHead(200); res.end("Container Hostname:" + os.hostname() + "\n"); }; var www = http.createServer(handler); www.listen(8080); # cat > Dockerfile FROM node:12 COPY app.js/app...
-
쿠버네티스 - yaml 템플릿 만들고 편리하게 써보기!Kubernetes/kubectl 시작 2023. 6. 8. 15:55
입문자에게 있어서, yaml 템플릿은 가장 많이 사용되는것 같음! - 필자 생각 그렇다면 yaml 템플릿과 친해져 보도록 하자 [yaml 템플릿] -> 띄어쓰기가 가장 중요!!!!!! 사람이 쉽게 읽을 수 있는 데이터 직렬화 양식 기본 문법 구조화된 데이터를 표현하기 위한 데이터 포맷 python 처럼 들여쓰기로 데이터 계층을 표기 가독성이 좋아 설정 일에 적합한 형식 scalar 문법 : ‘.’을 기준으로 key : value를 설정 배열 문법 : ‘-’ 문자로 여러 개를 나열 공식사이트 : http://yaml.org/ The Official YAML Web Site yaml.org kubernetes yaml example -> $ cat nginx-pod.yaml (yaml 파일 보는 명령어) 그..
-
쿠버네티스 - 네임스페이스 SwithchKubernetes/kubectl 시작 2023. 6. 8. 14:57
기본으로 사용하는 namespace를 defaul가 아닌 다른 이름의 namespace로 switch 하는 방법 방법 및 순서 1.namespace를 포함한 context 등록 $ kubectl config —help$ kubectl config view 2. 등록된 namespace로 context 변경 $ ,kubectl config use-context NAME $ kubectl config set-context NAME —cluster=kubernetes → 먼저 쿠버네티스에 config에 네임스페이스 등록 → context 즉, 환경을 바꿔가며 클러스터를 관리할 수 있는 기능 = context 먼저 앞서 config 정보 볼 것! 1. config 정보 보기 2. 현재 등록된 config 확인하..
-
쿠버네티스 - 컨테이너 동작 flow & 구성 요소 & 크기 단위 비교Kubernetes/kubectl 시작 2023. 6. 8. 13:59
쿠버네티스에서 컨테이너 동작 Flow ! 동작 flow는 이성미 강사님의 강의를 들으면서 직접 똑같이 그려보았늩데, 필자는 그리면서 좀 더 와 닿게 된 거 같다! 시간이 난다면 직접 손으로 그려보는 것을 추천함! 순서에 따라 한번 읽어 보고, 이런 흐름을 가지고 있구나 라고 생각하면 좋을 것 같음! 1. 쿠버네티스 구성 요소 1-1. 노드(node) 란? 클러스터 내 가상 섭, 즉 컴퓨팅 엔진 단위 마스너 노드와 워커 노드로 분리되어 있음 마스터 노드 : 전체 쿠버네티스 시스템을 관리 및 통제하는 쿠버네티스 컨트롤 플레인을 관장 워커 노드 : 배포하고자 하는 오플리케이션의 실제 실행을 수행 마스터 노드가 죽으면 클러스터를 관리할 노드가 없기에, 일반적으로 3개 정도의 마스터 노드를 띄어 노드를 관리함. ..
-
kubectl 본격적으로 사용하기 전 친해 지기Kubernetes/kubectl 시작 2023. 6. 8. 10:34
설치 목차에서 kubeadm, kubectl, kubelet 설치를 성공적으로 마쳤다면, 잘 동작하는지 확인 할 수 있다. -> 전체적으로 쿠버네티스가 어떤것이며, 실제 명령어를 입력하며 친해지는 과정임~! 가장 좋은 방법은 kubectl --help 이런식으로 --help 명령어를 잘 이용하면 좋음! (나만의 팁) 각각 설치는 했지만, 명령어들의 각각 어떤 의미 및 기본 구조를 가지고 있는지가 중요! 1. kubectl 이 무엇인가? : 쿠버네티스에게 내가 원하는 것을 요청하는 것 즉 클러스터에 명령을 내리는 CLI(command line interface) 예를 들어, "쿠버네티스야 지금 몇개의 노드가 있니~? " 라고 물어볼 때, kubectl get nodes 를 입력하면, 현재(namespace..
-
kubernetes , kubeadm join 오류 2Kubernetes/error 2023. 6. 7. 21:33
master에서 kubeadm init 을 하여 token 발행했지만, kubeadmin join ~~ token 에서 오류가 날 때, 필자는 여러가지 오류가 났었다... 눈물 1. token 저장 후 바로 오류가 날 때 $ mkdir -p $HOME/.kube $ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config $ sudo chown $(id -u):$(id -g) $HOME/.kube/config -> 순서대로 입력 2. apply 오류 날 때 $ curl https://docs.projectcalico.org/archive/v3.8/manifests/calico.yaml -O 입력 후에 kubectl get nodes -> 오류 나지 않는지 확인..