客户需要安装一套工具来有效地管理容器化应用程序的生命周期,这些工具构成容器管理平台核心组成部分。这种模式的平台变得越来越普遍,对于部署和管理生产级容器,至关重要。
操作系统
容器减少应用程序对底层操作系统的依赖性。运行容器的工作负载喜欢选择轻量级的操作系统,像CoreOS和RedHat Atomic Host,降低基础设施的管理成本。
容器引擎
容器引擎管理特定主机或节点上运行的容器的生命周期,编排工具和容器引擎共同调度管理集群节点的容器。Docker和rkt是两种容器引擎。
镜像仓库
镜像仓库是容器镜像的存储库。运行时编排引擎可以通过镜像仓库安全访问镜像。Docker的Trusted Registry,CoreOS的Quay Enterprise和JFrog的Artifactory都是可选择的镜像仓库。
镜像安全
镜像是容器平台非常重要的基础,需要扫描镜像的脆弱性和潜在威胁。CoreOS的Clair、Twistlock和OpenSCAP可以用于镜像扫描。
容器编排
这是管理容器工作负载的最重要部分。它提供分布式容器管理和容器调度服务。Kubernetes,Docker原生编排Swarm及Mesosphere DC/OS提供容器编排和容器管理。
分布式存储
容器需要一种新的分布式存储来管理有状态的工作负载。产品如ClusterHQ、Portworx、Joyent Manta和Diamanti提供容器存储。
监测
生产级工作负载需要不断的查看应用的状态和健康。容器监测解决方案包括基础设施监控和运行容器的监控。Datadog、Sysdig、Prometheus提供容器监控服务。
日志
通过日志分析,可以了解容器及其主机的性能、稳定性和可靠性。同任何生产的工作负载一样,日志是非常重要的。Splunk、Loggly、Logentries提供容器日志服务。
代码管理
代码管理(SCM)通常用于维护代码版本,同时,对容器化工作负载(如:镜像和Kubernetes对象)的版本也起着重要的作用。现有的SCM解决方案,如GitHub,Bitbucket和Gitlab,可以用于管理代码和容器化工作负载。
构建自动化
容器镜像作为构建CI/CD管道的一部分。通过利用现有的工作流和创建自动化管道,客户可以实现容器化应用的自动部署。专业CI/CD的工具,如Shippable,或现有的工具,像Jenkins,都可以用来扩展,作为容器化应用的自动化部署工具。
配置管理
传统的配置管理工具已经扩展支持容器。客户能混合和匹配容器化和虚拟化技术,使用统一的工具提供创建、配置、部署和管理应用程序。Chef、Puppet、Ansible和SaltStack已经增加了容器的支持,可以利用现有的playbooks和recipes管理容器化应用。
网友评论