什么是k8s?
k8s是谷歌开源的一套完整的容器管理平台,方便我们直接管理容器应用。
谷歌称之为,kubernetes,[kubə’netis] ,(跟我一起读库波尔耐题思,重音在耐的音上),由于字母太多,我们简称为k8s,8代表k-->s之间的8个字母。
kubernetes 译为舵手,标识是一个航海舵。而容器直译为集装箱,也就是舵手在管理容器的意思。

为什么要做出来k8s,换句话说它有什么用?
还记得我前边讲的,为了屏蔽硬件之间的差异,减轻虚拟技术的负担,容器化技术在docker的带领下大行其道。越来越多的公司采用容器进行部署和交付。
但是随着业务的复杂化,容器可能成百上千,甚至不同容器对硬件的要求也越来越复杂,此时我们就需要一套完整的管理软件(平台),(防盗连接:本文首发自http://www.cnblogs.com/jilodream/ )来管理这些容器,如何部署,怎么部署
怎么销毁等等。k8s就是这样一套平台,同时与之对齐的还有docker 官方推出的docker swarm工具。但是由于市场和性能等原因,越来越多的公司选择k8s来管理容器。
除了能管理容器,k8s 还提供了一套完整的管理服务,安全的机制。这就让k8s同时拥有分布式、集群的一些处理能力。很多公司以此来分担spring cloud等分布式架构的能力。
接下来看一下k8s架构:

如图,k8s将主机称之为节点Node,节点又分为两种。主节点master,从节点Node。
主节点master主要提供资源的管理、控制。从节点Node用来保存各种资源信息。
主节点中包含:
kubectl :我们通过kubectl来控制使用k8s。
api server:核心组件、提供资源操作入口、认证、授权访问、api注册等能力。
scheduler:负责资源的调度。
controller manager:维护集群状态,如故障检测、自动扩展、滚动更新等。
etcd:分布式数据库,用来存储状态。
从节点包含:
kubelet:负责管理pod以及容器。
container runtime: 提供镜像管理和容器的运行时环境。
kubeproxy: 负责网络代理和负载均衡。

以上听起来有一些晦涩,不过不要紧,作为开发人员基本上用不到,这里只要有一个大概的印象就可以:
1、用户通过kubectl 来管理容器资源(防盗连接:本文首发自http://www.cnblogs.com/jilodream/ )
2、kubectl将收到的诉求发给至api server
3、api server分析收到的诉求,结合scheduler、etcd提供的信息,将命令发送到指定节点的kubelet中。
4、kubelet 根据收到的命令,处理相应节点中的pod。

这里提到了一个pod的概念:
什么是pod?pod就是一组容器,k8s是以pod为单位来操作容器的,我会在后边的文章中详细介绍。

实战 k8s----初识的更多相关文章

  1. aspnetcore.webapi实战k8s健康探测机制 - kubernetes

    1.浅析k8s两种健康检查机制 Liveness k8s通过liveness来探测微服务的存活性,判断什么时候该重启容器实现自愈.比如访问 Web 服务器时显示 500 内部错误,可能是系统超载,也可 ...

  2. 【实战】初识ListView及提高效率

    简介: ListView是手机上最常用的控件之一,几乎所有的程序都会用到,手机屏幕空间有限,当需要显示大量数据的时候,就需要借助ListView来实现,允许用户通过手指上下滑动的方式将屏幕外的数据滚动 ...

  3. Vue.js实战:初识Vue.js

    一.Vue.js是什么 简单小巧的核心,渐进式技术栈,足以应付任何规模的应用. 简单小巧指的是Vue.js 压缩后大小仅有17KB 所谓渐进式(Progressive)就是你一步一步,有阶段性地来使用 ...

  4. 数学之路-python计算实战(5)-初识numpy以及pypy下执行numpy

    N .有用的线性代数.傅里叶变换和随机数生成函数.numpy和稀疏矩阵运算包scipy配合使用更加方便.NumPy(Numeric Python)提供了很多高级的数值编程工具,如:矩阵数据类型.矢量处 ...

  5. k8s 初识pod (二)

    kubernetes中调用pod到哪个节点上是无关紧要的,但由于实际情况,每台node的硬件环境不一致,所以某些情况要求将不同pod调到指定节点上运行.也可以通过label实现. kubectl la ...

  6. 详解docker实战之搭建私有镜像仓库 - kurbernetes

    1.实战目的 搭建企业私有的镜像仓库,满足从开发环境推送和拉取镜像.当我们使用k8s来编排和调度容器时,操作的基本单位是镜像,所以需要从仓库去拉取镜像到当前的工作节点.本来使用公共的docker hu ...

  7. kubernetes 微服务西游记(持续更新中...)

    随着微服务架构的流行,迈向云原生的趋势,容器化微服务就成为了持续集成最好的手段,镜像成为了持续交付最好的产物,容器成为了镜像运行最好的环境,kubernetes成了部署容器最好的生态系统和规范.实践出 ...

  8. k8s-2-集成apollo配置中心

    主题: 在k8s中集成Apollo配置中心 架构图 一.配置中心概述 配置的几种方式 本课讲得是基于配置中心数据库实现 配置管理的现状 常见的配置中心 主讲:k8s configmap,apollo ...

  9. 做Android开发,你后悔过吗?

    有同学跟我说,编程太难了,总是有学不完的技术.框架,新技术也层出不穷,马上三十了,还有各种学不完的东西,后悔做程序员了 编程对我来讲,还难吗 我主业是做Android的. 我刚学编程的时候,觉得难点在 ...

  10. 大厂需要什么样的 Android 开发?

    前言 昨天和一个百度的朋友闲聊,他说根据最近招聘 Android工程师的经验来看,大部分候选人在工作 3 年的时候基本都会遇上一道难过的坎. 为啥这么说呢? 因为工作一段时间之后,大部分工程师都已经完 ...

随机推荐

  1. 重温设计模式之 Factory

    简介: 创建型模式的核心干将,工厂.简单工厂.抽象工厂,还记得清么,一文回顾和对比下. 作者 | 弥高来源 | 阿里技术公众号 前言 创建型模式的核心干将,工厂.简单工厂.抽象工厂,还记得清么,一文回 ...

  2. 工业视觉智能实战经验之IVI算法框架2.0

    ​简介: 工业视觉智能团队在交付了多个工业视觉智能质检项目后,发现了工业视觉智能的共性问题和解法,打造了工业视觉智能平台,通过平台的方式积累和提升工业视觉的通用能力.在平台建设上最核心的能力是算法能力 ...

  3. [Go] panic: assignment to entry in nil map

    以上错误出现在给 map 变量赋值的时候. 例如: type AbMap map[string]string var abMap AbMap abMap['a'] = 'b' 使用 map 变量需要使 ...

  4. WPF dotnet core 的 Blend SDK Behaviors 库

    之前版本是通过安装 Blend SDK 支持 Behaviors 库的,但是这个方法都是通过引用 dll 的方式,不够优雅.在升级到 dotnet core 3.0 的时候就需要使用 WPF 官方团队 ...

  5. 2019-4-12-VisualStudio-好用插件集合

    title author date CreateTime categories VisualStudio 好用插件集合 lindexi 2019-04-12 09:37:47 +0800 2019-0 ...

  6. 18.基于Consul的服务发现和ConsulManager管理

    192.168.10.14 prometheus.consul 192.168.10.100 各类服务 一.基于Consul的服务发现 Consul 是由 HashiCorp 开发的一个支持多数据中心 ...

  7. C++里也有菱形运算符?

    最近在翻<c++函数式编程>的时候看到有一小节在说c++14新增了"菱形运算符".我寻思c++里好像没什么运算符叫这名字啊,而且c++14新增的功能很少,我也不记得有添 ...

  8. cesium教程2-加载显示地形地图

    上面地形数据,是调用cesium官方的地图服务,需要先注册cesium账户,配置cesium的账户token才行 1.在线地形服务的示例代码如下 <!DOCTYPE html> <h ...

  9. Centos 密码过期问题 password has expired

    1.这个主要是由/etc/login.defs参数文件中的一些参数控制的的.它主要用于用户账号限制PASS_MAX_DAYS 60     #密码最大有效期,此处参数PASS_MAX_DAYS为60, ...

  10. GEOJSON 的渲染实例

    createGeojson:function(arr) { let geoArr=[]; for(let i=0;i<arr.length;i++) { let obj={ "type ...