相信任何一位关注IT动态的朋友都已经意识到,容器技术已然成为业界增长最快的成果之一。我们对于这一趋势感到振奋,并不断强化Google Cloud Platform(简称GCP)以确保其能够成为理想的容器运行平台。
目前市面上存在着众多出色的容器托管型操作系统,我们也对客户拥有如此丰富的方案选项感到高兴。不过仍有不少客户表示,尽管他们已经拥有自己的虚拟机方案,但其同样希望选择谷歌所使用的镜像,从而确保其能够拥有与各项谷歌服务相同的优化收益。
去年春季,我们发布了容器优化型操作系统(即Container-Optimized OS,此前曾被称为Container-VM镜像)的beta测试版本,其专门进行了优化以在GCP之上运行各类容器。我们利用容器优化型操作系统运行谷歌内部的多种产品服务(例如Google Cloud SQL以及Google Container Engine等等)。
今天,我们宣布容器优化型操作系统已经正式推出。这意味着如果您身为Compute Engine服务的用户,则可立即利用这套操作系统创建虚拟机实例(请参阅本文文末的示例),从而实现Docker容器“开箱即用”。
容器优化型操作系统代表着我们过去十年中以规模化方式运行容器时总结出的全部最佳实践:
-
受控构建/测试/发布周期
:容器优化型操作系统的核心优势在于能够确保用户全面控制构建、测试与发布周期,并为GCP客户(包括谷歌自有服务)提供强化型内核功能与托管更新。发布可通过三种不同渠道实现(包括开发、beta与稳定版本),其各自拥有不同的早期访问与稳定性级别,可进一步提升迭代与发布周期的推进速度。
-
容器就绪型设计
:容器优化型操作系统预安装有Docker容器运行时,同时支持Kubernetes以实现面向容器的超大规模部署与管理能力(即容器编排)。
-
在设计中充分考虑安全性需求
:容器优化型操作系统在设计中充分考虑安全性需求。其最小化只读root文件系统能够有效削减攻击面,同时包含文件系统完整性检查机制。我们还在其中添加了锁定防火墙与审计日志记录功能。
用户能够在Compute Engine之上通过容器优化型操作系统轻松实现虚拟机实例创建。大家可选择使用Google Cloud控制台GUI或者gcloud命令行工具,具体方法如下:
gcloud compute instances create my-cos-instance \
--image-family cos-stable \
--image-project cos-cloud{% for service in services %} listen {{ service }} bind *:{{services[service].port}} {% for backend in services[service].backends %} server {{ backend.name }} {{ backend.addr }} check inter 2s rise 3 fall 2{% endfor %} {% endfor %}
在实例创建完成之后,大家即可马上运行自己的容器。举例来说,您可以在刚刚创建完成的实例中通过以下命令运行一套Nginx容器:
gcloud compute ssh my-cos-instance -- "sudo docker run -p 80:80 nginx"