十三 Istio:Istio项目实际案例——Online Boutique( 二 )


[root@k8scloude1 ~]# istioctl versionclient version: 1.14.3control plane version: 1.14.3data plane version: 1.14.3 (1 proxies)[root@k8scloude1 ~]# kubectl get nodesNAMESTATUSROLESAGEVERSIONk8scloude1Readycontrol-plane,master283dv1.21.9k8scloude2Ready<none>283dv1.21.9k8scloude3Ready<none>283dv1.21.9使用git克隆代码仓库:
#安装git[root@k8scloude1 ~]# yum -y install git#查看git版本[root@k8scloude1 ~]# git versiongit version 1.8.3.1#创建online-boutique目录,项目放在该目录下[root@k8scloude1 ~]# mkdir online-boutique[root@k8scloude1 ~]# cd online-boutique/[root@k8scloude1 online-boutique]# pwd/root/online-boutique#git克隆代码[root@k8scloude1 online-boutique]# git clone https://github.com/GoogleCloudPlatform/microservices-demo.git正克隆到 'microservices-demo'...remote: Enumerating objects: 8195, done.remote: Counting objects: 100% (332/332), done.remote: Compressing objects: 100% (167/167), done.remote: Total 8195 (delta 226), reused 241 (delta 161), pack-reused 7863接收对象中: 100% (8195/8195), 30.55 MiB | 154.00 KiB/s, done.处理 delta 中: 100% (5823/5823), done.[root@k8scloude1 online-boutique]# lsmicroservices-demo前往microservices-demo 目录,istio-manifests.yaml,kubernetes-manifests.yaml是主要的安装文件
[root@k8scloude1 online-boutique]# cd microservices-demo/[root@k8scloude1 microservices-demo]# lscloudbuild.yamlCODEOWNERSdocsistio-manifestskustomizepbreleaseSECURITY.mdsrcCODE_OF_CONDUCT.mdCONTRIBUTING.mdhackkubernetes-manifestsLICENSEREADME.mdrenovate.jsonskaffold.yamlterraform[root@k8scloude1 microservices-demo]# cd release/[root@k8scloude1 release]# lsistio-manifests.yamlkubernetes-manifests.yaml查看所需的镜像,可以在k8s集群的worker节点提前下载镜像
关于gcr.io镜像的下载方式可以查看博客《轻松下载k8s.gcr.io,gcr.io,quay.io镜像 》https://www.cnblogs.com/renshengdezheli/p/16814395.html
[root@k8scloude1 release]# lsistio-manifests.yamlkubernetes-manifests.yaml[root@k8scloude1 release]# vim kubernetes-manifests.yaml #可以看到安装此项目需要13个镜像,gcr.io表示是Google的镜像[root@k8scloude1 release]# grep image kubernetes-manifests.yamlimage: gcr.io/google-samples/microservices-demo/emailservice:v0.4.0image: gcr.io/google-samples/microservices-demo/checkoutservice:v0.4.0image: gcr.io/google-samples/microservices-demo/recommendationservice:v0.4.0image: gcr.io/google-samples/microservices-demo/frontend:v0.4.0image: gcr.io/google-samples/microservices-demo/paymentservice:v0.4.0image: gcr.io/google-samples/microservices-demo/productcatalogservice:v0.4.0image: gcr.io/google-samples/microservices-demo/cartservice:v0.4.0image: busybox:latestimage: gcr.io/google-samples/microservices-demo/loadgenerator:v0.4.0image: gcr.io/google-samples/microservices-demo/currencyservice:v0.4.0image: gcr.io/google-samples/microservices-demo/shippingservice:v0.4.0image: redis:alpineimage: gcr.io/google-samples/microservices-demo/adservice:v0.4.0[root@k8scloude1 release]# grep image kubernetes-manifests.yaml | uniq | wc -l13#在k8s集群的worker节点提前下载镜像,以k8scloude2为例#把gcr.io换为gcr.lank8s.cn,比如gcr.io/google-samples/microservices-demo/emailservice:v0.4.0换为gcr.lank8s.cn/google-samples/microservices-demo/emailservice:v0.4.0[root@k8scloude2 ~]# docker pull gcr.lank8s.cn/google-samples/microservices-demo/emailservice:v0.4.0 。。。。。。其他那些镜像就按照此方法下载...... 。。。。。。[root@k8scloude2 ~]# docker pull gcr.lank8s.cn/google-samples/microservices-demo/adservice:v0.4.0#镜像下载之后,使用sed把kubernetes-manifests.yaml文件中的gcr.io修改为gcr.lank8s.cn[root@k8scloude1 release]# sed -i 's/gcr.io/gcr.lank8s.cn/' kubernetes-manifests.yaml#此时kubernetes-manifests.yaml文件中的镜像就全被修改了[root@k8scloude1 release]# grep image kubernetes-manifests.yamlimage: gcr.lank8s.cn/google-samples/microservices-demo/emailservice:v0.4.0image: gcr.lank8s.cn/google-samples/microservices-demo/checkoutservice:v0.4.0image: gcr.lank8s.cn/google-samples/microservices-demo/recommendationservice:v0.4.0image: gcr.lank8s.cn/google-samples/microservices-demo/frontend:v0.4.0image: gcr.lank8s.cn/google-samples/microservices-demo/paymentservice:v0.4.0image: gcr.lank8s.cn/google-samples/microservices-demo/productcatalogservice:v0.4.0image: gcr.lank8s.cn/google-samples/microservices-demo/cartservice:v0.4.0image: busybox:latestimage: gcr.lank8s.cn/google-samples/microservices-demo/loadgenerator:v0.4.0image: gcr.lank8s.cn/google-samples/microservices-demo/currencyservice:v0.4.0image: gcr.lank8s.cn/google-samples/microservices-demo/shippingservice:v0.4.0image: redis:alpineimage: gcr.lank8s.cn/google-samples/microservices-demo/adservice:v0.4.0#istio-manifests.yaml 文件没有镜像[root@k8scloude1 release]# vim istio-manifests.yaml[root@k8scloude1 release]# grep image istio-manifests.yaml

经验总结扩展阅读