Cloud Native Weekly | Kubernetes 1.13发布

时间:2022-09-19 22:13:58

云原生一周精选

1——Kubernetes 1.13发布

2——Kubernetes首次出现重大安全漏洞

3——Docker和微软公司推出云原生应用的部署规范

4——谷歌推出beta版本的Cloud SCC

1 Kubernetes 1.13发布

Kubernetes在上周发布1.13版本,该版本继续关注Kubernetes的稳定性和可扩展性。在这个版本中,用于简化集群管理的kubeadm,容器存储接口(CSI)实现GA,CoreDNS替代kube-dns成为默认DNS。

1.1 使用kubeadm简化集群管理

大多数与Kubernetes亲密接触的人在某些时候都会亲自动手使用kubeadm。它是管理集群生命周期的重要工具,从创建到配置再到升级; 现在kubeadm正式成为GA。kubeadm处理现有硬件上的生产集群的引导,并以最佳实践方式配置Kubernetes核心组件,以便为新节点提供安全而简单的连接流程并支持轻松升级。这个GA版本值得注意的是现在已经毕业的高级功能,特别是可插拔性和可配置性。kubeadm旨在成为管理员和自动化的高级别系统的工具箱,这个版本是朝这个方向迈出的重要一步。

1.2 容器存储接口(CSI)

容器存储接口(CSI)在v1.9中作为alpha版本引入,在v1.10成为beta,在v1.13实现GA。通过CSI,Kubernetes存储变得真正可扩展。这为第三方存储提供商提供了编写与Kubernetes互操作而无需触及核心代码的插件的机会。这个规范本身也达到了1.0的状态。

随着CSI变得稳定,开发者可以按照自己的节奏,以out-of-tree的方式开发存储插件。 您可以在CSI文档中找到样例和产品驱动程序的列表。

1.3 CoreDNS成为默认DNS

CoreDNS在v1.11中实现GA。在v1.13中,CoreDNS替换kube-dns成为Kubernetes的默认DNS服务器。CoreDNS是一个通用的、权威的DNS服务器,提供与Kubernetes向后兼容但可扩展的集成。CoreDNS比以前的DNS服务器具有更少的移动部件,因为它是单个可执行文件和单个进程,并通过创建自定义DNS条目来支持灵活的用例。它也用Go编写,使其内存安全。

CoreDNS现在是Kubernetes 1.13+推荐的DNS解决方案。该项目已将常用测试基础架构切换为默认使用CoreDNS,建议用户进行切换。KubeDNS仍将至少支持到下一个版本,但现在是时候开始规划迁移了。许多OSS安装工具已经进行了切换,包括1.11中的Kubeadm。如果您使用托管解决方案,请与您的供应商合作,以了解这将如何影响您。

1.4 其他值得关注的功能更新

对第三方设备监控插件的支持已经作为alpha功能引入。这将从kubelet中删除当前设备相关的知识,以使将来设备相关的用例变为out-of-tree。

Kubelet设备插件注册逐渐稳定。这创建了一个通用的Kubelet插件发现模型,可以由不同类型的节点级插件(例如设备插件,CSI和CNI)用于与Kubelet建立通信通道。

拓扑感知卷调度现在是稳定的。这使调度器能够识别Pod的卷的拓扑约束,例如zone或node。

APIServer DryRun升级为测试版。这将“应用”和声明性对象管理从kubectl移动到apiserver,以便修复当前无法修复的许多现有bug。

Kubectl Diff升级为测试版。这允许用户运行kubectl命令来查看本地声明的对象配置与活动对象的当前状态之间的差异。

使用持久卷的原始块设备(Raw block device)升级为测试版。这使得原始块设备(非网络设备)可通过持久卷源进行消费。

2 Kubernetes 首次出现重大安全漏洞

Kubernetes出现了一个重大的的特权升级漏洞(CVE-2018-1002105)。攻击者通过构造特殊请求,可以在一个普通权限的链接上提升权限,向被代理的后端服务器发送任意请求。

该问题影响了几乎Kubernetes目前所有的版本,包括:

Kubernetes v1.0.x-1.9.x

Kubernetes v1.10.0-1.10.10 (fixed in v1.10.11)

Kubernetes v1.11.0-1.11.4 (fixed in v1.11.5)

Kubernetes v1.12.0-1.12.2 (fixed in v1.12.3)

2.1 什么样的集群可能被攻击?

集群启用了扩展API server,并且kube-apiserver与扩展API server的网络直接连通;

集群对攻击者可见,即攻击者可以访问到kube-apiserver的接口,如果你的集群是部署在安全的私网内,那么不会有影响;

集群开放了 pod exec/attach/portforward 接口,则攻击者可以利用该漏洞获得所有的kubelet API访问权限。

2.2 具体影响的场景

集群使用了聚合API,只要kube-apiserver与聚合API server的网络直接连通,攻击者就可以利用这个漏洞向聚合API服务器发送任何API请求;

如果集群开启了匿名用户访问的权限,则匿名用户也利用这个漏洞。不幸的是K8s默认允许匿名访问,即kube-apiserver的启动参数”-- anonymous-auth=true”;

给予用户Pod的exec/attach/portforward的权限,用户也可以利用这个漏洞升级为集群管理员,可以对任意Pod做破坏操作;

Kubernetes已发布更新以解决该漏洞(v1.10.11,v1.11.5和v1.12.3)。

更多信息见社区Issue:

https://github.com/kubernetes/kubernetes/issues/71411

3 Docker和微软推出云原生应用部署规范

根据微软的新闻稿,微软和Docker联合宣布了一个新项目,旨在创建“一个用于打包和运行分布式应用程序的开源,云无关的规范”。

该项目的名称为云原生应用程序包(Cloud Native Application Bundle,CNAB),为开发人员提供了一种标准方法,可以在许多计算环境中打包和运行容器化应用程序,从工作站上的Docker到云实例中的Kubernetes。

CNAB的规范描述了构成应用程序的“包”或资源组。应用程序包还描述了如何安装,升级或删除应用程序,以及如何在不同环境之间移动应用程序,即使目标环境不在线(例如气隙系统)。微软宣称,即使底层技术本身不支持,也可以对应用程序包进行数字签名和验证。应用程序包可以部署在组织内部,也可以通过现有的分发系统(比如Docker Hub和DockerTrustRegistry)进行部署。

在容器环境中创建应用程序包的技术已经存在,例如Kubernetes的Helm,它描述了如何组合多个容器来定义应用程序堆栈。 CNAB针对的是更为全面的用例集,它不仅适用于Kubernetes,还适用于部署和管理容器的其他系统。

CNAB的另一个既定目标是减少创建应用程序定义所需的工具数量。 CNAB定义可以自动生成特定于部署目标的定义文件(例如,Helm图表或Compose模板),以便用户无需掌握多个工具集即可部署到多个目标。

Docker和微软都计划发布CNAB的开发工具。微软宣布将提供Visual Studio代码扩展,以便更容易创建CNAB包,以及实现CNAB规范的开源示例(“Duffle”)。 Docker打算将CNAB支持添加到Docker App工具的新版本中,以便可以在Docker Enterprise的实例中维护CNAB定义的应用程序。

4 谷歌推出beta版本的Cloud SCC

谷歌近日推出了一项新的测试版本的安全服务,作为信息技术团队的集中门户,统一安全漏洞数据,并在任何损害发生之前对潜在威胁采取行动。

该公司表示,Cloud SCC(Cloud Security Command Center)的测试版的发布使其成为第一家为漏洞和威胁提供“组织级可见性”的公有云提供商。

Cloud SCC于3月份启动alpha版本。当时,谷歌将其描述为云的“安全和风险平台”,通过收集数据和识别潜在威胁,防止它们造成任何损害。通过整合对App Engine,计算引擎,云存储和云数据存储等服务的可视性,它可以帮助管理员了解这些环境中的任何更改并减少未经授权的更改。

Cloud SCC的beta版涵盖了其他服务,包括云数据存储,云DNS,云负载平衡,云量计,容器注册,Kubernetes引擎和虚拟私有云。它还增加了新功能,包括13个新的身份访问管理角色,可用于控制对Google云资源的访问。

“借助Cloud SCC,您可以查看和监控云资产清单,发出安全异常警报,扫描云存储以发现存储敏感数据的位置,检测常见Web漏洞以及查看关键资源的访问权限,所有都通过一个集中的数据平台和仪表盘,Google产品经理Andy Chang在博客文章中写道。

Chang接着解释了可以使用Cloud SCC改善公司安全状况的三种方式。第一种方法是通过识别可公开访问的云存储桶或具有可能暴露给未授权人员的公共地址的虚拟机来发现潜在的安全风险。

Cloud SSC还允许管理员查看和处理对谷歌云平台资产所做的更改。 该服务执行持续的发现扫描,允许用户查看其资产历史记录,以准确了解其环境中发生的变化,并对未经授权的修改采取行动。

Chang表示,Cloud SSC可以与其他安全服务集成,其中包括Google的Data Loss Prevention API,Forseti和Cloud Security Scanner工具,以及来自Cavirin Systems,Cloudflare和Redlock等公司的第三方安全产品。

“通过将合作伙伴解决方案与Cloud SSC集成,您可以在一个地方全面了解风险和威胁,而无需单独使用控制台,”Chang说。

Cloud Native Weekly | Kubernetes 1.13发布的更多相关文章

  1. Cloud Native Weekly | 华为云抢先发布Redis5.0,红帽宣布收购混合云提供商 NooBaa

    1——华为云抢先发布Redis5.0 2——DigitalOcean K8s服务正式上线 3——红帽宣布收购混合云提供商 NooBaa 4——微软发布多项 Azure Kubernetes 服务更新 ...

  2. Cloud Native Weekly | KubeCon首登中国,华为云亮相KubeCon 2018,微软云服务又罢工

    1.KubeCon首登中国,Kubernetes将如何再演进? 11月14日,由CNCF发起的云原生领域全球最大的峰会之一KubeCon+CloudNativeCon首次登陆中国,中国已经成为云原生领 ...

  3. Cloud Native Weekly |面对云平台宕机,企业如何止损

    KubeEdge v0.2发布 KubeEdge在18年11月24日的上海KubeCon上宣布开源的一个开源项目,旨在依托K8S的容器编排和调度能力,实现云边协同.计算下沉.海量设备的平滑接入. Ku ...

  4. 大咖云集!Kubernetes and Cloud Native Meetup 深圳站开始报名!

    由阿里技术生态联合 CNCF 官方共同出品的 Kubernetes & Cloud Native Meetup 将在 8 月 31 日来到深圳.届时,阿里云.蚂蚁金服高级技术专家将携手来自国内 ...

  5. 基于Kubernetes 的Cloud Native 实战 培训课程安排

    课程安排: 基于Kubernetes 的Cloud Native 实战 课程介绍: 云计算.虚拟化.容器微服务PaaS 技术已经广泛应用于新兴互联网企业(如电商平台.搜索引擎.社交平台网站.位置服务平 ...

  6. 一篇文章带你了解Cloud Native

    背景 Cloud Native表面看起来比较容易理解,但是细思好像又有些模糊不清:Cloud Native和Cloud关系是啥?它用来解决什么问题?它是一个新技术还是一个新的方法?什么样的APP符合“ ...

  7. 微软推出了Cloud Native Application Bundles和开源ONNX Runtime

    微软的Microsoft Connect(); 2018年的开发者大会 对Azure和IoT Edge服务进行了大量更新; Windows Presentation Foundation,Window ...

  8. Dubbo x Cloud Native 服务架构长文总结(很全)

    Dubbo x Cloud Native 服务架构长文总结(很全) mercyblitz SpringForAll社区 3天前 分享简介 Cloud Native 应用架构随着云技术的发展受到业界特别 ...

  9. [追热点]了解 Cloud Native 云原生

    起源和发展 Pivotal 是云原生应用的提出者,并推出了 Pivotal Cloud Foundry 云原生应用平台和 Spring 开源 Java 开发框架,成为云原生应用架构中先驱者和探路者. ...

随机推荐

  1. 总结sqlserver数据库性能优化相关的注意事项

    一.分析阶段一般来说,在系统分析阶段往往有太多需要关注的地方,系统各种功能性.可用性.可靠性.安全性需求往往吸引了我们大部分的注意力,但是,我们必须注意,性能是很重要的非功能性需求,必须根据系统的特点 ...

  2. hdu3507

    题意: 给n(n<=10^6)个非负数字,放在一个数组num中,再给一个特殊值m.求将这个数组分成任意多个区间,每个区间[a,b]的值定义为( sigma(num[i] | (a<=i&l ...

  3. C&num;--遍历目录实例

    鉴于前面几篇博客都说了,这边就啥都不说了.直接就開始贴代码了. 1.控件解释: FolderBrowserDialog控件一个----用来显示"浏览目录"对话框 TextBox控件 ...

  4. OC-Protocol实现业务代理

    创建一个Protocol,相当于java的接口,但,有些方法不必实现,例如以下 #import <Foundation/Foundation.h> @protocol MyProtocol ...

  5. 【Java每日一题】20170116

    20170113问题解析请点击今日问题下方的"[Java每日一题]20170116"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; ...

  6. C&num;的发展历程第五 - C&num; 7开始进入快速迭代道路

    C# 7开始,C#加快了迭代速度,多方面的打磨让C#在易用性,效率等各方面都向完美靠近.另外得益于开源,社区对C#的进步也做了很大共享.下面带领大家看看C# 7的新特性.其中一部分是博主已经使用过,没 ...

  7. 6&period; VIM 系列 - 全局搜索&lpar;ctrlsf&period;vim&rpar;

    目录 全局搜索利器 ag.vim 更强大的全局搜索利器 ctrlsf.vim 全局搜索利器 ag.vim 终端上安装ag: sudo apt install silversearcher-ag vim ...

  8. CentOS 7 zabbix添加监控服务器

    CentOS 7 yum安装zabbix 设置中文界面 安装环境 CentOS 7  关闭防火墙和SElinux 在被监控端安装zabbix-agent [root@zabbix-agent ~]# ...

  9. 一窍懂PID

    这是学习PID时的理解,做个笔记! 一:首选,说一下一些基本概念,为了更好理解. PID:就是对输入偏差进行比例积分微分运算,运算的叠加结果去控制执行机构. P(proportion):比例,就是对输 ...

  10. mfc01

    1.解决不能将参数1从“const char []”转换为“LPCTSTR” ,使用多字节字符集.