k8s常见的几个主要概念
2020-03-19 本文已影响0人
hyperjiang
k8s.png
Service:用于定义一组逻辑Pods以及访问它们的政策,相当于微服务的概念,扮演负载均衡器的角色。
Pod:在集群上运行的进程,是k8s应用程序的基本执行单元——创建或部署的k8s对象模型中最小、最简单的单元。
Container:容器是应用程序及其在运行时所需要的依赖的打包。一个Pod支持运行多个容器,但大多数情况下一个Pod只会运行一个容器。
Deployment:给Pods和ReplicaSets提供更新声明。比如下面的Deployment就会告诉k8s去创建一个ReplicaSet去启动3个nginx Pods:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
ReplicaSet:用于保证一组指定数量的Pods的稳定运行。
Label:用于标识对象的健/值对(key/value pairs),它并不是唯一的,多个对象可以拥有同个标签。
Volume:由Pod定义的存储方式,可以是本地磁盘也可以是云磁盘,提供给Pod里面运行的容器访问。