2.2. OVN-Kubernetes 프로젝트의 모든 리소스 나열
OVN-Kubernetes 프로젝트에서 실행되는 리소스와 컨테이너를 찾는 것은 OVN-Kubernetes 네트워킹 구현을 이해하는 데 중요합니다.
사전 요구 사항
-
cluster-admin역할의 사용자로 클러스터에 액세스할 수 있어야 합니다. -
OpenShift CLI(
oc)가 설치되어 있습니다.
프로세스
다음 명령을 실행하여 OVN-Kubernetes 프로젝트의 모든 리소스, 엔드포인트 및
ConfigMap을가져옵니다.$ oc get all,ep,cm -n openshift-ovn-kubernetes출력 예
Warning: apps.openshift.io/v1 DeploymentConfig is deprecated in v4.14+, unavailable in v4.10000+ NAME READY STATUS RESTARTS AGE pod/ovnkube-control-plane-65c6f55656-6d55h 2/2 Running 0 114m pod/ovnkube-control-plane-65c6f55656-fd7vw 2/2 Running 2 (104m ago) 114m pod/ovnkube-node-bcvts 8/8 Running 0 113m pod/ovnkube-node-drgvv 8/8 Running 0 113m pod/ovnkube-node-f2pxt 8/8 Running 0 113m pod/ovnkube-node-frqsb 8/8 Running 0 105m pod/ovnkube-node-lbxkk 8/8 Running 0 105m pod/ovnkube-node-tt7bx 8/8 Running 1 (102m ago) 105m NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/ovn-kubernetes-control-plane ClusterIP None <none> 9108/TCP 114m service/ovn-kubernetes-node ClusterIP None <none> 9103/TCP,9105/TCP 114m NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE daemonset.apps/ovnkube-node 6 6 6 6 6 beta.kubernetes.io/os=linux 114m NAME READY UP-TO-DATE AVAILABLE AGE deployment.apps/ovnkube-control-plane 3/3 3 3 114m NAME DESIRED CURRENT READY AGE replicaset.apps/ovnkube-control-plane-65c6f55656 3 3 3 114m NAME ENDPOINTS AGE endpoints/ovn-kubernetes-control-plane 10.0.0.3:9108,10.0.0.4:9108,10.0.0.5:9108 114m endpoints/ovn-kubernetes-node 10.0.0.3:9105,10.0.0.4:9105,10.0.0.5:9105 + 9 more... 114m NAME DATA AGE configmap/control-plane-status 1 113m configmap/kube-root-ca.crt 1 114m configmap/openshift-service-ca.crt 1 114m configmap/ovn-ca 1 114m configmap/ovnkube-config 1 114m configmap/signer-ca 1 114m클러스터의 각 노드에는
ovnkube-node포드가 하나씩 있습니다.ovnkube-config구성 맵에는 OpenShift Container Platform OVN-Kubernetes 구성이 있습니다.다음 명령을 실행하여
ovnkube-node포드의 모든 컨테이너를 나열합니다.$ oc get pods ovnkube-node-bcvts -o jsonpath='{.spec.containers[*].name}' -n openshift-ovn-kubernetes예상 출력
ovn-controller ovn-acl-logging kube-rbac-proxy-node kube-rbac-proxy-ovn-metrics northd nbdb sbdb ovnkube-controllerovnkube-node포드는 여러 개의 컨테이너로 구성됩니다. 북쪽 방향 데이터베이스(nbdb컨테이너), 남쪽 방향 데이터베이스(sbdb컨테이너), 북쪽 데몬(northd컨테이너),ovn-controller및ovnkube-controller컨테이너를 호스팅하는 역할을 합니다.ovnkube-controller컨테이너는 포드, 송신 IP, 네임스페이스, 서비스, 엔드포인트, 송신 방화벽, 네트워크 정책과 같은 API 객체를 감시합니다. 또한 해당 노드에 사용 가능한 서브넷 풀에서 Pod IP를 할당하는 역할도 합니다.다음 명령을 실행하여
ovnkube-control-plane포드의 모든 컨테이너를 나열합니다.$ oc get pods ovnkube-control-plane-65c6f55656-6d55h -o jsonpath='{.spec.containers[*].name}' -n openshift-ovn-kubernetes예상 출력
kube-rbac-proxy ovnkube-cluster-managerovnkube-control-plane포드에는 각 OpenShift Container Platform 노드에 상주하는 컨테이너(ovnkube-cluster-manager)가 있습니다.ovnkube-cluster-manager컨테이너는 클러스터의 각 노드에 Pod 서브넷, 전송 스위치 서브넷 IP, 조인 스위치 서브넷 IP를 할당합니다.kube-rbac-proxy컨테이너는ovnkube-cluster-manager컨테이너의 메트릭을 모니터링합니다.