Kubernetes概念介绍和v1版本部署过程
- 编排:跨Docker主机同一管理容器集群。
- 目的
- 简化开发和运维容器集群的工作。
- 让开发和运维能把这个系统当一台电脑看待。
- 特点:没有资源调度算法,只关注容器的管理。
Cluster,即集群:虚拟机或者物理机的一组集合,运行着Kubernetes
- ETCD
- 一个分布式强一致性的key/value存储
- 可理解为一个存储k8s信息的数据库
- Node
- 工作节点,运行Master节点交付的任务
- 能运行一个或多个Pods
- 运行的组件
- Kubelet
- 管理容器的守护进程
- 管理Docker主机来启动容器的管理程序
- 定期从etcd获取分配到本机的pod信息,启动或停止容器
- 接收apiserver的HTTP请求,汇报pod的运行状态
- Proxy
- 服务发现(IP寻址)
- 定期从etcd获取所有的service根据service信息创建代理
- 客户pod访问其他pod都经过proxy转发
- Kubelet
- Master
- 提供了集群统一视图的中心控制点
- 一个Master节点来控制多个Node节点
- 运行的组件
- API Server
- 对操作对象的增删改查
- 提供RESTful K8s API接口
- 校验和配置Pod、Service和Replication Controller
- 统一管理集群系统的入口
- Scheduler
- 资源调度
- 为新建的pod分配机器
- Controller-Manager
- 容错处理
- 扩容、缩容
- 负责执行各种控制器
- endpoint-controller
- 定期关联service和pod(关联信息由endpoint对象维护),保证service到pod的映射总是最新的
- replication-controller
- 定期关联replicationController和pod,保证定义的复制数量与实际运行pod的数量总是一致的
- endpoint-controller
- API Server
可操作对象
- Pod:k8s上可创建、调度和管理的最小单位,是一个或一组拥有共享卷的容器集
- Replication Controller:管理着Pod的生命周期,建议创建Pod都是用rc,他会确保任何时刻Pod的数量都维持在一个特殊设定的值
- Service:基本的负载均衡器,为外部某提供一组Pod的一个稳定操作接口
其他概念
- Label:通过键值对的方式组织和选择操作对象,使用户自定义的标识
- Annotation:同样是存储管理键值对,相对比Label更大,通常是人类不可识别的非标识的数据
- Selector:通过匹配Label来确定相关的资源
- Volume:是一个文件目录,可以当成容器文件系统的一部分,是建立在Docker的Volume基础上的
- Secret:存储敏感的数据并可以被容器所访问
- Name:用户赋予一个资源的名称
- Namespace:命名空间以免相同的Name冲突
| 主机名 | IP | 角色配置 |
| master | 172.16.71.133 | 主节点,运行kube-apiserver、kube-controller-manager、kube-scheduler和etcd |
| minion1 | 172.16.71.129 | 子节点,运行kubelet、kube-proxy |
| monion2 | 172.16.71.132 | 子节点,运行kubelet、kube-proxy |
Kubernetes概念介绍和v1版本部署过程的更多相关文章
- 二、Kubernetes 概念介绍
一.Master Master指的是集群控制节点,在每个Kubernetes集群里都需要有一个Master来负责整个集群的管理和控制,基本上Kubernetes的所有控制命令都发给它,它负责具体的 ...
- 部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0)
部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0) 部署Bookinfo示例程序 在下载的Istio安装包的samples目录中包含了示例应用程序. ...
- 云原生时代之Kubernetes容器编排初步探索及部署、使用实战-v1.22
概述 **本人博客网站 **IT小神 www.itxiaoshen.com Kubernetes官网地址 https://kubernetes.io Kubernetes GitHub源码地址 htt ...
- 二进制搭建Kubernetes集群(最新v1.16.0版本)
目录 1.生产环境k8s平台架构 2.官方提供三种部署方式 3.服务器规划 4.系统初始化 5.Etcd集群部署 5.1.安装cfssl工具 5.2.生成etcd证书 5.2.1 创建用来生成 CA ...
- K8s - Kubernetes重要概念介绍(Cluster、Master、Node、Pod、Controller、Service、Namespace)
K8s - Kubernetes重要概念介绍(Cluster.Master.Node.Pod.Controller.Service.Namespace) Kubernetes 是目前发展最 ...
- Kubernetes 基本概念介绍
什么是Kubernetes? Kubernetes(k8s)是自动化容器操作的开源平台,这些操作包括部署,调度和节点集群间扩展. 如果你曾经用过Docker容器技术部署容器,那么可以将Docker看成 ...
- 理解裸机部署过程ironic
部署物理机跟部署虚拟机的概念在nova来看是一样,都是nova通过创建虚拟机的方式来触发,只是底层nova-scheduler和nova-compute的驱动不一样.虚拟机的底层驱动采用的libvir ...
- CQRS之旅——旅程5(准备发布V1版本)
旅程5:准备发布V1版本 添加功能和重构,为V1版本发布做准备. "大多数人在完成一件事之后,就像留声机的唱片一样,一遍又一遍地使用它,直到它破碎,忘记了过去是用来创造更多未来的东西.&qu ...
- 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之集群概念介绍(一)
集群概念介绍(一)) 白宁超 2015年7月16日 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习 ...
随机推荐
- JQ子页面对父页面的元素进行操作
需要加上parent.document,才能找到父页面的元素 如: $("#tabs", parent.document).click();
- cpu事实负载使用top命令
参考网址:http://www.cnblogs.com/tippoint/archive/2013/03/05/2944319.html 在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据 ...
- css用法(持续更新ing)
*:选择所有节点 #container:选取id为container的节点 .container:选取所有class包含container的节点 li a:选取li下的所有a节点 ul +p:选取ul ...
- javascript中使用el表达式获取不到数据问题
我们通常会在jsp里面使用el表达式,把需要的值传递给 javascript 方法,例如: <p onclick="doSomething(${param})">< ...
- Combo Box的简单使用(Win32)
1 SendMessage函数向窗口发送消息 LRESULT SendMessage( HWND hWnd, // handle to destination window UINT Msg, ...
- python接口自动化11-post传data参数案例【转载】
前言: 前面登录博客园的是传json参数,有些登录不是传json的,如jenkins的登录,本篇以jenkins登录为案例,传data参数. 一.登录jenkins抓包 1.登录jenkins,输入账 ...
- Java中的标记接口(zz)
1.什么是标记接口? Java中把没有定义任何方法和常量的接口称之为标记接口,我们经常使用的比较多的是“”Serializable“”,这个接口也是没有定义人任何方法和常量的. 2.标记接口的作用? ...
- spring applicationContext.xml 中bean配置
如果采用set get方法配置bean,bean需要有set get 方法需要有无参构造函数,spring 在生成对象时候会调用get和set方法还有无参构造函数 如果采用constructor方法则 ...
- AC日记——逃离僵尸岛 洛谷 P3393
逃离僵尸岛 思路: spfa: 代码: #include <cstdio> #include <cstring> #include <iostream> #incl ...
- Python爬虫Scrapy测试
# -*- coding:utf- -*- import urllib import urllib2 import re import thread import time #糗事百科爬虫类 clas ...