1. devops核心要点及kubernetes架构
[TOC]
本文基于马哥的docker和k8s视频总结, 在此致谢马哥.
docker编排工具:
- docker compose (单机编排工具), docker swarm (docker多机编排工具)
- docker machine: 让主机迅速满足加入docker swarm (docker 集群)的先决条件的工具
- mesos, marathon
- kubernetes
devops:
- CI: 持续集成
- CD: 持续交付, develivery
- CD: 持续部署, development
k8s
kubernete: 舵手, 飞行员
-
可理解为集群
-
master (一般大于等于3个) / node (worker)架构
-
master上的组件:
- (1) API server (负责接收客户端的发来的任务)
- (2) scheduler (负责将任务调度到最适合的node上)
- (3) control-manager (控制器管理器: 负责监控控制器的状态, 控制器: 用来监控node的节点状态)
-
node上的组件:
- (1) kubelet (负责执行scheduler发来的任务, 例如启动pod, 管理pod健康, 在本地创建存储卷等)
- (2) docker (容器引擎, 负责运行容器)
- (3) kube-proxy (负责管理service的变动, 反映到iptables或ipvs上)
-
k8s调度的最小单元: pod (包含多个container)
- 每个pod都有label, label需要label selector(标签选择器)进行筛选
Pod分类:
- 自主式Pod
- 控制器管理的Pod (replication controller: 副本控制器)
k8s网络架构: 有3类网络(节点网络, pod网络, service网络)
k8s网络.png
有网络名称空间的概念
k8s资源类型和缩写
| 资源类型 | 缩写 | 描述 |
|---|---|---|
| clusters | ||
| componentstatuses | cs | |
| configmaps | cm | |
| daemonsets | ds | |
| deployments | deploy | |
| endpoints | ep | |
| event | ev | |
| horizontalpodautoscalers | hpa | |
| ingresses | ing | |
| jobs | ||
| limitranges | limits | |
| namespaces | ns | |
| networkpolicies | ||
| nodes | no | |
| statefulsets | ||
| persistentvolumeclaims | pvc | |
| persistentvolumes | pv | |
| pods | po | |
| podsecuritypolicies | psp | |
| podtemplates | ||
| replicasets | rs | |
| replicationcontrollers | rc | |
| resourcequotas | quota | |
| cronjob | ||
| secrets | ||
| serviceaccount | sa | |
| services | svc | |
| storageclasses | ||
| thirdpartyresources |











网友评论