이쿠의 슬기로운 개발생활

함께 성장하기 위한 보안 개발자 EverNote 내용 공유

반응형

Kubernetes 131

Kubernetes Pod Container의 Application PID를 Host에서 확인

Kubernetes Pod 내부 Container의 Application PID를 Host에서 확인    목적 Pod의 Pid는 Host(Node server)와 공유하고 있음.그래서 pod 안의 Container에서 실행되는 Application의 정보도Host의 /proc 정보로 확인해보면  hosts에서 Pid 를 확인할 수 있음 아래에서 진행되는 Test는 Pod의 pid정보는 host와 공유되고 있다는 것을 확인하기 위한 test. Host에서 pid를 검색해서 해당 pid가 실행되는 Container를 찾아가는 과정을 정리함.   Test 환경 Test 에 사용한 yaml파일 예제apiVersion: apps/v1kind: Deploymentmetadata:  name: iksoon-deplo..

Kubernetes kube-proxy IPVS Mode 설정

Kubernetes kube-proxy IPVS Mode 설정[kubernetes kube-proxy 관련 글 목록]Kubernetes kube-proxy Mode 분석Kubernetes kube-proxy IPVS Mode 설정Kubernetes NodePort Networking 분석 (kube-proxy : iptable mode)Kubernetes NodePort Networking 분석 (kube-proxy : iptable mode)- New versionkubernetes LoadBalancer Networking 분석 (kube-proxy : iptable mode)kubernetes NodePort Networking 분석 (kube-proxy : IPVS mode) 목적 kube-pro..

오류 : oci runtime error: exec failed: container_linux.go:235: starting container process caused "exec: \"/bin/bash\": stat /bin/bash: no such file or directory"

오류 : oci runtime error: exec failed: container_linux.go:235: starting container process caused "exec: \"/bin/bash\": stat /bin/bash: no such file or directory" 상황kubernetes cluster에 배포 되어있는 kube-apiserver pod에 접속하기 위해kubectl exec -it [pod name] -n kube-system -- /bin/bash를 했는데 오류가 발생.  [오류 메세지]rpc error: code = 2 desc = oci runtime error: exec failed: container_linux.go:235: starting container p..

오류 : inotify_add_watch /sys/fs/cgroup/cpuacct,cpu: no such file or directory

오류 : inotify_add_watch /sys/fs/cgroup/cpuacct,cpu: no such file or directory 상황cAdvisor git에 있는 kubernetes deploy인 아래의 링크를 참고해서 https://github.com/google/cadvisor/blob/master/deploy/kubernetes/base/daemonset.yamlkubernetes cluster에 cAdvisor Daemonset 를 배포했는데 다음과 같은 오류가 발생함. [오류 메세지]Could not configure a source for OOM detection, disabling OOM events: open /dev/kmsg: no such file or directoryFail..

Pod Evicted : The node was low on resource: ephemeral-storage

Pod Evicted : The node was low on resource: ephemeral-storage 상황nginx pod에 과부하는 주던 중 Evicted 상태의 Pod가 다수 생성되면서계속 새로운 Pod가 재생성되고 있음.Evicted Pod는 사라지지 않고 계속 있음. [오류 메세지]The node was low on resource: ephemeral-storage. Container nginx was using 28Ki, which exceeds its request of 0.  원인worker node 가 1개인 cluster에서 test를 하고있었는데network 트래픽이 과부하되면서 pod의 임시 volume인 ephemeral volumes의 용량이 부족해지면서pod가 강제 종료..

x509: certificate relies on legacy Common Name field, use SANs or temporarily enable Common Name matching with GODEBUG=x509ignoreCN=0

x509: certificate relies on legacy Common Name field, use SANs or temporarily enable Common Name matching with GODEBUG=x509ignoreCN=0 상황Kubernetes 1.18.3 version 에서는 정상적으로 동작이 됐었는데Kubernetes 1.19.2 version으로 업데이트 하고 Portieris 0.8.2 설치 후 적용하니 Pod 배포 시 아래와 같이 오류가 발생. [오류 메세지]Error from server (InternalError): error when creating "1_deployment.yaml": Internal error occurred: failed calling webhook ..

Unable to update cni config: no networks found in /etc/cni/net.d 에러

Unable to update cni config: no networks found in /etc/cni/net.d 에러 상황firewalld는 stop하지 않고 일일히 port를 열었고selinux는 enabled 설정된 상태에서 kubernetes 설치 중master node 에서 kubectl init 명령 시 오류 발생  [오류 메세지][etcd] Creating static Pod manifest for local etcd in "/etc/kubernetes/manifests"[wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory "/etc/kubernetes/man..

A copy of your changes has been stored to "/tmp/kubectl-edit~~

A copy of your changes has been stored to "/tmp/kubectl-edit~~ 상황Helm차트로 배포된 Deployment가 실행중인 상태에서kubectl edit 명령으로 Deployment 설정 변경을 시도.새로운 volume과 configMap을 추가한 후 :wq 명령으로 저장하고 나왔는데edit 편집내용이 저장되지 않고 오류가 발생함. [오류 메세지]error: deployments.apps "unbound" is invalidA copy of your changes has been stored to "/tmp/kubectl-edit-4ssjm.yaml"error: Edit cancelled, no valid changes were saved. 원인Kubernet..

Cannot enforce AppArmor: AppArmor is not enabled on the host

Cannot enforce AppArmor: AppArmor is not enabled on the host 상황Pod Security Policy 를 활성화 한 후 Flannel Daemonset 의 Pod 를 재생성 했을 시Pod의 Status 가 Init:Blocked 상태가 되고describe 명령으로 확인해보면Pod 가 Pending 상태로 되어있고원인은 Cannot enforce AppArmor: AppArmor is not enabled on the host로 되어있음 원인Annotations 항목을 보면container.apparmor.security.beta.kubernetes.io/install-cni 항목이 있는데해당 관련 오류 이유는host에서 apparmor 를 사용하고 있지 않아..

Pod안에 CentOS(application이 없는 OS 이미지) Container 실행하기

Pod안에 CentOS(application이 없는 OS 이미지) Container 실행하기 상황kubernetes pod 생성 시 containter image를 centos or ubuntu 와 같은 application이 아닌 os로 설정했을 시container 상태가 Running 으로 되지 않고 CrashLoopBackOff 상태가 되는 현상 원인container 생성 시 이미지를 통해 어떠한 application 이 실행 중인 상태이여야정상적으로 running 상태가 되는데OS image의 경우는 어떠한 application도 실행되고 있지 않음으로container 가 생성되고 바로 종료되는 것을 반복하게 되는것 image = CentOS, bash, ubuntu 등등 application이 ..

반응형