1、kubernetes系统基础190622
1、容器编排工具
- docker编排工具三剑客:docker compose, docker swarm, docker machine
- IDC的操作系统:mesos
- 提供容器编排框架:marathon
- kubernetes
2、DevOps
- CI:持续集成
- CD:持续交付,Delivery
- CD:持续部署,Deployment
3、k8s概述
- Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。
4、k8s特性
- 自动装箱
- 自我修复,容器崩溃后直接重新拉起一个
- 自动实现水平扩展
- 自动实现服务发现和负载均衡
- 自动发布和自动回滚
- 秘钥和配置管理
- 存储编排
- 批量处理执行
5、k8s架构
- master:由一组节点来做管理节点,是整个集群的大脑,通常应该有3个
- API-Server:来接受请求
- Scheduler:调度器
- Controller-Manager:控制器管理器
- node01...N :由N个节点来做运行docker的节点
- Kubelet:管理node
- Docker:容器引擎
- Kube-proxy:创建/修改/删除service规则
6、Pod豌豆荚
- k8s中最小单位是pod
- 在pod中运行容器
- 在同一pod中的容器共享网络和存储
7、Label标签
- Label:标记POD对象,是POD的元数据,kv类型
- Label Selector:标签选择器,挑选指定类的POD
8、Pod的分类
- 自主式Pod
- 控制器管理的Pod
- ReplicationContrller:副本控制器,可实现滚动更新
- ReplicaSet:副本集控制器
- Deployment:只能管理无状态的应用,支持2级Pod控制器(HPA),根据业务负载扩展Pod
- StatefulSet:有状态副本集
- DaemonSet:守护副本集
- Job
- Ctonjob
9、Service对象
- 提供固定的访问地址,可以实现调度功能
- 为Pod提供转发
- 靠标签选择器来选择Pod为自己的后端
- 是一个iptables或者lvs的一条规则
- service的名可以被DNS-Pod解析
10、DNS-Pod
- AddOns:是k8s集群的一个附件
- 可实现自动添加/删除解析记录
11、k8s网络
- 物理机网络:节点网络
- service网络:集群网络
- 容器网络:pod网络
- 同一个Pod内的容器使用lo网卡通信
- 各Pod之间通过Overlay Network网络(叠加网络)通信
- Pod与Service之间通过iptables规则通信
12、etcd
- 存储所有的集群状态信息
- 一般有3个节点做冗余
- 提供resful风格的api
- 键值存储
- 内部需要ca,签署证书,以供https通信
13、flannel
- CNI:容器网络接口协议
- flannel属于CNI插件
- 管理集群的Pod网络和集群网络的网络配置
- 使用叠加网络实现
- 与flannel相同功能的插件还有:
- calico,支持网络配置和网络策略,使用IPIP隧道实现
- canel:flannel和calico结合生成的项目
1、kubernetes系统基础190622的更多相关文章
- (一)Kubernetes 系统基础
Kubernetes介绍 什么是Kubernetes? Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署.自动扩缩容.维护等功能. 使用Kubernetes可以: ...
- 第1章:Kubernetes 系统基础
51.1.kubernetes介绍: 1.什么是kubernetes: (1)Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署.自动扩缩容.维护等功能. (2)使 ...
- Kubernetes系统基础
Kubernetes系统基础 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.容器编排系统概述 1>.容器编排系统生态圈 Docker通过“镜像”机制极富创造性地解决了应用 ...
- Kubernetes学习-基础架构
kubectl是一个Kubernetes提供的客户端工具,是用于操作kubernetes集群的命令行接口,通过利用kubectl的各种命令可以实现各种功能,是在使用kubernetes中非常常用的工具 ...
- 浅入kubernetes(1):Kubernetes 入门基础
目录 Kubernetes 入门基础 Introduction basic of kubernetes What Is Kubernetes? Components of Kubernetes Kub ...
- Kubernetes 入门基础
我们要学习 Kubernetes,就有首先了解 Kubernetes 的技术范围.基础理论知识库等,要学习 Kubernetes,肯定要有入门过程,在这个过程中,学习要从易到难,先从基础学习. 接下来 ...
- Linux实战教学笔记06:Linux系统基础优化
第六节 Linux系统基础优化 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 基础环境 第2章 使用网易163镜像做yum源 默认国外的yum源速度很慢,所以换成国内的. 第一步:先备份 ...
- 12、ERP设计之 系统基础管理(BS)- 模块与菜单的关联
ShareERP2013-10-03 模块:具有功能设计.权限绑定,链接用户菜单与系统的重要桥梁. 菜单:是用于显示与用户交互的重要入口,更是导航系统的舵手,所以它的设计直接影响到用户体验. 菜单可能 ...
- Linux系统基础命令
这是看itercast的学习笔记 Linux系统基础命令 日期时间 命令date用以查看.设置当前系统时间:格式化显示时间: +%Y--%m--%d 命令hwclock(clock)用以显示硬件时钟时 ...
随机推荐
- Android: 利用SurfaceView绘制股票滑动直线解决延迟问题
1.背景介绍 最近项目要绘制股票走势图,并绘制能够跟随手指滑动的指示线(Indicator)来精确查看股票价格和日期.如下图所示: 上图中的那条白色直线就是股票的指示线,用来跟随手指精确确定股票的时间 ...
- perl: warning: Falling back to the standard locale ("C").
/********************************************************************************** * perl: warning: ...
- P1030 求先序排列
题目描述 给出一棵二叉树的中序与后序排列.求出它的先序排列.(约定树结点用不同的大写字母表示,长度<=8). 输入输出格式 输入格式: 2行,均为大写字母组成的字符串,表示一棵二叉树的中序与后序 ...
- vmware station中 UDEV 无法获取共享存储磁盘的UUID,症状: scsi_id -g -u -d /dev/sdb 无返回结果。
1.确认在所有RAC节点上已经安装了必要的UDEV包 [root@11gnode1 ~]# rpm -qa|grep udevsystem-config-printer-udev-1.1.16-25. ...
- 查看,检查,修复pg的命令
标签(空格分隔): ceph,ceph运维,pg 如果集群状态是HEALTH_ERR 并且有pgs inconsistent,需要进行如下操作: 1. 通过下面的命令查看哪些pg状态不一致: # ce ...
- Ruby中的%表示法
%{String} 用于创建一个使用双引号括起来的字符串,这个表示法与%Q{String}完全一样 result = %{hello} puts "result is: #{result ...
- JVM类加载(1)—加载
1.加载: 查找并加载类,将.class文件中的二进制数据读入到内存中,放在运行时数据区的方法内,然后在堆内创建一个java.lang.class对象用来封装类在方法区内的数据结构.并且向程序员提供了 ...
- JavaScript之JMap
在JavaScript中我们利用function类定义类在类的内部我们用var 定义私有变量 私有函数在类的内部我们用this 定义公有变量(1)定义一个类 function JMap() { var ...
- javaScript之事件处理程序
事件就是用户或浏览器自身执行的某个动作,JavaScript与HTML的交互也是通过事件实现的.而相应某个事件的函数就叫做事件处理函数.包括以下几种: 1.HTML事件处理程序 某个元素支持的每 ...
- 获取服务器IP,客户端IP
客户端IP相关的变量 1. $_SERVER['REMOTE_ADDR']; 客户端IP,有可能是用户的IP,也有可能是代理的IP. 2. $_SERVER['HTTP_CLIENT_IP']; 代理 ...