写点什么

云原生生态周报 Vol. 3:Docker Hub 遭入侵,Java 8 开始提供良好的容器支持

  • 2019-05-04
  • 本文字数:3365 字

    阅读完需:约 11 分钟

云原生生态周报 Vol. 3:Docker Hub遭入侵,Java 8 开始提供良好的容器支持

前言

《云原生生态周报》由阿里云容器平台联合蚂蚁金服共同发布,每周一期。众多一线社区专家与您一起“跟踪动态,读懂社区”,分享云原生社区项目进展、活动发布、精选博客等信息。以下是第三期云原生生态周报的内容。

业界要闻

  1. Docker Hub遭入侵,19万账号被泄露 : 4 月 25 日 Docker 官方邮件曝露,因为 Hub 的一个数据库收到非授权访问,影响了约 19 万用户的用户名和哈希后的密码,以及用户自动构建的 Github 和 Bitbucket Token。Docker 公司建议用户修改其登录密码。如果您在公有云上的应用依赖于来自 Docker Hub 的镜像,我们强烈建议您登录容器服务控制台更新相应的 docker login 信息或 kubernetes secret。此外,阿里云容器镜像服务企业版提供网络访问控制、独享 OSS Bucket 加密存储等安全加固功能,最大程度保障您的镜像仓库的安全。

  2. Java 8 终于开始提供良好的容器支持长久以来,容器 和 Java 就像一对“欢喜冤家”。一方面,容器技术的“不可变基础设施”特性为开发者带来了无比宝贵的依赖与环境一致性保证;但另一方面, Linux 容器通过 Cgroups 对应用进行资源限制的方式跟所有依赖于 JVM 进行资源分配的编程语言都产生了本质的冲突。而就在上周,最近发布的 OpenJDK 镜像 openjdk:8u212-jdk 终于能够让 Java 8 运行时在容器里面为应用分配出合理的 CPU 数目和堆栈大小了。自此,发布 Java 容器应用的痛苦经历,可能要一去不复返了。

  3. Snyk 年度安全报告出炉,容器安全问题形势空前严峻知名开源安全厂商 Snyk 在年初发布了 2019 年度安全报告。报告中指出:“随着容器技术在 2019 年继续在 IT 环境中爆发式增长,针对容器安全的威胁正在迅猛增加,任何一家企业现在都必须比以往更加重视容器镜像安全,并将此作为企业的首要任务”。报告详情,请点击此处查看全文

上游重要进展

Kubernetes 项目


  1. Kubernetes 集群联邦 v1(Federation v1) 正式宣布废弃。K8s 社区近日宣布将 Federation v1 代码库正式废弃。Federation v1 即 Kubernetes 项目原“集群联邦”特性,旨在通过一个统一的入口管理多个 Kubernetes 集群。但是,这个特性逐步被设计成了在多个 Kubernetes 集群之上构建一个 “Federation 层”的方式来实现,从而背离了 Kubernetes 项目的设计初衷。最终,在 RedHat、CoreOS、Google 等多位社区成员的推动下,社区开始全面拥抱 Federation v2一个完全旁路控制、以 K8s API 为核心的多集群管理方案。

  2. Kubernetes 1.15 进入发布节奏 K8s 1.15 发布进入日程,5 月 30 日即将 Code Freeze(即:不接受任何功能性 PR)。

  3. [KEP] Ephemeral Containers KEP 合并,进入编码阶段

  4. Ephemeral container 旨在通过在 Pod 里启动一个临时容器的方式,来为用户提供对 Pod 和容器应用进行 debug 和 trouble shooting 的能力。这种通过“容器设计模式”而非 SSH 等传统手段解决运维难题的思路,对于“不可变基础设施”的重要性不言而喻,阿里巴巴在“全站云化”过程中也采用了同样的设计来解决类似问题。在上游完成该功能的编码实现后,会通过 kubectl debug 命令方便用户直接使用。


Knative 项目


  1. Knative 逐步弃用原 Build 项目。按照计划,Tektoncd/Pipeline 子项目已经在 v0.2.0 时移除了对 Build 的依赖。最近,Knative Serving v1beta1 也移除了对 Build 的依赖,目前,社区已经开始制定弃用 Build 的确切方式并通知到 knative 开发者社区。

  2. knative 正在考虑为事件触发(Trigger)引入更高级的规则和策略。 社区正在就 Advanced Filtering 设计一个 提案。该提案提议基于 CEL (Google 维护的一种表达式语言)来进行事件的过滤。具体来说,Trigger 的 filter 字段会增加一个 Spec 字段,然后在 Spec 字段下使用 CEL 语法完成对事件的过滤规则定义。


Istio/Envoy 项目


  1. Envoy正通过ORCA改善负载均衡的精准度

  2. 目前 Envoy 可以用于进行负载均衡决策的信息主要是权重和连接数等信息,为了能让 Envoy 的负载均衡更加精准需要为 Envoy 提供更多的决策因素。比如本地和远程机器的负载情况、CPU、内存等信息,更复杂的还可以利用应用程序特定的指标信息来进行决策,比如队列长度。而 ORCA 的目的是定义 Envoy 和上游代理之间传递这些信息的标准。该功能的提出者希望 ORCA 可以成为 Universal Data Plane API (UDPA)。

  3. Envoy正引入RPC去代替共享内存机制以便提高统计模块的的扩展性

  4. Envoy 当下通过共享内存的方式来保存 stats 数据的这种方式存在很多局限性,比如需要限制 stats 使用固定的内存大小,当有大量集群的时候没办法扩展。这给他升级 stats 子系统的架构带来了不少的阻碍。因此他希望可以通过将 stats 数据以堆内存的方式来保存,然后通过 RPC 在新老进程中传递。

  5. Envoy正在xDS协议中增加VHDS协议减小动态路由信息的更新粒度

  6. 现状是,Envoy 中的路由配置是通过 RDS 来动态更新的,但是 RDS 的粒度太粗了,包含了一个 Listener 下所有的路由配置信息。由于一个 Listener 下面可能会有多个服务,每一个服务对应一个 Virtual Host,因此在更新路由的时候,如果只是其中一个 Virtual Host 更新了,那么会导致所有的路由配置都重新下发而导致通讯负荷偏重。引入 VHDS 就是为了只下发变化的路由信息,从而将更新的路由配置信息量缩小。


Containerd 项目


  1. Non-root用户运行 containerd 近日,社区正在尝试实现无需 root 权限就可以运行 containerd 的能力。在这种场景下,用户可以提前准备好容器所需要的 rootfs ,但是 containerd 服务端在清理容器时依然会尝试去 unmount rootfs,对于没有 root 权限的 containerd 进程而言,该步骤必定会失败(mount 操作必须要有 root 权限)。目前 Pivotal 的工程师正在解决这个问题,这种 non-root 模式可以为解决云上安全问题提供新的思路,

开源项目推荐

  1. 本周,我们向您推荐 kubeCDN 项目

  2. kubeCDN 项目是一个基于 Kubernetes 实现的自托管 CDN 方案,只要将它部署在分布在不同地域(Region) 的 Kubernetes 集群上,你就拥有了一个跨地域进行内容分发的 CDN 网络。而更重要的是,通过 kubeCDN,用户不再需要第三方的内容分发网络,从而重新控制了原本就属于自己的从服务器到用户设备的数据流。kubeCDN 目前只是一个个人项目,但是这里体现出来的思想确实至关重要的:在不久的未来,每一朵云、每一个数据中心里都会布满 Kubernetes 项目,这将会成为未来云时代基础设施的“第一假设”。 推荐你阅读 InfoQ 的解读文章来进一步了解 kubeCND。

本周阅读推荐

  • 《Knative 入门——构建基于 Kubernetes 的现代化 Serviceless 应用》中文版,这是一本 O’Reilly 出品的免费电子书,已经由 servicemesher 社区组织完成翻译。提供 在线阅读PDF下载

  • 信通院发起的云原生产业联盟出具《云原生技术实践白皮书》,白皮书系统性地梳理了云原生概念、关键技术、应用场景、发展趋势及实践案例。PDF链接

  • 阿里云 PB 级 Kubernetes 日志平台建设实践》Kubernetes 近两年来发展十分迅速,已经成为容器编排领域的事实标准,但是 Kubernetes 中日志采集相对困难。本文来自 InfoQ 记者的采访,文中谈及了如何让使用者专注在“分析”上,远离琐碎的工作。

  • Istio Observability with Go, gRPC, and Protocol Buffers-based Microservices》,这是一篇很长的博文,介绍可以与 Istio 相适配的观测性组件,用实际的例子演示了如何对以 Go 语言、Protobuf 和 gRPC 为基础的微服务框架进行全面的观测。如果你还对 Prometheus、Grafana、Jaeger 和 Kiali 这几个组件感到既熟悉又陌生,并且好奇如何把它们组合在一起使用来提升微服务的可观测性,这个博客的内容应该会对你很有帮助。

  • 云原生的新思考:为什么说容器已经无处不在了?》这篇文章在对云原生技术总结的同时,对未来应用趋势走向进行了展望。“云原生不但可以很好的支持互联网应用,也在深刻影响着新的计算架构、新的智能数据应用。以容器、服务网格、微服务、Serverless 为代表的云原生技术,带来一种全新的方式来构建应用。”

  • 名词解释:KEP - Kubernetes Enhancement Proposal, 即 Kubernetes 上游设计文档




本周报由阿里巴巴容器平台联合蚂蚁金服共同发布


本周作者:张磊,临石,浔鸣,天千,至简,傅伟,汤志敏, 王夕宁


责任编辑:木环




前期周报回顾


云原生生态周报 Vol. 2 | Istio中Envoy 代理漏洞已修复


云原生生态周报 Vol. 1 | 谷歌云发布Cloud Run


2019-05-04 10:006058
用户头像

发布了 40 篇内容, 共 27.1 次阅读, 收获喜欢 142 次。

关注

评论

发布
暂无评论
发现更多内容

从零开发区块链应用(四)--自定义业务错误信息

杰哥的技术杂货铺

(1-15/15) 预训练模型+微调范式下如何做到文本数据安全

mtfelix

300天创作 2022Y300P

模块 5 作业

miliving

Spring中部署Activiti流程定义的三种姿势

华为云开发者联盟

spring 工作流 Activiti流程 Activiti框架 Activiti Explorer

2022AJAX常见面试题分享

编程江湖

ajax

从零开发区块链应用(三)--mysql初始化及gorm框架使用

杰哥的技术杂货铺

Go 语言快速入门指南:Go 结构体

宇宙之一粟

Go 语言 结构体 1月月更

1月月更|推荐学java——Spring集成MyBatis

逆锋起笔

mybatis ssm Spring Framework spring aop spring+mybatis

带你读AI论文丨RAID2020 Cyber Threat Intelligence Modeling GCN

华为云开发者联盟

网络威胁情报 CTI 异构信息网络 GCN HINTI

HarmonyOS工程【鸿蒙开发02】

坚果

鸿蒙开发 1月月更

ReactNative进阶(二十四):react-native-scrollable-tab-view 标签导航器组件详解

No Silver Bullet

1月月更 ReactNative 标签导航

Spring的底层实现机制

编程江湖

Spring JPA

社区知识库|常见问答 FAQ 集合第 4 期:消息保留及延迟、Broker、Pulsar 权限等相关问题

Apache Pulsar

架构 云原生 开源社区 消息中间件 Apachepulsar

社区知识库|常见问答 FAQ 集合第 3 期:Topic 数量、Broker 设置等相关问题

Apache Pulsar

分布式 云原生 Apache Pulsar 开源社区 消息中间件

Tcp网络模型

你?

低代码实现探索(二十四)业务的领域可视化构思

零道云-混合式低代码平台

从零开发区块链应用(一)--golang配置文件管理工具viper

杰哥的技术杂货铺

golang 区块链

社区知识库|常见问答 FAQ 集合第 2 期:Topic 配置、ACK 等问题的解决

Apache Pulsar

架构 云原生 Apache Pulsar 开源社区 消息中间件

只有天空才是你的极限,我们热爱探索的过程并沉浸其中丨图数据库 TiMatch 团队访谈

PingCAP

Linux之date命令

入门小站

Linux

从零开发区块链应用(二)--mysql安装及数据库表的安装创建

杰哥的技术杂货铺

SIG技术直播来了!技术专家教你,如何使用 iLogtail 采集可观测数据?

OpenAnolis小助手

Linux 开源 数据 直播 采集

web技术分享| 白板SDK之函数和方程式的运用

anyRTC开发者

前端 音视频 视频会议 白板 web技术分享

博文推荐|Apache Pulsar: 统一消息流平台

Apache Pulsar

开源 云原生 broker Apache Pulsar 消息中间件

前端开发之样式调试

@零度

前端开发

设计模式【11】-- 搞定组合模式

秦怀杂货店

Java 组合模式

详解 Flink 中 Time 与 Window

五分钟学大数据

flink 1月月更

博文推荐|深入解析Apache BookKeeper 系列:第一篇 — 架构原理

Apache Pulsar

开源 架构 云原生 中间件 Apache Pulsar

HTTP跨域小结

wong

nginx HTTP cros

Form 表单在数栈的应用(下):深入篇

袋鼠云数栈

前端

鸿蒙开发初体验【鸿蒙01】

坚果

鸿蒙 1月月更

云原生生态周报 Vol. 3:Docker Hub遭入侵,Java 8 开始提供良好的容器支持_容器_张磊_InfoQ精选文章