一、Deployment、StatefulSet、DaemonSet三者的区别:
### --- deployment
~~~ # Deployment:无状态的应用部署:不产生任何的缓存数据,随时的去重启发布回滚等操作,
~~~ 部署在哪个节点都是没有问题。
~~~ 在生产环境中都是使用Deployment是比较好的,比较符合云原生的趋势;
~~~ 我们不能去开发一个有状态应用,若是采用有状态应用,需要保证一些投向什么的,
~~~ 需要应用到后面的存储去单独挂一个盘,去单独的做我们的存储,
~~~ 但是应用需要向无状态方向去开发,但是我们大部分的应用都是有状态的。
### --- StatefulSet
~~~ # StateSet:有状态的应用部署:比如可以去保护署Redis等,比如启动一个Redis的主从,
~~~ 我们需要先启动它的主节点,再去启动它的从节点,
~~~ 这样就可以县启动主节点,从节点再去注册到或者链接master节点。
### --- daemonset
~~~ # DaemonSet:在每一个符合标签的节点上都会启动一个容器,
~~~ 比如说calico网络插件每个节点都需要部署一个,
~~~ 这样就可以管理每个节点上的Pod去管理它的IP地址;
~~~ 还有可以使用DaemenSet去部署一个日志收集的工具,就可以去收集它的日志。