티스토리 뷰

https://www.youtube.com/watch?v=JBGsqsoGxEo 

1. 도입 배경. 

기존 서비스들을 vm 에 운영 유지중이며 -> k8s 에 서비스 운영으로 진행됩니다.

2. 쿠버네티스는 ci/cd 가 기본으로 도입되는데 개발자가

1. 소스를 REPOSITORY 에 COMMIT, PUSH 진행합니다. 

2. BUILD 를 JENKINS 에 통해 진행합니다. 

   ㄴ 여기서 빌드 되는동시에 DOCKER IMANGE 가 NEXUS 에 적재 됩니다.

3. DEPLOY 를 통해 NHN CLOUD DEPLOY  UPLOAD YAML 파일을 DEPLOY 진행됩니다. 

4.  해당 YAML 파일은 K8S MASTER NODE 를 통해 kubectl apply-f my-pod.yaml(image) 생성합니다.

5. 4번의 내용을 실행하게 되면 work node에 pod 가 생성되며 배포되는 형태가 될수 있습니다.

3. 쿠버네티스 장점으로는 별도로 os 부터 app에 대한 tool 설치가 필요가 없습니다.(java, was, script) 등등..

아래장점~!!!

3-1.배포 편리함.

또한 여러개의 터미널을 열어서 관리할 필요가 없습니다. 15대 40대 100대 터미널을 열어서 하나하나 확인할 필요가 없습니다.

3-2. 롤백에 대한 자유로움

또한 배포에 대해 자유로움을 얻을수 있습니다. 바로 롤백 에 대한 장점이기도 합니다.

3-3. 배포 의 편리함.

아래 yaml 파일을 살펴 보자면, pod 2,

3-4. 배포의 실시간 

그리고 배포 또한 매우 편리하게 가능합니다.

3-4-1. 배포의 편리함.(배포과정 화면)

3-4-2. 배포의 편리함.(배포과정 화면)

3-4-3. 배포의 편리함.(배포과정 화면)

왼쪽엔 pod 배포 상태를 오른쪽은 log 상태를 확인할수가 있습니다.

3-4-4. 셀프 프로세싱작동

out of memory 가 발생했을경우 자동으로 해결할수 있습니다. 

 

spring batch metatable 을 이용합니다. 

batch_step_execution_context -> batch_step_execution-> batch_job_execution _batch_job_instace -> batch_job_execution_params -> batch_job_execution_context 입니다. 

 

ingress ..

master node 의 taint (마스터 노드의 반응이없을경우)

 

pod 의 최대 사용량을 limit 로 지정해서 관리해야 합니다. 

최대 자원 사용량은 cpu 500m / mem 1Gi

 

 

댓글