기술 창고(234)
-
[Kubernetes] Replica Set 작성
이번에는 Replica Set을 작성하는 방법을 알아보겠습니다. nano {pod yml 파일명} 명령어를 입력하여 pod 편집기로 들어옵니다. 작업을 하기 이전에 yml 파일의 편의성에 대해 잠깐 짚고 가자면, yml 파일 안에 여러 Pod들에 대한 내용을 전부 넣어 한번에 관리할 수 있습니다. Service.yml 의 경우에도 여러 Service들을 전부 넣어 한번에 관리할 수 있습니다. 다만 1000개 이상의 대량의 yml 내용들을 관리하게 된다면 비효율적이기 때문에 이렇게 대량의 경우에는 따로 분리하여 관리해야 합니다. Replica Set를 사용하여 기존의 Pod 를 업그레이드 시켜보겠습니다. 기존에 존재했던 webapp release0 버전을 삭제 후 진행하겠습니다. release0-5 버전의..
2023.06.27 -
[Kubernetes] Replica Sets (레플리카 세트)
지금까지 Pod 를 생성하고 Service 를 생성하여 운영 및 관리하는 방식을 사용해보았는데 실제로는 이렇게 직접 Pod를 생성하고 운영하지 않는다고 합니다. 실무에서 자주 사용하는 방식 중 하나가 Replica Set 중 하나를 사용해서 운영하는 것이라고 합니다. Pod 를 직접 생성하고 운영하게 되면 Pod는 생명 주기도 짧을 뿐만 아니라 Pod가 망가지면 해당 Pod를 되살리는 것은 불가능합니다. 만약, 새벽에 운영 중인 시스템의 Pod 가 고장이 나거나 특정 node가 고장이 나면 전체적인 Pod들은 동작이 되지 않아 클레임이 오게 될 확률이 높습니다. 따라서 Pod를 직접 배포하지 않습니다. 이를 보완하기 위해서 Replica Set로 배포합니다. Replica Set는 구성 요소를 하나 더 ..
2023.06.27 -
[Kubernetes] Pod Label 을 활용한 가동 중지 시간 없이 간단하게 배포하는 방법
minikube 가상 환경에서 배포하고 가동하는 작업은 어느 정도의 시간 소요가 걸립니다. 이유인즉슨 쿠버네티스는 실행할 때마다 기존의 Pod를 중지한 다음 새로운 Pod를 시작하고 그 속에 새로운 image를 불러옵니다. 이 시간 소요를 Label 활용해서 줄이거나 소요 없이 배포하는 방법에 대해서 알아보겠습니다. 우선 Pod에 Label을 추가해야합니다. 이 Label은 하나만 존재하는 것이 아니라 여러 개 존재할 수 있습니다. Pod yml 편집기로 들어가서 새로운 버전의 image 를 포함한 Pod를 추가해줍니다. --- 기호로 구분하여 추가하고 한 번에 관리할 수 있습니다. 첫 번째 Pod는 label 을 하나 추가하여 release: 0 을 추가해주었습니다. 두 번째 Pod는 이름을 webap..
2023.06.26 -
[Kubernetes] Service 작성
이전에 Service 는 어떠한 역할을 수행할 수 있고 어떤 것인지 간단하게 알아보고 작성 방법에 대해서도 간단하게 알아보았습니다. 이제 저만의 Service를 작성하고 연결해보는 과정을 조금 더 세밀하게 알아보겠습니다. nano webapp-service.yml 명령어를 입력하여 Service 를 작성할 yml 파일로 들어가줍니다. 파일명은 아무거나 상관없습니다. - kind: Service Service 용도의 yml 파일. - apiVersion: v1 지원 api 버전은 v1. - metadata: name: fleetman-webapp Service의 이름을 fleetman-webapp 으로 지정. - spec: ports: - name: http port: 80 # targetPort: 80 ..
2023.06.26 -
[Kubernetes] Service (서비스) 란?
쿠버네티스로 서비스들을 관리하는 기법 중 하나인 Pod 는 간단하게 사용되고 버려지는 용도로 주로 사용됩니다. 따라서 수명도 짧다고 볼 수 있습니다. 또한 외부 브라우저에서 Pod 에 접근할 수 없습니다. Service는 Pod 보다 더욱 긴 수명을 가지고 있고, Service 는 ip 와 함께 안정되고 고정된 포트를 가지고 있습니다. 이 Service를 Pod 처럼 단독적으로 사용할 수도 있지만 Pod에 부착해서 사용할 수도 있습니다. Service를 이용하게 되면 Pod를 사용했을 때 외부 브라우저에서 호출했을 당시 접속이 안되던 문제를 브라우저와 Pod 사이에 위치시킴으로서 연결될 수 있게끔 할 수 있습니다. Pod는 label 이라고 하는 구분값을 가지고 있을 수 있습니다. 일련의 키:값 한 쌍을..
2023.06.26 -
[Kubernetes] Pod 생성 및 실행
쿠버네티스로 서비스들을 관리하기 위한 Pod를 생성해보도록 하겠습니다. https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#pod-v1-core Kubernetes API Reference Docs kubernetes.io Pod Reference 주소에 들어가서 Pod에 관한 내용을 확인해봅시다. Pod에 대한 내용들이 나오는데 무슨 내용을 넣어야 될지 모르겠다면 위의 Example 버튼을 누르면 넣을 내용의 양식이 나오게 됩니다. 이 내용들을 yml파일에 넣어서 생성해주게 될 것입니다. 이제 git bash 에서 nano first-pod.yml 을 입력하여 Pod 설정 파일을 만들어주겠습니다. 저는 nano가 설치되어있어서 na..
2023.06.26