kubernetes
-
kubernetes 워크로드 구성 검사 실행 - Polaris by FairwindsHOWTO 2021. 10. 8. 22:53
kube-score 가 kubernetes 에 배포하기 전 manifest 의 검증을 위한 도구였다면, Polaris 는 이미 배포된 워크로드 또는 신규로 배포하게 되는 워크로드가 보안, 신뢰성, 네트워크, 효율성등에 어느정도 적절하게 구성되었는지 검사할 수 있는 도구이다. Polaris 는 오픈소스로 사용할 수 있는데, 좀 더 다양한 기능과 대시보드, 기술 지원이 필요한 경우 Polaris upgrade 버전인 Fairwinds Insights 로 제공하고 있다. # dashboard 설치 kubectl apply -f https://github.com/fairwindsops/polaris/releases/latest/download/dashboard.yaml kubectl port-forward --..
-
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..
-
NKS (Ncloud Kubernetes Service) 에 istio 설치하기NAVER Cloud 2021. 8. 12. 13:49
istio 를 설치할 수 있는 방법은 여러가지가 있는데, 이번에는 istioctl 을 활용해서 설치해보았다. 1. 먼저 istioctl 을 istioctl 명령을 수행할 서버에 설치한다. istioctl manifest generate --set profile=default > kctl2-default.yaml (나는 kubectl 이 설치된 서버에 함께 설치했다.) mkdir /istio cd /istio curl -L https://git.io/getLatestIstio | sh - cd istio-* sudo mv -v bin/istioctl /usr/local/bin/ 최신 버전으로 설치할때는 getLatestIstio 를 사용하면 되지만, 특정 버전을 설치하고 싶으면 아래 링크로 가서 원하는 버..
-
Kubernetes 에서 Cert-manager로 letsencrypt 인증서 발급/설정NAVER Cloud 2021. 7. 22. 11:58
kubernetes 에 구동하는 웹에서도 https 설정이 필요하고, 무료 인증서를 사용할 경우 letsencrypt 에서 인증서를 발급받고 웹에 적용할 수 있다. 네이버클라우드에서 테스트 해봤고, nginx ingress 를 사용했다. (k8s cluster 는 구성이 되어 있어야 하고, nginx ingress 를 설치하면 를 생성하면, ingress 와 매칭된 NLB는 자동 생성된다.) 1. NKS 에 ingress cotroller 설치 kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.47.0/deploy/static/provider/cloud/deploy.yaml namespace/i..
-
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..