mirror of
https://github.com/ben1234560/k8s_PaaS.git
synced 2025-04-21 15:05:53 +08:00
Update 第二章——企业部署实战_K8S.md
This commit is contained in:
parent
4ba59c57dc
commit
78fc7f4b0c
@ -1,18 +1,57 @@
|
||||
第二章——企业部署实战_K8S
|
||||
## 第二章——企业部署实战_K8S
|
||||
|
||||
#### 前言:如果你是新手,机器的名字及各种账户密码一定要和我的一样,先学一遍,再自己改
|
||||
##### 前言:如果你是新手,机器的名字及各种账户密码一定要和我的一样,先学一遍,再自己改
|
||||
|
||||
> **WHAT:**用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制
|
||||
>
|
||||
> **WHY:**为什么使用它,因为它是管理docker容器最主流的编排工具
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
- Pod
|
||||
- Pod是K8S里能够被运行的最小的逻辑单元(原子单元)
|
||||
- 1个Pod里面可以运行多个容器,它们共享UTS+NET+IPC名称空间
|
||||
- 可以把Pod理解成豌豆荚,而同一Pod内的每个容器是一颗颗豌豆
|
||||
- 一个Pod里运行多个容器,又叫边车(SideCar)模式
|
||||
- Pod控制器
|
||||
- Pod控制器是Pod启动的一种模板,用来保证在K8S里启动的Pod始终按照人们的预期运行(副本数、生命周期、健康状态检查...)
|
||||
- Pod内提供了众多的Pod控制器,常用的有以下几种:
|
||||
- Deployment
|
||||
- DaemonSet
|
||||
- ReplicaSet
|
||||
- StatefulSet
|
||||
- Job
|
||||
- Cronjob
|
||||
- Name
|
||||
- 由于K8S内部,使用“资源”来定义每一种逻辑概念(功能),故每种“资源”,都应该有自己的“名称”
|
||||
- “资源”有api版本(apiVersion)类别(kind)、元数据(metadata)、定义清单(spec)、状态(status)等配置信息
|
||||
- “名称”通常定义在“资源”的“元数据”信息里
|
||||
- Namespace
|
||||
- 随着项目增多、人员增加、集群规模的扩大,需要一种能够隔离K8S内各种“资源”的方法,这就是名称空间
|
||||
- 名称空间可以理解尾K8S内部的虚拟集群组
|
||||
- 不同名称空间内的“资源”名称可以相同,相同名称空间内的同种“资源”、“名称”不能相同
|
||||
- 合理的使用K8S名称空间,使得集群管理员能够更好的对交付到K8S里的服务进行分类管理和浏览
|
||||
- K8S内默认存在的名称空间有:default、kube-system、kube-public
|
||||
- 查询K8S里特定“资源”要带上想应得名称空间
|
||||
- Label
|
||||
- 标签是K8S特色的管理方式,便于分类管理资源对象
|
||||
- 一个标签可以对应多个资源,一个资源也可以有多个标签,它们是多对多的关系
|
||||
- 一个资源拥有多个标签,可以实现不同维度的管理
|
||||
- 标签的组成:key=value
|
||||
- 与标签类似的,还有一种“注解”(annotations)
|
||||
- Label选择器
|
||||
- 给资源打上标签后,可以使用标签选择器过滤指定的标签
|
||||
- 标签选择器目前有两个:基于等值关系(等于、不等于)和基于集合关系(属于、不属于、存在)
|
||||
- 许多资源支持内嵌标签选择器字段
|
||||
- matchLabels
|
||||
- matchExpressions
|
||||
- Service
|
||||
- 在K8S的世界里,虽然每个Pod都会被分配一个单独的IP地址,但这个IP地址会随着Pod的销毁而消失
|
||||
- Service(服务)就是用来解决这个问题的核心概念
|
||||
- 一个Service可以看作一组提供相同服务的Pod的对外访问接口
|
||||
- Service作用与哪些Pod是通过标签选择器来定义的
|
||||
- Ingress
|
||||
- Ingress是K8S集群里工作在OSI网络参考模型下,第7层的应用,对外暴露的接口
|
||||
- Service只能进行L4流量调度,表现形式是ip+port
|
||||
- Ingress则可以调度不同业务域、不同URL访问路径的业务流量
|
||||
|
||||
简单理解:Pod可运行的原子,name定义名字,namespace名称空间(放一堆名字),label标签(另外的名字),service提供服务,ingress通信
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user