1. k8s概念简介

1)pod:pod是k8s里能够运行的最小逻辑单元,一个pod里可运行多个容器

2)pod控制器:是pod启动的模板,来保证k8s里启动pod按预期运行(副本数,生命周期,健康检查)

  1. pod控制器有如下几种:DeploymentDaemonSetReplicaSetStatefulSetjobcronjob

3)name:使用资源定义每一种逻辑概念,所以每种资源都应有自己的名,

 资源有api版本(apiversion)类别(kind)、元数据(metadata)、定义清单(spec)、状态(status)。

4)namespace:名称空间可理解为k8s内部的虚拟集群组;不同空间内资源名称可相同,相同空间内资源名称不 可相同;默认名称空间有:default、kube-system、kube-public;查询k8s特定资源要带上对应的名称空间。

5)label:标签便于分类管理资源对象;标签和资源是多对多的关系;标签的组成:key=value

6)label选择器:给资源打上标签后,可以使用标签选择器过滤指定标签;标签选择器:基于等值关系(等于、不 等于)和基于集合关系(属于、不属于、存在);许多资源支持内嵌标签选择器字段:matchlabels、 matchExpressions

7)service:pod被销毁以后ip地址就会消失,所以service是来解决这个核心概念;一个service可以看做一组提供 相同服务pod的对外访问接口;service作用于那些pod是通过标签选择器来定义的。

8)Ingress:是k8s集群里工作在OSI网络参考模型下第七层的应用,对外暴露端口;service只能调度L4的流量, 表现形式为ip+port;ingress则可以调度不同业务域、不同url访问路径的业务流量。