使用 Helm 图表安装和管理 Contrail 微服务架构
从 Contrail 版本 1912.L1 开始,Helm 支持在 Contrail 网络中不可用。本文档中的 Helm 支持内容支持 Contrail 网络版本 1907 到 1912。
本节概述了在安装具有微服务架构的 Contrail 时使用 Helm 图表。Contrail Helm 图表与 OpenStack Helm 协同工作,实现 OpenStack Contrail 部署。有关 Contrail 微服务的介绍,请参阅 了解 Contrail 微服务架构。
了解 Helm 图表
Helm 是 Kubernetes 的包管理器,Kubernetes 是一款用于管理容器化系统的开源软件。Helm 使用的打包格式是一个图表,一个描述一组相关 Kubernetes 资源的文件集合。Helm 图表使您能够定义、安装和配置 Kubernetes 应用程序。图表可用于部署简单的东西,如memcached pod,或复杂的东西,如完整的Web应用程序堆栈,包括HTTP服务器,数据库等。
通过 Contrail Helm 图表,您可以对微服务架构中基于 Contrail Docker 的容器的安装、更新和删除进行完整的生命周期管理。
Contrail Helm 部署程序支持为 OpenStack 部署 Contrail。
Contrail Helm Deployer 图表
Contrail Helm 部署程序使用以下图表。
Helm-工具包图表
包含其他每个 Contrail Helm 图表使用的常见模板和函数。
Contrail-第三方图表
将第三方容器定义并部署为 Contrail 的 Kubernetes 资源,包括:
兔子MQ
动物园管理员
卡桑德拉
卡 夫 卡
雷迪斯
Contrail 控制器图表
将 Contrail 组件部署和管理为 Kubernetes 资源,包括:
控制
配置
韦布伊
Contrail 分析图表
将 Contrail 分析组件作为 Kubernetes 资源进行部署和管理。
Contrail-vrouter 图表
将 Contrail 虚拟路由器组件作为 Kubernetes 资源进行部署和管理。
Contrail-超集图
所有其他 Contrail Helm 图表的超集可用于安装其他 Contrail 图表中定义的所有 Kubernetes 资源。
Contrail Kubernetes 资源实施
所有 Contrail Helm 图表都遵循类似的方法来实现 Kubernetes 资源。对于每个 Contrail 5.0 版容器,配置输入作为文件中 values.yaml
的环境变量给出。使用该变量定义容器的环境变量 .Values.contrail_env
。
contrail_env: CONTROLLER_NODES: <Controller-Nodes-IP-Address> LOG_LEVEL: SYS_NOTICE CLOUD_ORCHESTRATOR: openstack AAA_MODE: cloud-admin
所有环境变量都存储在称为configmaps的Kubernetes资源中。配置映射作为环境变量加载到特定容器中。
由于 Contrail 是基础架构级别的应用程序,因此 Contrail 的每个 Pod 都托管在主机网络命名空间中。因此,守护程序控制器用于定义所有 Contrail Pod,以便将每个 Contrail Pod 启动在不同的节点上以避免端口冲突。
示例:Contrail Pod 部署选项
默认情况下,Helm 图表会 contrail-thirdparty
为每个第三方服务创建一个单独的容器。
pods: - contrail-control containers: - contrail-control - contrail-dns - contrail-named - control-nodemgr - contrail-config containers: - config-api - schema-transformer - svc-monitor - device-manager - config-nodemgr - contrail-webui containers: - contrail-webui - contrail-middleware - contrail-analytics containers: - analytics-api - analytics-colletor - snmp-collector - query-engine - alarm-gen - contrail-topology - contrail-vrouter containers: - vrouter-kernel/vrouter-dpdk/vrouter-sriov - vrouter-agent - vrouter-nodemgr
使用 Helm 图表安装 Contrail
使用以下过程之一,使用 Helm 图表将 Contrail 与 OpenStack Ocata 一起安装: