- Kubernetes微服务实战
- (印)吉吉·赛凡
- 215字
- 2020-08-27 06:09:11
4.6.1 部署Delinkcious微服务
每个Delinkcious微服务都在k8s子目录中的YAML清单中定义了一组Kubernetes资源,下面是link服务的k8s目录结构:
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/071-i.jpg?sign=1739185191-MO4hKA6jI8q2xrfMYWVaeOlVP3UrOxYP-0-3aed22b542414564bc298cc7668b3ab6)
link_manager.yaml文件包含两个资源:Kubernetes部署和Kubernetes服务。Kubernetes部署内容如下:
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/071-2-i.jpg?sign=1739185191-LyGY0meV5Ut8rTf2nTOsv7g7OimdfTRX-0-24197dce117f5d5e4ff1ecd9deec8547)
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/072-i.jpg?sign=1739185191-BrbPLdMZhMdFuE9DrnirZObeM0tAtwmE-0-ee69641b44e4b0128af3444139064425)
Kubernetes服务内容如下:
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/072-2-i.jpg?sign=1739185191-rjbKWYxHj8ppvEB8TIa6KB8lQPZMSW8h-0-376c7fb0310518d5156de7203813dc6a)
db.yaml文件描述了link服务用来持久化状态的数据库。通过将k8s目录传递给kubectl apply,上面的YAML清单可以通过单个kubectl命令进行部署:
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/072-3-i.jpg?sign=1739185191-ZlNoW1MX01FUG4MlahEXM35qLCSDoA9q-0-a05ad04b5a4034de786795beb49f94e4)
kubectl create和kubectl apply之间的主要区别在于,如果资源已经存在,kubectl create将返回错误。
使用kubectl命令行进行部署很不错,但是我们的目标是使部署过程自动化,下面让我们看看如何逐步实现这个目标。