目录
一,Devops核心要点及kubernetes的架构概述
1,devops的简述及要点
DevOps,分层架构 ---> 微服务
把一个程序,拆分成几个成百个微服务,使其相互独立运行
当下把微服务和容器融合起来,使其能够快速的落地。
DevOps 在交互和部署环节的易购程度,在部署环节异常困难,而容器的出现,完全弥补了。
- CI: 持续集成 Continues Integration
作为运维的角度,得到一个应程序,需要发布到生产,蓝绿部署,金丝雀,灰度发布
- CD: 持续交付 Continues Delivery
- CD: 持续部署 Continues Deployment
2,kubernetes的简单介绍与组成
kubernetes,简称K8s,是用8代替8个字符“ubernete”而成的缩写。是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。
Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。在生产环境中部署一个应用程序时,通常要部署该应用的多个实例以便对应用请求进行负载均衡。
特性
- 自动化: 自动部署,自动重启,自动复制,自动伸缩/水平扩展,服务发现和负载均衡,自动发布和回滚
- 支持秘钥和配置管理, 存储编排,批量处理任务执行
- 可移植: 支持公有云,私有云,混合云,多重云(multi-cloud)
- 可扩展: 模块化, 插件化, 可挂载, 可组合
集群
称为:物理机群架构是。有中心节点架构的集群 master/nodes(worker)
master上最重要的组件:
- API Server
- 提供集群管理的 REST API 接口,包括认证授权、数据校验以及集群状态变更等
- 提供其他模块之间的数据交互和通信的枢纽(其他模块通过 API Server 查询或修改数据,只有 API Server 才直接操作 etcd)
- Scheduler
- kube-scheduler 负责分配调度 Pod 到集群内的节点上,它监听 kube-apiserver,查询还未分配 Node 的 Pod,然后根据调度策略为这些 Pod 分配节点(更新 Pod 的
NodeName
字段)。
- kube-scheduler 负责分配调度 Pod 到集群内的节点上,它监听 kube-apiserver,查询还未分配 Node 的 Pod,然后根据调度策略为这些 Pod 分配节点(更新 Pod 的
- Controller-Manager
- Controller Manager 由 kube-controller-manager 和 cloud-controller-manager
组成,是 Kubernetes 的大脑,它通过 apiserver 监控整个集群的状态,并确保集群处于预期的工作状态。
- Controller Manager 由 kube-controller-manager 和 cloud-controller-manager
- etcd
- 负责保存 Kubernetes Cluster 的配置信息和各种资源的状态信息。当数据发生变化时,etcd 会快速地通知 Kubernetes 相关组件。
node上重要的组件:
Label
Lable Selectes
- kubelet
- 管理维护pod运行的agent
- 容器引擎(最流行的docker,也可以是其他)
- kube-proxy
- 维持各个节点上pod之间的通信。
允许自托管
- 在kubernetes中,最小单位是
pod
,逻辑的。一个pod中,可以有多个容器。 - 在调度器中,调度的是pod。一个pod中的所有容器,只能运行在同一个node主机上。
- 在kubernetes中,为了更好的管理pod,使用Label,是一个key:value格式的,其中key是有一个定的标准的,定义国有,在使用Label selector标签选择器来管理。
- 集群示意图
分类
Pod:
- 自主式Pod
- 控制管理器的Pod
Replication Controller
ReplicaSet
Deployment
StatefulSet
DaemonSet
Job, Ctonjob
网络
kubernetes中有三种网络:
- 节点网络
- 集群网络 service调度的网络
- Pod网络
三类通信:
- 同一个Pod内多个容器通信: lo
- 各Pod之间的通信
- Pod与Service之间的通信
原文地址:https://www.cnblogs.com/peng-zone/p/11551460.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。