为了拉取镜像,搭建了阿里云镜像仓库,教程见:K8S中基于NFS-Subdir-External-Provisioner存储组件实现的StorageClass-CSDN博客
但是bookinfo的ratings和productpage无法运行,部署后显示crashLoopBackOff
[root@master ~]# kubectl get pods -owide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
details-v1-64bcb758dc-dbh7f 2/2 Running 0 12m 10.244.166.168 node1 <none> <none>
nfs-provisioner-88884f85b-t9tqf 2/2 Running 1 (88m ago) 88m 10.244.166.162 node1 <none> <none>
productpage-v1-78787b7cdd-9qlb4 1/2 CrashLoopBackOff 7 (62s ago) 12m 10.244.166.166 node1 <none> <none>
ratings-v1-86bdf4c6c-5wlh5 1/2 CrashLoopBackOff 6 (3m20s ago) 9m14s 10.244.104.43 node2 <none> <none>
reviews-v1-867dd8b5b9-4rrjm 2/2 Running 0 12m 10.244.104.41 node2 <none> <none>
reviews-v2-b4c897c97-2gwtg 2/2 Running 0 12m 10.244.166.167 node1 <none> <none>
reviews-v3-76f7b975d5-8nlpt 2/2 Running 0 12m 10.244.104.42 node2 <none> <none>
由于所有的镜像(review三个、details、ratings、productpage)都是1.19.1,后尝试重新下载镜像也不行。错误日志如下:
Events:Type Reason Age From Message---- ------ ---- ---- -------Normal Scheduled 38s default-scheduler Successfully assigned default/ratings-v1-86bdf4c6c-n66k5 to node2Normal Pulled 37s kubelet Container image "docker.io/istio/proxyv2:1.23.2" already present on machineNormal Created 37s kubelet Created container istio-initNormal Started 37s kubelet Started container istio-initNormal Pulled 36s kubelet Container image "docker.io/istio/proxyv2:1.23.2" already present on machineNormal Created 36s kubelet Created container istio-proxyNormal Started 36s kubelet Started container istio-proxyNormal Pulled 19s (x3 over 36s) kubelet Container image "docker.io/istio/examples-bookinfo-ratings-v1:1.19.1" already present on machineNormal Created 19s (x3 over 36s) kubelet Created container ratingsNormal Started 19s (x3 over 36s) kubelet Started container ratingsWarning BackOff 4s (x5 over 34s) kubelet Back-off restarting failed container ratings in pod ratings-v1-86bdf4c6c-n66k5_default(c623299f-a435-4420-93e4-ed31eafc9d73)
最后尝试使用了不匹配的ratings和productPage镜像版本,反而可以正常运行:
docker.io/istio/examples-bookinfo-productpage-v1:1.16.2
docker.io/istio/examples-bookinfo-ratings-v1:1.15.0
修改istio/samples/bookinfo/plateform/kube路径下的bookinfo.yaml文件,将里面的deployment的版本改为对应的镜像版本,从而成功部署。
[root@master ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
details-v1-64bcb758dc-6tvd2 2/2 Running 0 11m
nfs-provisioner-88884f85b-t9tqf 2/2 Running 2 (8m10s ago) 108m
productpage-v1-b54dfd8d8-4wp6c 2/2 Running 0 11m
ratings-v1-75c99d5c76-7h6hv 2/2 Running 0 11m
reviews-v1-867dd8b5b9-tldbx 2/2 Running 0 11m
reviews-v2-b4c897c97-v64ng 2/2 Running 0 11m
reviews-v3-76f7b975d5-58mjl 2/2 Running 0 11m