1.PV생성 apiVersion: v1 kind: PersistentVolume metadata: name: pv-local labels: type: local spec: storageClassName: manual capacity: storage: 5Gi accessModes: - ReadWriteOnce hostPath: path: "/mnt/data" 2.PVC생성 apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc-local-testi namespace: operations spec: storageClassName: manual accessModes: - ReadWriteOnce resources: requests: storage: 1G..
이 에러의 경우 쿠버네티스에서 Harbor를 통해 이미지를 pull할 때 Registry에 접근할 수 있는 권한이 없어서 발생한다. 이 문제해결을 위해서 secret을 생성한다 공식문서 참조: https://kubernetes.io/docs/concepts/configuration/secret/ Secrets A Secret is an object that contains a small amount of sensitive data such as a password, a token, or a key. Such information might otherwise be put in a Pod specification or in a container image. Using a Secret means that yo..
본적으로 클러스터는 보안상의 이유로 control-plane 노드(master 역할노드)에서 포드를 스케쥴링 할수 없기 때문에, 아래 명령어를 통하여 conrol-plane 노드에서 pod를 생성할 수 있게 하기 kubectl taint nodes --all node-role.kubernetes.io/master-
unset KUBECONFIG export KUBECONFIG=/etc/kubernetes/admin.conf mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config
제목과 같은 에러를 해결한다. 쿠버네티스 document에 따르면 k8s는 TLS를 통한 인증을 위해서 PKI 인증서가 필요하다고 하다. 생성방법: kubeadm으로 쿠버네티스를 설치한다면, 클러스터에 필요한 인증서는 자동으로 생성된다. Location: k8s를 kubeadm으로 설치했다면 인증서는 /etc/kubernetes/pki에 저장된다 해당 문제의 원인 root권한이 아닌 일반user로 셋팅중인데, write private key 파일을 /etc/kubernetes/pki/ca.key 파일에 write할 수 없다는 것을 봐서 etc 디렉토리에 대한 권한 문제인 것 같다. vim /etc/kubernetes/pki/ca.key #파일을 생성 후 저장 chmod 777 /etc/kubernetes..
root가 아닌 계정(가칭 user01)으로 vbox에 minikube 서버를 올려서 클러스터를 생성하고 kubeadm을 실행했는데, kubeadm과 kubelet을 셋팅할 때, sudo 권한으로 설정으로 해버려서 user01의 vbox기반 minikube가 root의 kubeadm과 kubelet연결된는 복잡한 상황이 발생했다. kubeadm을 우선 reset하고 다음 명령어를써서 user01에 다시 kubeadm init을 했다. kubeadm init --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=all 그랬더니 다음과 같은 에러가 나서 해결해야 한다. error execution phase certs/ca: failure while sav..
Network Plugin이란 무엇인가 Plugin 이란 컴퓨터에 추가 프로그램을 설치하여 특정 기능을 수행할 수 있도록 하는 소프트웨어이다. 쿠버네티스의Netwrok Plugin이란 비슷한 맥락으로, 쿠버네티스에 추가적인 네트워크 플러그인을 설치하여, 네트워크 관련 기능을들을 수행한다. Network Plugin 필수사항 이 네트워크 플러그인을 이용하기 위해서는 NetworkPlugin Interface: 파드 네트워킹을 구성하고, 정리함 kube-proxy 를 위한 지원: iptables을 가능하게 해주는 container traffic이 필요함 Netwrok Plugin의 종류 CNI 플러그인: 컨테이너 네트워크 인터페이스(CNI)를 준수 Kubenet 플러그인: Bridge와 host-local ..
저번에 썼던 블로그 포스트 https://jmholly.tistory.com/entry/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EB%84%A4%ED%81%AC%EC%9B%8C%ED%81%AC-%ED%94%8C%EB%9F%AC%EA%B7%B8%EC%9D%B8%EA%B3%BC-CNI [쿠버네티스] 네크워크 플러그인과 CNI Network Plugin이란 무엇인가 Plugin 이란 컴퓨터에 추가 프로그램을 설치하여 특정 기능을 수행할 수 있도록 하는 소프트웨어이다. 쿠버네티스의Netwrok Plugin이란 비슷한 맥락으로, 쿠버네티스에 추가 jmholly.tistory.com 참조해서.. cd /etc/cni/net.d vim 10-flannel.conflist {..
Alert!: Unable to connect to remote host. lynx: Can't access startfile minikube로 NodePort서비스를 만들어 외부접속을 시도했다 minikube service nginx-deployment-66b6c48dd5-fdt4h 다음과 같은 에러가 났다. |-----------|-----------------------------------|-------------|-----------------------------| | NAMESPACE | NAME | TARGET PORT | URL | |-----------|-----------------------------------|-------------|-------------------------..