2023/12 15

service/ 개념 & test

# deployment를 쓰는이유? 고가용성!이렇게 deployment로 생성된 세개의 nginx pod들이 있다고 가정하자.일단 우리가 deployment컨트롤러로 동일한 pod 세 개를 운영하는 목적은 뭐였니?고가용성을 보장하기 위해서다. 고가용성이란 만약 노드 하나가 죽거나 한가지 pod가 죽거나 등등 뭐 ㅈ같은 일이 생겼을 경우 서비스가 죽게 될 것인데, 이거를 대비하려고 deployment컨트롤러로 동일한 pod들을 replicas 설정을 통해 만들어줬다.  # 헐이렇게 세개의 동일한 pod들을 배포해줬고 deployment컨트롤러가 가용성을 보장해준다. 근데 이 세개의 pod들안에서 nginx컨테이너가 띄운 웹사이트들은 다 똑같지만 접속하려면 서로 다른 아이피로 접속을 해야한다. 그러면 의미가..

k8s/concept 2023.12.04

tree커맨드 사용방법

mkdir test-tree cd test-tree mkdir dir-1 mkdir dir-2 touch dir-1/file-1 touch dir-1/file-2 touch dir-2/file-2 touch dir-2/file-1 뭐 이런식으로 디렉토리와 파일구조를 만들었따고 치면, tree커맨드를 치면 요렇게 디렉토리와 파일이 트리구조로 보여지게된다. 근데 이거 패키지 설치해야한다. ubuntu를 쓰는데 tree커맨드가 없더라. # 설치 sudo apt-get install tree # 명령어 tree 디렉토리명 해당디렉토리의 하위디렉토리 및 파일들을 보여주게된다. tree -d 디렉토리명 디렉토리만 포함해서 보여줘~ tree -d -L 2 디렉토리명 레이어 두번째까지만 보여줘

linux/concept 2023.12.03

controller/ cronJob

# 개념 job을 일정시각마다 실행하게 하는거다. 예를들어 매일 정각에 한번씩 job을 실행하게 하는거거나.. 뭐 이런거다. 매일 로그를 백업한다거나 점검 프로세스를 job으로 넣어두고 하는데 쓰면 좋을것 같다. # yaml양식 apiVersion: batch/v1 kind: CronJob metadata: name: hello spec: schedule: "* * * * *" jobTemplate: spec: template: spec: containers: - name: hello image: busybox:1.28 imagePullPolicy: IfNotPresent command: - /bin/sh - -c - date; echo Hello from the Kubernetes cluster res..

k8s/concept 2023.12.03

controller/ job

# 기본적인 pod 동작원리 kubectl run testpod --image centos:7 --command sleep5 pod의 기본적인 특징이, pod안에 컨테이너가 제대로 안되면 계속 재시작을 시킴 liveness container는 이런걸 커스텀 할 수 있는것 같고.. 기본적으로는 pod안에 컨테이너가 정상이아니면 계속 살려냄. kubectl get pods -o wide --watch containerCreating으로 컨테이너가 생겨나고, running하다가 5초후에 sleep 5 커맨드가 끝나고 멈춰버린다. 안에있던 코드는 정상적으로 종료된거다. 때문에 completed가 뜨고 실행중인 컨테이너가 0/1로 바뀌는데, 이제 동작하는 컨테이너가 없으니 다시 이 컨테이너를 살려내고 다시 5초후..

k8s/concept 2023.12.02

controller/ daemonSet & statefulSet

## 마스터노드 - 워커노드 커넥션 연동&해제하기 # 마스터 노드 - 워커 노드를 연결을 끊는 방법부터 알아보자. master node에서 먼저 node를 제거해줘야 한다. kubectl get nodes 난 현재 worker1, worker2 이렇게 두 워커 노드가 있다. 여기서 worker1 node를 삭제해보겠다. 삭제하기전에 node1에서 작동중인 pod가 있는지를 체크하고 삭제하자. kubectl delete nodes worker1 삭제 후에 해당 워커노드 vm으로 가서, kubeadm reset 명령어를 치면 master node와의 행복한 기억들을 모두 지워준다. 중간에 y까지 치고 동의하면, 뭐가 뜨는데 잘된건진 모르곘다. 이후에 join을 쳤을때 안되면 잘안된거다. # master no..

k8s/concept 2023.12.01