LoginSignup
0
0

More than 1 year has passed since last update.

vSphere with Tanzu で Edge サイズが小さいと Pod がデプロイできない

Posted at

vSphere with Tanzu のスーパーバイザークラスタを構成し(クラスタネットワークには NSX-T を使用)、その後 yaml から TKC(Tanzu kubernetes)をデプロイしようとしたところ、"作成中" ステータスでスタックしてしまう状況に陥った。
おかしいな... と思い、切り分けのために何の変哲もない nginx pod を TKGs にデプロイしてみたところ、同じく Pending でスタックする状況に。

kubectl describe でログを見てみると、

[root@hoge ~]# kubectl describe po nginx-pod-7fb7fd49b4-cj9qv
Name:           nginx-pod-7fb7fd49b4-cj9qv
Namespace:      lab-ns-001
Priority:       0
Node:           esxi02-ifrit.myhomelab.test/
Labels:         app=nginx
                pod-template-hash=7fb7fd49b4
Annotations:    kubernetes.io/psp: wcp-default-psp
                vmware-system-ephemeral-disk-uuid: 6000C29b-c785-ec2d-c9cc-337908f6fb50
                vmware-system-image-references: {"nginx":"nginx-3a1d01bf5d03a391d168f63f6a3005ff4d17ca65-v35009"}
                vmware-system-vm-moid: vm-5033:e85e361f-1be2-4334-bde3-df7a671ee2f0
                vmware-system-vm-uuid: 5030da1d-5e4c-1ba1-72c6-514ffe22746b
Status:         Pending
IP:
IPs:            <none>
Controlled By:  ReplicaSet/nginx-pod-7fb7fd49b4
Containers:
  nginx:
    Image:        nginx:alpine
    Port:         80/TCP
    Host Port:    0/TCP
    Environment:  <none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-v9qqm (ro)
Conditions:
  Type           Status
  PodScheduled   True
Volumes:
  kube-api-access-v9qqm:
    Type:                    Projected (a volume that contains injected data from multiple sources)
    TokenExpirationSeconds:  3607
    ConfigMapName:           kube-root-ca.crt
    ConfigMapOptional:       <nil>
    DownwardAPI:             true
QoS Class:                   BestEffort
Node-Selectors:              <none>
Tolerations:                 node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
                             node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
  Type     Reason                    Age                From               Message
  ----     ------                    ----               ----               -------
  Normal   Scheduled                 77s                default-scheduler  Successfully assigned lab-ns-001/nginx-pod-7fb7fd49b4-cj9qv to esxi02-ifrit.myhomelab.test
  Normal   Image                     77s                image-controller   Image nginx-3a1d01bf5d03a391d168f63f6a3005ff4d17ca65-v35009 bound successfully
  Normal   Pulling                   67s                kubelet            Waiting for Image lab-ns-001/nginx-3a1d01bf5d03a391d168f63f6a3005ff4d17ca65-v35009
  Normal   Pulled                    15s                kubelet            Image lab-ns-001/nginx-3a1d01bf5d03a391d168f63f6a3005ff4d17ca65-v35009 is ready
  Warning  FailedRealizeNSXResource  5s (x11 over 77s)  nsx-container-ncp  Project d0196564-268e-402a-ba50-d738e432c7be is not realized: PROJECT_TIER1_NOT_REALIZED

Image pull はできてるっぽいので NW に問題はなさそうだが、やはり気になるのは Events

Warning  FailedRealizeNSXResource  5s (x11 over 77s)  nsx-container-ncp  Project d0196564-268e-402a-ba50-d738e432c7be is not realized: PROJECT_TIER1_NOT_REALIZED

の部分。PROJECT_TIER1_NOT_REALIZED というエラーはググっても全く引っかからなかったが、FailedRealizeNSXResource とか怒られているので、リソース周りの可能性は高そう。

解決策

いろいろとイジったところ、NSX Edge(= NSX-T Manager から作成する Edge VM)のサイズを Large にしたところ、Pod も TKC も正常にデプロイできるようになった。
#それまでは Medium サイズだった

今回は vSphere 7.0U3 + NSX-T 3.2.1 の組み合わせであったが、あとあと TKGs with NSX-T の最小要件を見てみたところ、確かに Edge については Large と記載が...
Edge の Large というとそれなりにデカいので、自宅ラボとかで遊ぶには少しハードルが高いなあ、、と思った次第。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0