数人云|一年4更,如此勤奋的Kuberentes,1.9版更新前瞻

Kuberentes可谓是2017年风头最劲的编排工具了,随着Kubernetes社区及各大厂商的不断改进、发展,Kuberentes将成为容器管理领域的领导者,昨天,Kubernetes官方发布了本年度第四次也是最后一次新版本的更新公告,即Kuberentes 1.9,那么它都有哪些特性和变化呢?小数今天就带大家看一看~

Kubernetes 1.9

新的“特性”实际上并不是新的,而是基于为了足够稳定生产所使用现有功能的改进,如工作负载的API(DaemonSet、部署ReplicaSet,StatefulSet API),它提供了许多现实环境的基础工作负载,或已经进入到相关的测试阶段,这意味着它们是默认启用的,比如支持Windows服务器的工作负载。

然而只是进入了代码库,例如,Kubernetes 1.9包含了容器存储接口(CSI)和IPv6支持的Alpha实现。

1在升级之前需要做什么

在决定升级到Kuberentes 1.9之前,必须备份Etcd数据,这是非常重要的一件事,因为许多用于部署和升级Kubernetes默认的工具是Etcd3.1,由于Etcd不支持降级,所以如果决定降级Kubernetes部署,那么就无法回到以前的版本,因此虽然可以在不执行备份的情况下升级,但也有一些风险存在。
下面就来了解一下Kubernetes 1.9每个区域的变化细节。

2身份验证和API Machinery

认证和授权访问Kubernetes的过程有了一系列的改进:

  1. 首先可以使用集群角色聚合将权限添加到内置的RBAC管理/编辑视图角色中,这些角色适用于整个集群,可以更容易管理谁可以或不能执行某些操作。
  2. 此外,授权本身也得到了改进:列如如果一个规则拒绝进入Fires,那么没有理由对链中的其余规则进行评估,这样其他的规则就会被短路。

所有这些都取决于可扩展性,在这个周期中,社区通过添加一种新型的控制Webhook来提高可扩展性。
当试图在Kuberentes中执行操作时,入检查访问和检查名称空间时,接收控制器是发生的不同组件,Webhook使得用户可以通过HTTP POST请求与Kuberentes进行通信;可以发送请求,当某些事件发生时,Kuberentes会进行回调。

在这个版本中,团队致力于“变异”的Webhook,这使得更灵活的进入控制插件得以实现,因为他们让Kuberentes在必要的时候做出改变,允许更大的扩展性。

3定制资源

使用户能够创建自己的“对象”,可以被Kubernetes操纵,同时也已被增强,允许更容易的进行创建和更加可靠。这包括Kubernetes repo中一个新的示例控制器自定义资源定义,以及新的元数据字段选择器、帮助生成代码脚本,以及对已定义资源的验证,用来提高总体解决方案的可靠性。另外,以前的版本只允许引用自定义资源的组,现在可以获得单个实例。

4连网

随着IPv4地址的耗尽,在Kubernetes 1.9中看到对IPv6支持的开始是个好消息。这种支持仍然在Alpha中,并且有很大的局限性,比如缺少双栈支持和没有HostPorts,然而这是一个开始。
此外,随着CoreDNS 1.0的发布,用户可以选择使用它作为kube - dns的替代选择。要安装它,需要CLUSTER_DNS_CORE_DNS为“true”。但是要注意的是这种支持是实验性的,这意味着它可以随时更改或被删除。

其他的网络改进包括- cleanup- ipvs标志,它决定了kube - proxy是否会在启动时刷新所有现有的Ipvs规则(就像它在默认的版本中一样),以及一个新的PodAntiAffinity kube- dns注释来增强恢复力。
用户还可以通过向主机的/ etc/ resolvei添加“选项”来定制pod的DNS客户端的行为。conf或- resolv- conf,这将使它们传播到pod resolve.conf。

5集群生命周期

Federation SIG已经被重命名为集群生命周期,并一直致力于将kubeadm部署工具提高到产品质量。该项目虽然有效,但应用实践相对较短,包括一些新增的alpha特性,比如对CoreDNS的支持、IPv6和动态Kubelet配置。要在配置中安装CoreDNS而不是kube - dns,将CLUSTER_DNS_CORE_DNS设置为“true”。

Kubeadm还获得了一些额外的新特性,例如- print-join- command,这使得在初始集群部署后获得必要的信息以添加新节点,支持Kubelet动态配置,以及将Windows节点添加到集群的能力。

该小组还负责集群API,用于“声明性的kubernet -style API来集群创建、配置和管理”。它提供可选的,可添加的功能,在核心库伯内特斯的顶部。

如果用户正在构建多集群的安装,会很高兴知道kubefed,它允许用户创建一个控制平面来添加、删除和管理联邦集群,已经获得了几个新标志,这些标志可以让用户对它的安装方式和操作方式有更多的控制。- nodeselector标志让用户决定控制器的安装位置,以及添加对- imagepullsecrets和- imageplpolicy的支持,意味着用户现在可以从私有容器注册表中提取图像。

6节点的功能

如果是系统管理员或运维人员,那么Kubernetes 1.9可以使编写配置变得更容易一些,Kubelet的特性门现在表示为KubeletConfiguration中的映射,而不是一串键值对。此外,现在可以设置多个manifest url header,或者使用- manifest-url- header标志或KubeletConfiguration中的manifest . header字段。

而且deviceplugin会一直延伸到更优雅地处理插件设备全生命周期,包括显式cm.GetDevicePluginResourceCapacity()函数,它可以更准确地确定哪些资源是不活跃的,从而使可用资源的更精确的视图。它还确保了设备被正确地移除,即使 kubelet重新启动,并从kubelet传送到设备插件。最后,它确保即使在设备插件删除和 kubelet重新启动之后,预定的pods仍然可以继续运行。

但值得注意的是,根据发布说明,“Kubelet不再从节点状态移除未注册的扩展资源能力;当要自己删除插件时,集群管理员必须手动删除通过设备插件暴露的扩展资源,Kubernetes 1.9包括许多对日志和监视的增强,包括pod级的CPU、内存和本地临时存储。此外,状态摘要网络值,以前只考虑eth0,现在考虑所有的网络接口。

新版本还减轻了一些用户问题,增加了对默认管理和编辑角色的读/写权限,并增加了对podUNK tionbudget的读权限。策略到视图角色。

最后,团队取得了CRI日志解析在pkg/kubelet/apis/cri/logs,所以用户不用纠结于这个手动操作。

7调度

Kubernetes 1.9更改了如何配置kube - scheduler,并向配置文件中添加一个新的- config标志。该文件是Kubernetes期望在未来版本中找到配置值的地方;现在大多数其他的kube调度器标志现在已经被弃用。
此版本还提供了更有效地调度需要扩展资源(如gpu)的工作负载的能力;
调度SIG还完成了一些其他的个别更改,例如在低优先级的pod之前调度更高优先级的pod,以及一个pod能够监听多个IP地址的能力。

8存储

存储在Kubernetes 1.9中的重大更新是添加了容器存储接口(CSI)的alpha实现。CSI是Kubernetes、Docker、Mesosphere和Cloud Foundry社区之间的一个联合项目,它的目的是提供一个单一的API,存储供应商可以在任何支持CSI的编排中实现其产品在“out of the box”中工作。根据Kubernetes存储SIG的说法,“CSI将会像部署一个pod一样轻松地安装新的容量插件,并且允许第三方存储提供商开发他们的插件,而无需将代码添加到核心库伯内特斯代码库中。用户可以通过实例化一个卷作为CSIVolumeSource来使用这个新功能。

存储SIG还增加了几个新功能,包括:

GCE PD、Ceph RBD、AWS EBS和OpenStack Cinder卷的容量大小
体积作为原始块设备(光纤通道仅为Kubernetes 1.9)
可以在容器中运行而不是在主机上运行的工具

9云供应商

Kubernetes 1.9的一个重要变化是,如果用户手动部署Kubernetes,必须为- cloud- provider标志设置一个值;默认情况不再是“自动检测”。允许的选择是:AWS、Azure、Cloudstack、Fake、Gce、Mesos、Openstack、Ovirt、Photon、Rackspace、 Vsphere、以及Unset;自动检测将在Kubernetes 1.10中被移除。(如果用Minikube或Kubeadm之类的工具来安装Kubernetes,不必担心这个问题。)
此外,该版本中的一些更改是针对个别云供应商的。

OpenStack

如果使用OpenStack使用Kubernetes,用户会发现v1.9中的配置要简单得多。自动检测OpenStack服务和版本现在是“只要可行”的规则——在本例中意味着块存储API版本和安全组——用户现在可以将OpenStack负载平衡配置为服务v2提供者。支持OpenStack Octavia v2和中子LBaaS v2。

AWS

AWS的小组(SIG)一直致力于改善Kubernetes与EBS卷的集成。用户将不再使用被调度到“附加”状态的卷的工作负载。相反,节点将被“污染”,以便管理员能够处理问题。团队建议观看这些污染。此外,当停止节点时,卷将自动分离。

此外,Kubernetes现在支持AWS的新NVMe实例类型,以及使用AWS网络负载均衡器,而不是弹性负载均衡器。

Azure

如果用户在Windows上使用Kubernetes,特别是在Azure上,会发现安装卷的失误率更小,因为您现在可以创建Windows挂载路径,并消除驱动器号的需要,这是无限的挂载点。

还可以使用service . beta.kubernetes显式地为公共IP地址设置Azure DNS标签。在使用Azure NSG规则时,仍然能够使用Azure NSG规则,以确保只允许外部访问负载均衡器的IP地址。当更新时,负载均衡器还被增强以考虑更多NSG规则的属性,包括协议、sourceUNK ange和DestinationAddressPrefs。(以前这些字段的更改不会触发更新,因为负载均衡器认识不到已经发生了更改。)
Kuberentes 1.9下载地址:https://github.com/kubernetes/kubernetes/releases/tag/v1.9.0

原文作者:Mirantis
原文链接:https://www.tuicool.com/articles/q2EfamA

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容