쿠버네티스
-
ALB Ingress 로 subdomain 분기 설정NAVER Cloud 2021. 12. 20. 18:45
ALB를 사용해서 abc.com/path1, /path2 와 같은 분기도 많이 처리하지만, subdomain 분기도 사용할 수 있기에 테스트를 진행해 보았다. 전체적으로 아래와 같은 구성이고, alb annotation을 사용해서 더 다양한 방식으로 분기할 수 있다. 1. alb ingress controller 설치 alb ingress 를 사용하기 위해서는 네이버클라우드의 ALB 를 생성할 수 있는 alb ingress controller 를 설치해야 한다. 네이버클라우드 가이드 문서에 나와있는대로 설치한다. (https://guide.ncloud-docs.com/docs/k8s-k8suse-albingress) kubectl --kubeconfig=$KUBE_CONFIG apply -f https:..
-
jenkins kubernetes plugin 설치하고 빌드 테스트 해보기NAVER Cloud 2021. 10. 22. 13:54
앞서 네이버클라우드 kubernetes 에 jenkins를 구성해보았다. 이제는 kubernetes 에 빌드환경을 배포해 볼 차례! 2021.10.22 - [Naver Cloud Platform] - jenkins를 kubernetes 에 구성하기 jenkins를 kubernetes 에 구성하기 대부분의 CSP에서 ci/cd 관련한 상품들을 제공하고 있지만, 여전히 jenkins 사용자도 많은 것 같다. 그래서 jenkins 도 kubernetes 에 pod로 구성하고, 빌드도 네이버클라우드의 kubernetes 서비스(nks)를 통해 cleanupthedesk.tistory.com 1. kubernetes plugin 설치 먼저 jenkins에서 빌드환경을 배포할 kubernetes 를 접속할 수 있도..
-
jenkins를 kubernetes 에 구성하기NAVER Cloud 2021. 10. 22. 11:21
대부분의 CSP에서 ci/cd 관련한 상품들을 제공하고 있지만, 여전히 jenkins 사용자도 많은 것 같다. 그래서 jenkins 도 kubernetes 에 pod로 구성하고, 빌드도 네이버클라우드의 kubernetes 서비스(nks)를 통해 진행하는 테스트를 해보았다. 1. jenkins 배포 아래 mainfest 를 참고하여 jenkins deployment 와 service를 생성해준다. 나는 jenkins 에서 nks를 연계하여 사용할 수 있고, 빌드가 되는 정도만 확인하는 수준이라 jenkins deployment에 별도의 pv 설정을 하지 않았지만 운영환경에서는 pv 사용이 필요할 것으로 생각된다. # jenkins_deployment.yaml apiVersion: apps/v1 kind: ..
-
kubernetes manifest 분석 도구 kube-score 사용법HOWTO 2021. 10. 8. 19:23
kubernetes 는 모든 리소스를 manifest 를 통해 관리하기 때문에 manifest 작성이 중요하다. 모든 옵션을 기억하기도 어렵고 나같은 경우는 주로 테스트로 기능 검증만 해보기 때문에 검색을 통해 나오는 예제 파일을 수정해서 사용하지만 운영환경이라면 애플리케이션을 보다 안전하게 만들기 위해 manifest 작성에 더욱 심혈(?)을 기울여야 할 것이다. 이런 경우 kube-score 를 사용하면 내가 작성한 manifest 에서 개선할 수 있는 부분이 무엇인지 권장사항을 제시해준다. 1. kubectl krew 설치 kube-socre 를 설치하는 방법은 다양하지만, 나는 kubectl 의 플러그인을 관리하는 kubectl krew 를 먼저 설치한 후 krew 를 통해 score를 설치했다...
-
ECR 이미지를 NCP 컨테이너 레지스트리(Container Registry)로 복사하기NAVER Cloud 2021. 10. 6. 17:42
다양한 CSP 에서 각각의 Kubernetes 서비스를 제공하고 있기 때문에, kubernetes 사용자의 경우 일반 VM 보다는 타 CSP 로 이관하는 것이 수월할 수 있다. kubernetes 의 경우 stateless 하게 사용하는 경우가 많기 때문에 kubernetes 이관 시 데이터 복제만큼 중요한 것이 컨테이너 이미지 복제라고 생각된다. 로컬 pc나 서버에 모든 이미지를 pull 한 다음 새로운 registry 로 push 하는 방법도 있지만, skopeo 라는 툴을 사용하면 임시 저장공간 없이도 container image를 새로운 registry 로 복제할 수 있고, inspect 기능을 통해 메타데이터나 레이어도 조회할 수 있다. skopeo에 대한 상세 설명은 아래 링크 참고 https..
-
Kubernetes CrashLoopBackOff exit0 발생할 때HOWTO 2020. 1. 31. 18:04
kubernetes 에서 pods 를 배포했는데 바로 CrashLoopBackOff 상태로 빠질때가 있다. docker 로 기동시켰을때는 잘 뜨는 컨테이너가 kubernetes 에서 배포하면 정상적으로 기동되지 않을 경우에는 아래와 같이 pods 상태를 확인 후 exit code 를 확인해야 한다. Last State 의 exit code 가 0 인 경우는 컨테이너가 기동되지 마자 실행시킬 프로세스가 없어서 바로 종료되는 경우이다. 이럴떄는 아래와 같이 sleep 커맨드를 추가해서 컨테이너가 기동되지 마자 중지되지 않도록 설정하면 Running 상태의 pods 를 확인할 수 있다. command: ['sh', '-c', 'echo The app is running! && sleep 3600']
-
Kubernetes 에서 Wordpress + MySQL 구성하기 (Persistent Volume)HOWTO 2019. 1. 9. 09:25
K8S Cluster 환경은 사전 구성이 되어 있어야 하고 2018/11/30 - [Naver Cloud Platform] - 네이버 클라우드에 Kubernetes (k8s) cluster 구성하기 (Calico)Pods 에서 Persistent volume 을 사용하기 위해 각 Node 마다 50GB 볼륨을 할당하고 마운트 한다. (예제에서는 /data001 로 마운트 함) 아래 구성에서 Kubernetes 환경은 네이버클라우드플랫폼 싱가폴 리전에서 VM 으로 구성했으며, CNI 는 Calico 로 구성하였다. 1. PV (Persistent Volume) 생성 PV 는 K8S 관리자가 설정하는 클러스터의 저장소로 사용자가 PVC 를 생성하기 위해 설정해 두는 물리적인 공간이라고 볼 수 있다. 지금 구..
-
네이버 클라우드에 Kubernetes (k8s) cluster 구성하기 (Calico)NAVER Cloud 2018. 11. 30. 16:20
Kubernetes 관련 다양한 매니지드 형태의 상품들을 클라우드 서비스에서 제공하고 있으나 VM 을 활용하여 Kubernetes Cluster 환경을 구성해 보았다. CNI 는 Calico 를 사용한다. 1. 네이버클라우드플랫폼에서 VM 생성하기 총 4대의 서버를 생성한다. 1대는 cluster 설치 playbook 을 수행할 Ansible 서버이고 나머지 3대는 K8S master, node 서버로 구성한다. ansible 수행은 서버가 아니라 PC 에서도 가능하다. 1-1) ACG (Security Group) 설정각 서버 별 용도에 맞게 ACG 룰을 설정한다. Server Protocol Port 용도 Ansible TCP 22 SSH Master Node TCP 22 SSH TCP 6443 Ku..