易立,阿里云资深专家,目前负责阿里云容器服务和区块链服务研发。之前曾在IBM中国开发中心工作,担任资深技术专员。关注Docker/Kubernetes等云原生计算和Hyperledger Fabric/Ethereum等区块链技术。
根据在[CNCC 2022开源分布式云原生系统技术发展](https://ccf.org.cn/cncc2022/schedule_d_4075)论坛的演讲整理。 ![](https://ata2-img.oss-cn-zhangjiakou.aliyuncs.com/neweditor/08cde176-d1d3-49ae-a1f7-cc025d3f06f3.png) 在云计算技术快速发展的过
![](https://ata2-img.oss-cn-zhangjiakou.aliyuncs.com/neweditor/e2096947-f310-4ac5-a413-ec2b28b0e040.png) Docker Desktop是最为流行的开发者工具,Docker公司在 8/31 宣布对Docker Desktop的用户协议进行了变更,对个人开发者继续免费,但是对商业开发者采取了收费策
Docker Desktop 是 Windows 和 Mac 上最为流行 Docker 开发环境。是否有办法在Docker Desktop中,利用容器来使用eBPF呢?
![image.png](https://ata2-img.oss-cn-zhangjiakou.aliyuncs.com/145b98103c9bcd945b81c9463fab1867.png) 在2020年12月最新的 Docker 20.10 版本中,其中两个关键的特性发布揭示了容器运行时技术发展一些新方向。 首先是 Cgroup V2 已经被正式支持,虽然这个功能对最终用户很
本系列将和大家分享阿里云容器服务团队在云原生计算领域的探索和思考。我们今天将聚焦在云原生基础设施。
WebAssembly技术已经走出浏览器,让计算无处不在。利用containerd的扩展机制,可以为WebAssembly应用提供与其他容器应用一致的、抽象的、应用分发、交付和运维模型,可以在Kubernetes集群中进行统一调度和管理。
WebAssembly技术已经走出浏览器,让计算无处不在。利用containerd的扩展机制,可以为WebAssembly应用提供与其他容器应用一致的、抽象的、应用分发、交付和运维模型,可以在Kubernetes集群中进行统一调度和管理。
WebAssembly技术已经走出浏览器,让计算无处不在。利用containerd的扩展机制,可以为WebAssembly应用提供与其他容器应用一致的、抽象的、应用分发、交付和运维模型,可以在Kubernetes集群中进行统一调度和管理。
Kubernetes已经成为企业新一代云IT架构的重要基础设施,但是在企业部署和运维Kubernetes集群的过程中,依然充满了复杂性和困扰。我们对客户在规划集群过程中经常会遇见的问题,进行一些分析解答。试图缓解大家的“选择恐惧症”。
Kubernetes已经成为企业新一代云IT架构的重要基础设施,但是在企业部署和运维Kubernetes集群的过程中,依然充满了复杂性和困扰。我们对客户在规划集群过程中经常会遇见的问题,进行一些分析解答。试图缓解大家的“选择恐惧症”。
Kubernetes已经成为企业新一代云IT架构的重要基础设施,但是在企业部署和运维Kubernetes集群的过程中,依然充满了复杂性和困扰。我们对客户在规划集群过程中经常会遇见的问题,进行一些分析解答。试图缓解大家的“选择恐惧症”。
本周六在携程技术大会上分享了一篇 “拐点已至,云原生引领数字化转型升级”的演讲,整理记录如下。 ![image.png](https://ata2-img.cn-hangzhou.oss-pub.aliyun-inc.com/bff7dd828ee68b28158eeb8437e23a8c.png) 今天我会简单分享一下我们对云原生计算的理解,也会介绍云原生技术发展的4个技术趋势
![15721732905416.jpg](https://ata2-img.cn-hangzhou.oss-pub.aliyun-inc.com/33d7756f7f18d3e13c53235dbd45eb03.jpg) containerd是一个开源的行业标准容器运行时,关注于简单、稳定和可移植,同时支持Linux和Windows。2016年12月14日,Docker公司宣布将Docker
containerd是CNCF社区的一个开源的行业标准容器运行时,关注于简单、稳定和可移植,同时支持Linux和Windows。2019年2月,CNCF宣布containerd毕业,成为生产可用的项目。
在企业软件领域,Java依然是绝对王者。作为进击的巨人,Java技术在云原生时代也在不停地进化。
进入21世纪以来,我们见证了企业分布式应用架构从SOA(Service-oriented Architecture),到微服务架构,再到云原生应用架构的演化。在新技术迭起的今天,我们既要拥抱新技术带来的架构变化,更要加关注其背后的演进逻辑和核心价值,系统化地控制复杂性。
WebAssembly 是一种新的W3C规范,由于 WebAssembly 运行在轻量级的沙箱虚拟机上,在安全、可移植性上比原生进程更加具备优势。同时资源消耗小、启动速度快的特点也非常适合Serverless的场景。开发者们开始探索WebAssembly在Serverless的应用场景。
阿里云容器服务推出了边缘容器,支持云-边-端应用一体协同。本文将介绍一些简单的技术在X86环境来构建和测试ARM 容器应用,无需交叉编译,无需修改镜像。
Docker和Kubernetes已经成为企业IT架构的基础设施,安全容器运行时越来越被关注。近期Docker 19.03中发布了一个重要的特性 “Rootless Container”,在提升容器的安全隔离性和可管理性方面前进了一大步。
为云栖社区总监课系列准备的课件讲义,面向开发者入门向讲解云原生的一些实践经验和发展方向。本文介绍了阿里云上基于Kubernetes 和 Istio服务网格的一些实践经验和应用探索。
为云栖社区总监课系列准备的课件讲义,面向开发者入门向讲解云原生的一些实践经验和发展方向。本文介绍了阿里云上基于Kubernetes弹性伸缩的基本概念、实践经验和发展方向
11月13~15日,KubeCon 上海大会召开,云原生是这个秋天最火热的技术。很多同学来问如何上手 Kubernetes和Istio 服务网格开发。本文将帮助你利用Docker CE桌面版,15分钟在笔记本上从零搭建 Kubernetes + Istio开发环境,开启云原生之旅。
5月,阿里云宣布推出Serverless Kubernetes服务。开发者可在5秒内创建集群、30秒部署应用上线。用户无需管理集群基础设施,根据应用实际消耗资源按量付费;用户可以直接使用K8S API或命令行来管理容器应用,容器应用可以与VPC中现有应用和阿里云能力无缝集成。
在容器服务的客户群中,一个经常被问起的问题就是如何处理服务间依赖。本文介绍了常见的解决方法来实现服务的依赖检查,还进一步用示例展示了如何利用init container, liveness/readiness探针等技术实现服务健康检查,依赖检查等等功能。
这是本系列的第2篇内容,将介绍在Docker和Kubernetes环境中解决遗留应用无法识别容器资源限制的问题。
随着容器技术的成熟,越来越多的企业客户在企业中选择Docker和Kubernetes作为应用平台的基础。然而在实践过程中,还会遇到很多具体问题。本文分析并解决了Java应用在容器使用过程中关于Heap大小设置的一个常见问题。
Docker社区版已经提供了对Kubernetes的支持。但是由于其安装过程依赖的镜像服务在国内访问很不稳定,很多朋友都无法配置成功。我们提供了一个简单的工具帮助大家开启Kubernetes功能
Docker是众多用户上手入门的基础容器和编排工具,提供了良好的开发者体验。Kubernetes是强大的容器编排平台,功能丰富。它们有很多概念和操作都有类似之处。我们今天会和大家对比基本概念与常用命令,可以方便熟悉Docker的用户上手Kubernetes。
人脸识别技术已经被广泛应用在众多场景中。今天我们将利用Docker容器在树莓派上快速打造一个人脸识别应用。
如果需要自动化处理复杂的Kubernetes任务,常常需要编写Yaml配置文件。由于Yaml文件格式比较复杂,即使是老手有时也不免会犯错或需要查询文档,也有人开玩笑这是使用 Yaml 编程。我们今天将介绍几个方法来帮助大家来简化 Kubernetes Yaml 文件创建。
2017年5月,Google、IBM和Lyft发布了开源服务网格框架Istio,提供微服务的连接、管理、监控和安全保护。Istio提供了一个服务间通信的基础设施层,解耦了应用逻辑和服务访问中版本管理、安全防护、故障转移、监控遥测等切面的问题。
为了方便大家本地开发和体验Kubernetes,社区提供了可以在本机部署的Minikube。本文介绍利用阿里云的镜像地址在Windows/Mac/Linux上来部署和配置Minikube
在分布式系统中,经常需要利用健康检查机制来检查服务的可用性,防止其他服务调用时出现异常。自 1.12 版本之后,Docker 引入了原生的健康检查实现。本文将介绍Docker容器健康检查机制,以及在Docker Swarm mode下面的新特性
本文介绍了Docker企业版17.06中的新特性
Helm 是由 Deis 发起的一个开源工具,有助于简化部署和管理 Kubernetes 应用。本文将介绍Helm的基本概念和使用方式,演示在阿里云的Kubenetes集群上利用 Helm 来部署应用。
Docker Trusted Registry 是Docker企业版的重要组成部分,可以支持容器镜像管理,认证授权、安全扫描、数字签名等能力。本文将介绍如何在DTR 中配置OSS作为存储后端实现。
在今年4月份的DockerCon压轴的 Moby's Cool Hack Session上,Alex Ellis给大家展现了一个名为 Function as a Service (FaaS)的项目。FaaS基于Docker Swarm集群上实现了一个极简的Serverless框架,支持将任意Unix进程作为函数实现来对外提供服务。
Docker企业版基于社区版增加了面向企业的管理和安全能力,Docker企业版在国内由阿里云和Docker联合提供技术支持,为企业客户提供稳定、安全、可以信赖的容器应用平台。本文将介绍如何在阿里云上试用原汁原味的Docker企业版。
安全无小事,微服务架构的应用对容器集群中安全地管理和分发秘密提出了更大的挑战。通过Docker Secret和Docker编排可以非常简洁、优雅地解决这个问题,帮助您打造安全的云原生应用执行环境。
DockerCon上最大的新闻莫过于Solomon Hykes宣布Moby项目了,这也在网上引发了轩然大波,关切和争论纷至沓来。本文将介绍Moby项目的细节以及它和Docker产品之间的关系
DockerCon举办三年以来,Docker已经发生了巨大的变化,已经发展成为一个成熟的技术社区和值得信任的企业应用平台。
今年3月份,Docker公司宣布Docker企业版(Enterprise Edition, EE),并将开源版本重命名为Docker社区版(Community Edition, CE);同时公布了产品迭代计划
前文我们介绍过在本地Windows10环境中,基于Hyper V容器的Docker使用。现在阿里云已经提供了Windows Server 2016支持,我们来亲自体验一下原生的Windows Server容器吧。
经过了近6个月的磨砺,Docker 1.13在2017年1月发布,它标志着 Docker 内置编排能力的进一步成熟。本文将介绍Docker在编排方面的新进展。
在使用 Docker for Windows 时,遇到“executable file not found”和“no such file or directory”问题的原因与解决方法
本文将利用阿里云容器服务在几分钟内轻松搭建一个基于Docker的ownCloud专属网盘,并使用阿里云提供的OSS对象存储服务作为高可靠、低成本的云存储后端。
Maven是目前最流行的Java项目管理工具之一,提供了强大的包依赖管理和应用构建功能。本文以Maven为例介绍了Docker在应用构建中的一些常见技巧,包括如何加速构建,通过多阶段构建来减小镜像大小
前文谈到了云原生应用在部署架构中需要考虑的重要问题。文本将介绍一个常见的应用架构模式来提升应用的可用性和可伸缩性 - 分布式会话管理。并利用Docker和阿里云容器服务在本地和云端进行了示例应用的部署和验证。
最近对应用迁云的讨论很多,很多用户对云环境中的应用架构和运维方式还不了解。直接利用云服务器替换自有物理机并不是使用云的正确姿势。本文我们将介绍如何利用Docker和阿里云容器服务在云端实现应用的高可用。
最近微软发布了Windows Server 2016,其中最让广大开发者和运维同学期待的就是Docker对Windows容器的支持。如果你手边没有Windows Server 2016的环境,我们也可以在Windows 10 操作系统上,使用Docker for Windows来开始实验。
namespace做隔离
cgroup做资源限制
需要修改IPAM,可以考虑参考Terway https://github.com/AliyunContainerService/terway
支持StatefulSet环境Pod的IP sticky
建议在VPC网络下使用,或者使用阿里云容器服务Swarm提供了上述问题的解决方案
K8s安全是一个比较复杂的问题,请参见 https://help.aliyun.com/document_detail/86788.html 阿里云K8s服务的安全指南
一般而言 302 是临时重定向的意思,需要客户端响应发送 GET 请求到 Location header,
但是,不建议对POST请求发送 302作为响应,也不建议客户端对这个响应进行处理。这个不符合HTTP规范
Note: RFC 1945 and RFC 2068 specify that the client is not allowed to change the method on the redirected request. However, most existing user agent implementations treat 302 as if it were a 303 response, performing a GET on the Location field-value regardless of the original request method. The status codes 303 and 307 have been added for servers that wish to make unambiguously clear which kind of reaction is expected of the client.
请参考, https://www.docker-cn.com/use-cases
进阶学习请参考, 阿里云容器服务团队博客 https://yq.aliyun.com/teams/11
重启的原因是什么?
没有问题,开发环境建议2C 4G以上
不用担心,到了阈值,Kubelet会自动清理无用镜像
社区版即可
helm是客户端
tiller是服务器端,部署是tiller在交互
haproxy简单一些
和网络模式选择有有关,
如果是Docker网络,docker0 mtu配置应该小于eth0
对于K8s网络,比如Calico https://docs.projectcalico.org/v3.5/usage/configuration/mtu
这个与应用自身特性相关,如果应用具有水平扩展能力可以使用多个复本+弹性伸缩方式,否则应该根据应用负载合理设置资源限制
欢迎使用阿里云容器服务 https://www.aliyun.com/product/containerservice
您也可以在容器团队博客看到很多在ECS上使用 Docker 的用例,https://yq.aliyun.com/teams/11
下面的文章介绍了如何利用Docker或阿里云容器服务,部署Java应用
https://yq.aliyun.com/articles/6894
目前是不收费的