![Kubernetes微服务实战](https://wfqqreader-1252317822.image.myqcloud.com/cover/59/32436059/b_32436059.jpg)
上QQ阅读APP看书,第一时间看更新
4.6.1 部署Delinkcious微服务
每个Delinkcious微服务都在k8s子目录中的YAML清单中定义了一组Kubernetes资源,下面是link服务的k8s目录结构:
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/071-i.jpg?sign=1739501787-pyF68rq5boAox3DQA7SctKmfzfvuY7xr-0-7c4139a7bb42f1d1f0dd9bc2b7964657)
link_manager.yaml文件包含两个资源:Kubernetes部署和Kubernetes服务。Kubernetes部署内容如下:
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/071-2-i.jpg?sign=1739501787-6q9vI9foBPVFfguuLG9zj0tryoG9kkUV-0-a2914219adf79b43096a91cae007f2b0)
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/072-i.jpg?sign=1739501787-x7NUOBaohCaS6424KGYotBgvkCgSVc1C-0-5581fabed73defb17672b4c77ddc6d96)
Kubernetes服务内容如下:
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/072-2-i.jpg?sign=1739501787-Dvbck4fS1YMvZldFGCD6DOugp6NBfKt1-0-04ff22aa8f851798a30de2d10d13b04f)
db.yaml文件描述了link服务用来持久化状态的数据库。通过将k8s目录传递给kubectl apply,上面的YAML清单可以通过单个kubectl命令进行部署:
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/072-3-i.jpg?sign=1739501787-G3fjbj6I61MgHK7Rau4fi1qlaz63GQ0T-0-a0296b0ffca8c3f4bfb6d88990c8f073)
kubectl create和kubectl apply之间的主要区别在于,如果资源已经存在,kubectl create将返回错误。
使用kubectl命令行进行部署很不错,但是我们的目标是使部署过程自动化,下面让我们看看如何逐步实现这个目标。