Kubernetes (K8s) is an open-source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery. Kubernetes builds upon 15 years of experience of running production workloads at Google, combined with best-of-breed ideas and practices from the community.
发布评论
评论(3)
编排,顾名思义,就是调配、安排。
怎么调配、安排呢?
看官网 https://kubernetes.io:
中文翻译:
所以你看,它提及了几个方面,分别是:容器管理、应用部署、服务发现、弹性伸缩。
简单和通俗的讲, 大概包括这些点
总之, 编排是一个让容器有机组合, 协调其运行情况, 保证高可用性, 完成具体业务的一系列工作的总和. 这些事情在 Docker 之前其实也是要干的, 只是以前是物理机和虚拟机, 现在是容器
不能说是docker的编排工具,应该说是对“容器”的编排工具,docker只是一种容器实现方式
“编排”,通俗理解,类似我国以前大学生毕业后工作“包分配”,大学生毕业后,根据事业单位的特点和大学生的专业和特长信息,看看他们应该安排到哪个单位合适。
一般我们一个集群的会有“多台物理机器”,每个物理机器又可以跑“多个容器”,但是到底哪个容器应该跑在哪些物理机里面,就要有一套规则规划,k8s就是实现了这样一套规则。
简单举个几个例子,k8s的这些规则里面有比如“节点选择”,“节点亲和性”、“pod亲和性”等
节点选择
比如下面这个这个规则,我们希望nginx安排跑在有ssd类型硬盘的物理机器上
节点亲和性
如下面这个例子,我们希望:
192.168.1.140
和192.168.1.161
不要给我跑pod,area=south
如的这个果有节点满足area=south
的这个条件的话,pod尽量往这里安排。apiVersion: v1
kind: Pod
...
spec:
containers:
image: nginx
affinity:
apiVersion: v1
kind: Pod
...
spec:
containers:
image: nginx
affinity: