使用 Juju Charms 将 Contrail 与 OpenStack 相结合
可以使用 Juju Charms 部署 Contrail。Juju 可帮助您在私有云和公有云上部署、配置和高效管理应用程序。Juju 在 Juju 控制器的帮助下访问云。魅力是一个包含脚本和元数据集合的模块,用于与 Juju 一起部署 Contrail。
Contrail 支持以下超级按钮:
Contrail-agent
Contrail-Analytics
Contrail-Analyticsdb
Contrail 控制器
Contrail-Keystone-auth
Contrail-OpenStack
这些主题介绍如何使用 Juju 超级按钮部署 Contrail。
准备使用 Juju 超级按钮部署 Contrail
按照以下步骤准备部署:
部署 Contrail 超级按钮
您可以捆绑部署 Contrail 超级按钮,也可以手动部署。
捆绑包中部署 Contrail 超级按钮
按照以下步骤在捆绑包中部署 Contrail 超级按钮。
使用 OpenStack 手动部署 Juju Charms
在开始部署之前,请确保您已:
安装和配置 Juju
创建了 Juju 控制器
已安装 Ubuntu 16.04 或 Ubuntu 18.04
请按照以下步骤手动部署 Juju 超级按钮:
Juju 吊饰的选项
每个 Contrail 超级按钮都有一组特定的选项。选择的选项取决于所选的超级按钮。下表列出了您可以选择的各种选项:
超级按钮的选项 contrail-agent 。
表 1:凝结尾迹代理的选项 选项
默认选项
描述
physical-interface
指定要安装 vhost0 的接口。如果未指定接口,则 vhost0 将安装在默认网关接口上。
vhost-gateway
auto
为 vhost0 指定网关。您可以输入 IP 地址或关键字 (
auto
),以根据现有的虚拟路由自动设置网关。remove-juju-bridge
true
要直接在接口上安装 vhost0,请启用此选项以移除为部署 LXD/LXC 和 KVM 工作负载而创建的任何网桥。
dpdk
false
指定 DPDK 虚拟路由器。
dpdk-driver
uio_pci_generic
为物理接口指定 DPDK 驱动程序。
dpdk-hugepages
70%
指定为 DPDK vRouter 和 OpenStack 实例保留的大页面的百分比。
dpdk-coremask
1
指定虚拟路由器 CPU 关联掩码以确定 DPDK 虚拟路由器将在哪个 CPU 上运行。
dpdk-main-mempool-size
指定主数据包池大小。
dpdk-pmd-txd-size
指定 DPDK PMD Tx 描述符大小。
dpdk-pmd-rxd-size
指定 DPDK PMD Rx 描述符大小。
docker-registry
opencontrailnightly
指定码头工人注册表的 URL。
docker-registry-insecure
false
指定是否应配置 docker 注册表。
docker-user
登录到码头工人注册表。
docker-password
指定 docker 注册表密码。
image-tag
latest
指定 docker 映像标记。
log-level
SYS_NOTICE
指定 Contrail 服务的日志级别。
选项:
SYS_EMERG, SYS_ALERT, SYS_CRIT, SYS_ERR, SYS_WARN, SYS_NOTICE, SYS_INFO, SYS_DEBUG
http_proxy
指定 URL。
https_proxy
指定 URL。
kernel-hugepages-1g
默认情况下未启用参数。
注意:默认情况下,内核模式 vRouter 的 2MB 大页面处于启用状态。
指定用于内核模式下的 vRouter 的 1G 大页面数。
您可以启用大页面以避免在软件升级期间重新启动计算节点。
必须在初始部署时指定此参数。无法在活动部署中修改它。如果需要在活动部署中迁移到大型页面使用,请使用 2MB 的大页面(如果适合您的环境)。
我们建议为大页面分配 2GB 内存(使用默认的 1024x2MB 大页面大小设置或 2x1GB 大小设置)。其他巨大的页面大小设置只能由专家用户在特定情况下设置。
在使用 Juju 的环境中无法同时启用 1GB 和 2MB 大页面。如果使用此命令参数启用 1GB 大页面,则还必须禁用 2MB 大页面。可以通过输入 juju config contrail-agent kernel-hugepages-2m=““ 带有空值的命令来禁用 2MB 的大页面。
需要重新启动计算节点才能启用巨大的页面设置配置更改。在此初始重新启动后,计算节点无需重新启动即可完成软件升级。
如果未设置 和 选项
kernel-hugepages-1g
,kernel-hugepages-2m
则会为内核模式 vRouter 禁用大页面。此参数在 Contrail 网络版本 2005 中引入。
kernel-hugepages-2m
1024
指定用于内核模式下的 vRouter 的 2MB 大页面数。Contrail 网络中的大页面主要用于在 vRouter 中分配流和桥接表内存。内核模式虚拟路由器的大页面提供了足够的流量和桥接表内存,以避免计算节点重新启动以完成未来的 Contrail 网络软件升级。
从 Contrail 网络版本 2005 开始,默认情况下配置 1024x2MB 大页面。但是,需要重新启动计算节点才能启用内核模式 vRouter 大页面设置配置更改,因此在重新启动计算节点之前,不会在计算节点上启用此大页面设置。
重启计算节点开启 vRouter 大页面设置后,计算节点无需重启即可完成软件升级。
我们建议为内核模式 vRouter 大页面分配 2GB 内存(使用默认的 1024x2MB 大页面大小设置或 2x1GB 大小设置)。其他巨大的页面大小设置只能由专家用户在特定情况下设置。
在使用 Juju 的环境中无法同时启用 1GB 和 2MB 大页面。如果使用此命令参数启用 2MB 大页面,则还必须禁用 1GB 大页面。默认情况下禁用 1GB 大页面,也可以通过使用空值输入命令来 juju config contrail-agent kernel-hugepages-1g=““ 禁用。1GB 大页面只能在初始部署时启用;最初不能在活动部署中启用 1GB 大页面。
如果未设置 和 选项
kernel-hugepages-1g
,kernel-hugepages-2m
则会为内核模式 vRouter 禁用大页面。no_proxy
指定必须直接访问的目标列表。
超级按钮的选项 contrail-analytics 。
表 2:Contrail 分析选项 选项
默认选项
描述
control-network
指定控制网络的 IP 地址和网络掩码。
docker-registry
指定码头工人注册表的 URL。
docker-registry-insecure
false
指定是否应配置 docker 注册表。
docker-user
登录到码头工人注册表。
docker-password
指定 docker 注册表密码。
image-tag
指定 docker 映像标记。
log-level
SYS_NOTICE
指定 Contrail 服务的日志级别。
选项:
SYS_EMERG, SYS_ALERT, SYS_CRIT, SYS_ERR, SYS_WARN, SYS_NOTICE, SYS_INFO, SYS_DEBUG
http_proxy
指定 URL。
https_proxy
指定 URL。
no_proxy
指定必须直接访问的目标列表。
超级按钮的选项 contrail-analyticsdb 。
表 3:contrail-analyticsdb 的选项 选项
默认选项
描述
control-network
指定控制网络的 IP 地址和网络掩码。
cassandra-minimum-diskgb
256
指定最低磁盘要求。
cassandra-jvm-extra-opts
指定内存限制。
docker-registry
指定码头工人注册表的 URL。
docker-registry-insecure
false
指定是否应配置 docker 注册表。
docker-user
登录到码头工人注册表。
docker-password
指定 docker 注册表密码。
image-tag
指定 docker 映像标记。
log-level
SYS_NOTICE
指定 Contrail 服务的日志级别。
选项:
SYS_EMERG, SYS_ALERT, SYS_CRIT, SYS_ERR, SYS_WARN, SYS_NOTICE, SYS_INFO, SYS_DEBUG
http_proxy
指定 URL。
https_proxy
指定 URL。
no_proxy
指定必须直接访问的目标列表。
超级按钮的选项 contrail-controller 。
表 4:Contrail 控制器的选项 选项
默认选项
描述
control-network
指定控制网络的 IP 地址和网络掩码。
auth-mode
rbac
指定身份验证模式。
选项:
rbsc
、cloud-admin
、no-auth
.有关详细信息,请参阅 https://github.com/Juniper/contrail-controller/wiki/RBAC。
cassandra-minimum-diskgb
20
指定最低磁盘要求。
cassandra-jvm-extra-opts
指定内存限制。
cloud-admin-role
admin
在梯形文件中为具有管理员级别访问权限的用户指定角色名称。
在使用 Canonical 业务流程和 Contrail 网络的环境中,在大多数情况下,应将 cloud-admin-role 更改为 Admin 大写字母 A。Contrail 网络中的默认云管理员角色为 ,Canonical 中的默认云管理员角色为 admin Admin。这些云管理员角色名称必须匹配才能授予用户管理员级别的访问权限。您可以通过使用默认设置将此字段设置为在环境中来 Admin 确保此匹配。
global-read-only-role
在梯形文件中为具有只读访问权限的用户指定角色名称。
vip
指定是否使用 Contrail API VIP 来配置客户端软件。如果未指定,将使用第一个 Contrail API VIP 单元的私有 IP。
use-external-rabbitmq
false
要使超级按钮能够使用内部 RabbitMQ 服务器,请设置为
use-external-rabbitmq
false
。要使用外部 AMQP 服务器,请设置为
use-external-rabbitmq
true
。注意:部署后不要更改标志。
flow-export-rate
0
指定在创建或删除流时,vRouter 代理将多少条流记录导出到 Contrail 收集器。
docker-registry
指定码头工人注册表的 URL。
docker-registry-insecure
false
指定是否应配置 docker 注册表。
docker-user
登录到码头工人注册表。
docker-password
指定 docker 注册表密码。
image-tag
指定 docker 映像标记。
log-level
SYS_NOTICE
指定 Contrail 服务的日志级别。
选项:
SYS_EMERG, SYS_ALERT, SYS_CRIT, SYS_ERR, SYS_WARN, SYS_NOTICE, SYS_INFO, SYS_DEBUG
http_proxy
指定 URL。
https_proxy
指定 URL。
no_proxy
指定必须直接访问的目标列表。
超级按钮的选项 contrail-keystone-auth 。
表 5:凝结尾-梯形-身份验证的选项 选项
默认选项
描述
ssl_ca
指定是否向 Contrail Keystone 客户端提供 base64 编码的 SSL CA 证书。
注意:如果使用专用签名的 ssl_cert 和 ssl_key,则需要此证书。
超级按钮的选项 contrail-openstack 。
表 6:Contrail 控制器的选项 选项
默认选项
描述
enable-metadata-server
true
设置为
enable-metadata-server
true
以配置元数据并使 nova 能够为虚拟机运行 的nova-api-metadata
本地实例use-internal-endpoints
false
use-internal-endpoints
设置为 OpenStacktrue
以将服务配置为使用内部端点。heat-plugin-dirs
/usr/lib64/heat,/usr /lib/heat/usr/lib/ python2.7/dist-packages/ vnc_api/gen/heat/ resources
指定热插件目录。
docker-registry
指定码头工人注册表的 URL。
docker-registry-insecure
false
指定是否应配置 docker 注册表。
docker-user
登录到码头工人注册表。
docker-password
指定 docker 注册表密码。
image-tag
指定 docker 映像标记。
log-level
SYS_NOTICE
指定 Contrail 服务的日志级别。
选项:
SYS_EMERG, SYS_ALERT, SYS_CRIT, SYS_ERR, SYS_WARN, SYS_NOTICE, SYS_INFO, SYS_DEBUG
http_proxy
指定 URL。
https_proxy
指定 URL。
no_proxy
指定必须直接访问的目标列表。
参见
对Juju的讽刺支持
Contrail 网络 2011.L1 版支持 OpenStack Train 版本 15xx 中的 Ironic 新超级按钮。具有讽刺意味的是,OpenStack是一个OpenStack项目,它管理裸机服务器(BMS),就好像它们是虚拟机(VM)一样。有关 Contrail 和裸金属服务器的详细信息,请参阅裸机服务器管理。
Contrail Networking Release 2011.L2 支持 OpenStack Ussuri with Ironic 部署在 Ubuntu 版本 20.04 (Focal Fossa) 上。
示例中 bundle_yaml_file
显示了更新的选项。在部署更新的 yaml 文件之前,您应该已安装 Ceph。如果没有,请参阅 安装 Ceph。
有关部署 bundle_yaml_file
的信息,请参阅 部署 Contrail 超级按钮。
下面是一个示例 bundle_yaml_file
,其中突出显示了其他选项。 ceph-radosgw
及其相关选项是支持新的讽刺魅力所必需的。
series: bionic applications: barbican: charm: cs:barbican-31 num_units: 3 to: - lxd:0 - lxd:1 - lxd:2 options: openstack-origin: cloud:bionic-train region: RegionOne use-internal-endpoints: true vip: 10.92.76.133 192.168.2.11 worker-multiplier: 0.25 bindings: "": oam-space admin: oam-space amqp: oam-space certificates: oam-space cluster: oam-space ha: oam-space hsm: oam-space identity-service: oam-space internal: oam-space public: public-space secrets: oam-space shared-db: oam-space barbican-hacluster: charm: cs:hacluster-62 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha barbican-vault: charm: cs:barbican-vault-12 bindings: "": oam-space certificates: oam-space juju-info: oam-space secrets: oam-space secrets-storage: oam-space ceph-mon: charm: cs:ceph-mon-51 num_units: 3 to: - lxd:0 - lxd:1 - lxd:2 constraints: spaces=oam-space bindings: "": alpha admin: alpha bootstrap-source: alpha client: alpha cluster: oam-space mds: alpha mon: alpha nrpe-external-master: alpha osd: alpha prometheus: alpha public: oam-space radosgw: alpha rbd-mirror: alpha ceph-osd: charm: cs:ceph-osd-306 num_units: 3 to: - "17" - "21" - "19" options: osd-devices: /dev/sdb bindings: "": alpha cluster: oam-space mon: alpha nrpe-external-master: alpha public: oam-space secrets-storage: alpha ceph-radosgw: charm: cs:ceph-radosgw-292 num_units: 3 to: - lxd:0 - lxd:1 - lxd:2 options: admin-roles: admin loglevel: 10 namespace-tenants: true operator-roles: member source: cloud:bionic-train/proposed vip: 10.92.76.127 192.168.2.190 constraints: spaces=oam-space,public-space bindings: "": alpha admin: alpha certificates: alpha cluster: alpha gateway: alpha ha: alpha identity-service: alpha internal: oam-space master: alpha mon: alpha nrpe-external-master: alpha object-store: alpha public: public-space slave: alpha contrail-agent: charm: local:bionic/contrail-agent-1 options: docker-password: <docker password> docker-registry: hub.juniper.net/contrail docker-user: JNPR-FieldUser367 image-tag: "2008.121" log-level: SYS_INFO physical-interface: bond0.4010 vhost-gateway: auto bindings: "": alpha agent-cluster: alpha contrail-controller: alpha juju-info: alpha nrpe-external-master: alpha tls-certificates: alpha vrouter-plugin: alpha contrail-agent-csn: charm: local:bionic/contrail-agent-3 options: csn-mode: tsn-no-forwarding docker-password: <docker password> docker-registry: hub.juniper.net/contrail docker-user: JNPR-FieldUser367 image-tag: "2008.121" physical-interface: bond0.4010 vhost-gateway: auto bindings: "": alpha agent-cluster: alpha contrail-controller: alpha juju-info: alpha nrpe-external-master: alpha tls-certificates: alpha vrouter-plugin: alpha contrail-analytics: charm: local:bionic/contrail-analytics-1 num_units: 4 to: - kvm:0 - kvm:1 - kvm:2 - kvm:13 options: control-network: 192.168.2.0/24 docker-password: <docker password> docker-registry: hub.juniper.net/contrail docker-user: JNPR-FieldUser367 haproxy-http-mode: https image-tag: "2008.121" log-level: SYS_DEBUG min-cluster-size: 3 vip: 10.92.77.18 constraints: cpu-cores=16 mem=32768 root-disk=102400 spaces=oam-space,overlay-space bindings: "": oam-space analytics-cluster: oam-space contrail-analytics: oam-space contrail-analyticsdb: oam-space http-services: oam-space nrpe-external-master: oam-space tls-certificates: oam-space contrail-analyticsdb: charm: local:bionic/contrail-analyticsdb-1 num_units: 4 to: - kvm:0 - kvm:1 - kvm:2 - kvm:13 options: cassandra-jvm-extra-opts: -Xms16g -Xmx24g cassandra-minimum-diskgb: "4" control-network: 192.168.2.0/24 docker-password: <docker password> docker-registry: hub.juniper.net/contrail docker-user: JNPR-FieldUser367 image-tag: "2008.121" log-level: SYS_DEBUG min-cluster-size: 3 constraints: cpu-cores=16 mem=65536 root-disk=512000 spaces=oam-space,overlay-space bindings: "": oam-space analyticsdb-cluster: oam-space contrail-analyticsdb: oam-space nrpe-external-master: oam-space tls-certificates: oam-space contrail-command: charm: local:bionic/contrail-command-0 num_units: 1 to: - "9" options: docker-password: <docker password> docker-registry: hub.juniper.net/contrail docker-registry-insecure: true docker-user: JNPR-FieldUser367 image-tag: "2008.121" constraints: tags=command bindings: "": alpha contrail-controller: alpha contrail-controller: charm: local:bionic/contrail-controller-1 num_units: 4 to: - kvm:0 - kvm:2 - kvm:1 - kvm:13 options: auth-mode: rbac cassandra-jvm-extra-opts: -Xms16g -Xmx24g cassandra-minimum-diskgb: "4" control-network: 192.168.2.0/24 data-network: 172.30.0.0/16 docker-password: <docker password> docker-registry: hub.juniper.net/contrail docker-user: JNPR-FieldUser367 haproxy-http-mode: https haproxy-https-mode: http image-tag: "2008.121" local-rabbitmq-hostname-resolution: true log-level: SYS_DEBUG min-cluster-size: 3 vip: 10.92.77.18 constraints: cpu-cores=16 mem=65536 root-disk=102400 spaces=oam-space,overlay-space,public-space bindings: "": oam-space contrail-analytics: oam-space contrail-analyticsdb: oam-space contrail-auth: oam-space contrail-controller: oam-space contrail-issu: oam-space controller-cluster: oam-space http-services: oam-space https-services: oam-space nrpe-external-master: oam-space tls-certificates: oam-space contrail-haproxy: charm: cs:haproxy-55 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 options: default_timeouts: queue 60000, connect 5000, client 120000, server 120000 enable_monitoring: true peering_mode: active-active services: "" source: backports ssl_cert: SELFSIGNED sysctl: '{fs.file-max: 10240}' bindings: "": oam-space local-monitors: oam-space munin: oam-space nrpe-external-master: oam-space peer: oam-space public: public-space reverseproxy: oam-space statistics: oam-space website: public-space contrail-keepalived: charm: cs:~containers/keepalived-28 options: network_interface: eth0 port: 8143 virtual_ip: 10.92.77.18 bindings: "": alpha juju-info: alpha lb-sink: alpha loadbalancer: alpha website: alpha contrail-keystone-auth: charm: local:bionic/contrail-keystone-auth-1 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 constraints: spaces=oam-space,overlay-space bindings: "": oam-space contrail-auth: oam-space identity-admin: oam-space nrpe-external-master: oam-space contrail-openstack: charm: local:bionic/contrail-openstack-3 options: docker-password: <docker password> docker-registry: hub.juniper.net/contrail docker-user: JNPR-FieldUser367 image-tag: "2008.121" use-internal-endpoints: true bindings: "": alpha cluster: alpha contrail-controller: alpha heat-plugin: alpha juju-info: alpha neutron-api: alpha nova-compute: alpha dashboard-hacluster: charm: cs:hacluster-62 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha easyrsa: charm: cs:~containers/easyrsa-303 num_units: 1 to: - lxd:0 bindings: "": oam-space client: oam-space etcd: charm: cs:etcd-521 num_units: 3 to: - lxd:0 - lxd:1 - lxd:2 options: channel: 3.1/stable bindings: "": oam-space certificates: oam-space cluster: oam-space db: oam-space nrpe-external-master: oam-space proxy: oam-space external-policy-routing: charm: cs:~canonical-bootstack/policy-routing-3 options: cidr: 10.92.76.0/23 gateway: 10.92.77.254 bindings: "": alpha juju-info: alpha glance: charm: cs:~openstack-charmers-next/glance-442 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 options: openstack-origin: cloud:bionic-train region: RegionOne restrict-ceph-pools: false use-internal-endpoints: true vip: 10.92.77.12 192.168.2.12 worker-multiplier: 0.25 bindings: "": oam-space admin: oam-space amqp: oam-space ceph: oam-space certificates: oam-space cinder-volume-service: oam-space cluster: oam-space ha: oam-space identity-service: oam-space image-service: oam-space internal: oam-space nrpe-external-master: oam-space object-store: oam-space public: public-space shared-db: oam-space storage-backend: oam-space glance-hacluster: charm: cs:hacluster-62 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha glance-simplestreams-sync: charm: cs:glance-simplestreams-sync-33 num_units: 3 to: - lxd:0 - lxd:1 - lxd:2 options: source: ppa:simplestreams-dev/trunk use_swift: false bindings: "": oam-space amqp: oam-space certificates: oam-space identity-service: oam-space image-modifier: oam-space nrpe-external-master: oam-space simplestreams-image-service: oam-space heat: charm: cs:heat-271 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 options: openstack-origin: cloud:bionic-train region: RegionOne use-internal-endpoints: true vip: 10.92.77.13 192.168.2.13 worker-multiplier: 0.25 constraints: cpu-cores=6 mem=32768 root-disk=65536 spaces=oam-space,public-space,overlay-space bindings: "": oam-space admin: oam-space amqp: oam-space certificates: oam-space cluster: oam-space ha: oam-space heat-plugin-subordinate: overlay-space identity-service: oam-space internal: oam-space public: public-space shared-db: oam-space heat-hacluster: charm: cs:hacluster-62 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha ironic-api: charm: cs:~openstack-charmers-next/ironic-api-8 num_units: 3 to: - lxd:0 - lxd:1 - lxd:2 options: openstack-origin: cloud:bionic-train/proposed vip: 10.92.76.130 192.168.2.189 constraints: spaces=oam-space,public-space bindings: "": alpha admin: alpha amqp: alpha certificates: alpha cluster: alpha ha: alpha identity-service: alpha internal: alpha ironic-api: alpha public: alpha shared-db: oam-space ironic-api-hacluster: charm: cs:hacluster-72 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha ironic-conductor: charm: cs:~openstack-charmers-next/ironic-conductor-5 num_units: 1 to: - "14" options: cleaning-network: ironic default-deploy-interface: direct default-network-interface: neutron disable-secure-erase: true enabled-deploy-interfaces: direct enabled-network-interfaces: noop,flat,neutron max-tftp-block-size: 1418 openstack-origin: cloud:bionic-train/proposed provisioning-network: ironic use-ipxe: false bindings: "": alpha amqp: alpha certificates: alpha cleaning: alpha deployment: alpha identity-credentials: alpha internal: alpha ironic-api: alpha shared-db: alpha keystone: charm: cs:keystone-309 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 options: admin-password: c0ntrail123 admin-role: admin openstack-origin: cloud:bionic-train preferred-api-version: 3 region: RegionOne token-provider: fernet vip: 10.92.77.14 192.168.2.14 worker-multiplier: 0.25 bindings: "": oam-space admin: oam-space certificates: oam-space cluster: oam-space domain-backend: oam-space ha: oam-space identity-admin: oam-space identity-credentials: oam-space identity-notifications: oam-space identity-service: oam-space internal: oam-space keystone-fid-service-provider: oam-space keystone-middleware: oam-space nrpe-external-master: oam-space public: public-space shared-db: oam-space websso-trusted-dashboard: oam-space keystone-hacluster: charm: cs:hacluster-62 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha memcached: charm: cs:memcached-26 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 options: allow-ufw-ip6-softfail: true constraints: spaces=oam-space bindings: "": oam-space cache: oam-space cluster: oam-space local-monitors: oam-space monitors: oam-space munin: oam-space nrpe-external-master: oam-space mysql: charm: cs:percona-cluster-281 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 options: enable-binlogs: true innodb-buffer-pool-size: 512M max-connections: 2000 min-cluster-size: 3 performance-schema: true source: cloud:bionic-train tuning-level: safest vip: 192.168.2.17 wait-timeout: 3600 wsrep-slave-threads: 48 bindings: "": oam-space access: oam-space cluster: oam-space db: oam-space db-admin: oam-space ha: oam-space master: oam-space nrpe-external-master: oam-space shared-db: oam-space slave: oam-space mysql-hacluster: charm: cs:hacluster-62 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha ncc-hacluster: charm: cs:hacluster-62 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha neutron-api: charm: cs:neutron-api-281 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 options: default-tenant-network-type: vlan dhcp-agents-per-network: 2 enable-l3ha: true enable-ml2-port-security: true global-physnet-mtu: 9000 l2-population: true manage-neutron-plugin-legacy-mode: false neutron-security-groups: true openstack-origin: cloud:bionic-train overlay-network-type: "" region: RegionOne use-internal-endpoints: true vip: 10.92.77.15 192.168.2.15 worker-multiplier: 0.25 constraints: cpu-cores=8 mem=32768 root-disk=262144 spaces=oam-space,public-space,overlay-space bindings: "": oam-space admin: oam-space amqp: oam-space certificates: oam-space cluster: oam-space etcd-proxy: oam-space external-dns: oam-space ha: oam-space identity-service: oam-space infoblox-neutron: oam-space internal: oam-space midonet: oam-space neutron-api: oam-space neutron-load-balancer: oam-space neutron-plugin-api: oam-space neutron-plugin-api-subordinate: overlay-space nrpe-external-master: oam-space public: public-space shared-db: oam-space vsd-rest-api: oam-space neutron-hacluster: charm: cs:hacluster-62 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha nova-cloud-controller: charm: cs:nova-cloud-controller-339 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 options: console-access-protocol: novnc console-proxy-ip: local cpu-allocation-ratio: 4 network-manager: Neutron openstack-origin: cloud:bionic-train ram-allocation-ratio: 0.999999 region: RegionOne use-internal-endpoints: true vip: 10.92.77.16 192.168.2.16 worker-multiplier: 0.25 bindings: "": oam-space admin: oam-space amqp: oam-space amqp-cell: oam-space certificates: oam-space cinder-volume-service: oam-space cloud-compute: oam-space cloud-controller: oam-space cluster: oam-space ha: oam-space identity-service: oam-space image-service: oam-space internal: oam-space memcache: oam-space neutron-api: oam-space nova-cell-api: oam-space nova-vmware: oam-space nrpe-external-master: oam-space placement: oam-space public: public-space quantum-network-service: oam-space shared-db: oam-space shared-db-cell: oam-space nova-compute: charm: cs:nova-compute-309 num_units: 5 to: - "3" - "4" - "5" - "6" - "15" options: openstack-origin: cloud:bionic-train os-internal-network: 192.168.2.0/24 bindings: "": alpha amqp: alpha ceph: alpha ceph-access: alpha cloud-compute: alpha cloud-credentials: alpha compute-peer: alpha ephemeral-backend: alpha image-service: alpha internal: alpha lxd: alpha neutron-plugin: alpha nova-ceilometer: alpha nrpe-external-master: alpha secrets-storage: alpha nova-ironic: charm: cs:~openstack-charmers-next/nova-compute-524 num_units: 1 to: - "22" options: enable-live-migration: false enable-resize: false openstack-origin: cloud:bionic-train/proposed virt-type: ironic bindings: "": alpha amqp: alpha ceph: alpha ceph-access: alpha cloud-compute: alpha cloud-credentials: alpha compute-peer: alpha ephemeral-backend: alpha image-service: alpha internal: alpha ironic-api: alpha lxd: alpha migration: alpha neutron-plugin: alpha nova-ceilometer: alpha nrpe-external-master: alpha secrets-storage: alpha ntp: charm: cs:ntp-36 options: source: ntp.juniper.net bindings: "": alpha juju-info: alpha master: alpha nrpe-external-master: alpha ntp-peers: alpha ntpmaster: alpha octavia: charm: cs:~apavlov-e/octavia-3 num_units: 3 to: - lxd:0 - lxd:1 - lxd:2 options: amp-ssh-key-name: octavia amp-ssh-pub-key: c3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFCQVFDa0N0SzJCWk01TC90VGdoM3J3L2FpR2ZEQzlzOEI4alFiS2VzQzJqTHRWcFNYbGlFellqQTNGNjEyalpwdERjOXdhOEF3eStxbEl0L1Frak5TVjhPMVpvNXZlc2RMREhvQjJrMzV5ZEFvMXhQRkFmV3lsSjh6VnJrd0U5aU1tWEVYZTd1VjdDdkgyZmdmSnlGeXJKaFR2ZjBWdTZGK1M5RHl1MnkxMUdXWEsrSDAyR3ZneHVzamZ3QlhoZ3IxNU1kZCt4RkJsbkpYRGtkQjVYVit4azZhYkJsRVJUc0N6c09EdXVOQTg4aVhqeHkvZzJpb2NtNWhtcVhUeDRMT2gzam9NbEFHUW5RQ2FXdFNSenpWM3dKT3JLeW5zU1pObVRmUnluRDdaaGl1WlZLNUZURWhQaXZUaVAwaHdLeTRMZGZUM0NsSkJSWmdMVVJZYUtSYlFwYkQgdWJ1bnR1QGp1bXBob3N0Cg== create-mgmt-network: false lb-mgmt-controller-cacert: |- <certificate> lb-mgmt-controller-cert: |- <certificate> lb-mgmt-issuing-ca-key-passphrase: <passphrase> lb-mgmt-issuing-ca-private-key: |- <private key> lb-mgmt-issuing-cacert: |- <certificate> loadbalancer-topology: ACTIVE_STANDBY openstack-origin: cloud:bionic-train region: RegionOne use-internal-endpoints: true vip: 10.92.76.135 192.168.2.18 worker-multiplier: 0.25 bindings: "": oam-space admin: oam-space amqp: oam-space certificates: oam-space cluster: oam-space ha: oam-space identity-service: oam-space internal: oam-space neutron-api: oam-space neutron-openvswitch: oam-space ovsdb-cms: oam-space ovsdb-subordinate: oam-space public: public-space shared-db: oam-space octavia-dashboard: charm: cs:octavia-dashboard-17 bindings: "": alpha certificates: alpha dashboard: alpha octavia-diskimage-retrofit: charm: cs:octavia-diskimage-retrofit-12 options: amp-image-tag: octavia-amphora retrofit-uca-pocket: train bindings: "": oam-space certificates: oam-space identity-credentials: oam-space juju-info: oam-space octavia-hacluster: charm: cs:hacluster-62 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha openstack-dashboard: charm: cs:openstack-dashboard-295 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 options: cinder-backup: false endpoint-type: publicURL neutron-network-firewall: false neutron-network-l3ha: true neutron-network-lb: true openstack-origin: cloud:bionic-train password-retrieve: true secret: encryptcookieswithme vip: 10.92.77.11 webroot: / constraints: spaces=oam-space bindings: "": public-space certificates: public-space cluster: public-space dashboard-plugin: public-space ha: public-space identity-service: public-space nrpe-external-master: public-space public: public-space shared-db: oam-space website: public-space websso-fid-service-provider: public-space websso-trusted-dashboard: public-space placement: charm: cs:placement-11 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 options: openstack-origin: cloud:bionic-train region: RegionOne use-internal-endpoints: true vip: 10.92.77.19 192.168.2.19 bindings: "": oam-space admin: oam-space amqp: oam-space certificates: oam-space cluster: oam-space ha: oam-space identity-service: oam-space internal: oam-space placement: oam-space public: public-space shared-db: oam-space placement-hacluster: charm: cs:hacluster-62 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha rabbitmq-server: charm: cs:rabbitmq-server-97 num_units: 4 to: - lxd:0 - lxd:1 - lxd:2 - lxd:13 options: min-cluster-size: 3 source: cloud:bionic-train bindings: "": oam-space amqp: oam-space ceph: oam-space certificates: oam-space cluster: oam-space ha: oam-space nrpe-external-master: oam-space radosgw-hacluster: charm: cs:hacluster-72 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha ubuntu: charm: cs:ubuntu-15 num_units: 4 to: - "0" - "1" - "2" - "13" bindings: "": alpha vault: charm: cs:vault-39 num_units: 3 to: - lxd:0 - lxd:1 - lxd:2 options: vip: 192.168.2.20 bindings: "": oam-space access: oam-space certificates: oam-space cluster: oam-space db: oam-space etcd: oam-space external: oam-space ha: oam-space nrpe-external-master: oam-space secrets: oam-space shared-db: oam-space vault-hacluster: charm: cs:hacluster-62 options: cluster_count: 3 bindings: "": alpha ha: alpha hanode: alpha juju-info: alpha nrpe-external-master: alpha pacemaker-remote: alpha peer-availability: alpha machines: "0": constraints: tags=controller1 "1": constraints: tags=controller2 "2": constraints: tags=controller3 "3": constraints: tags=compute1 "4": constraints: tags=compute2 "5": constraints: tags=compute3 "6": constraints: tags=compute4 "9": constraints: tags=command "13": constraints: tags=controller4 "14": constraints: tags=controller5 "15": constraints: tags=compute5 "17": constraints: tags=CEPH "19": constraints: tags=CEPH "21": constraints: tags=CEPH "22": constraints: tags=CSN relations: - - ubuntu:juju-info - ntp:juju-info - - mysql:ha - mysql-hacluster:ha - - keystone:shared-db - mysql:shared-db - - keystone:ha - keystone-hacluster:ha - - glance:shared-db - mysql:shared-db - - glance:identity-service - keystone:identity-service - - nova-cloud-controller:shared-db - mysql:shared-db - - nova-cloud-controller:identity-service - keystone:identity-service - - nova-cloud-controller:image-service - glance:image-service - - nova-cloud-controller:ha - ncc-hacluster:ha - - neutron-api:shared-db - mysql:shared-db - - neutron-api:neutron-api - nova-cloud-controller:neutron-api - - neutron-api:identity-service - keystone:identity-service - - neutron-api:ha - neutron-hacluster:ha - - nova-compute:image-service - glance:image-service - - nova-compute:cloud-compute - nova-cloud-controller:cloud-compute - - nova-compute:juju-info - ntp:juju-info - - openstack-dashboard:identity-service - keystone:identity-service - - openstack-dashboard:ha - dashboard-hacluster:ha - - heat:shared-db - mysql:shared-db - - heat:identity-service - keystone:identity-service - - heat:ha - heat-hacluster:ha - - placement:shared-db - mysql:shared-db - - placement:identity-service - keystone:identity-service - - placement:placement - nova-cloud-controller:placement - - contrail-controller:contrail-controller - contrail-agent:contrail-controller - - contrail-agent:juju-info - nova-compute:juju-info - - contrail-analytics:contrail-analyticsdb - contrail-analyticsdb:contrail-analyticsdb - - contrail-analytics:contrail-analytics - contrail-controller:contrail-analytics - - contrail-analytics:http-services - contrail-haproxy:reverseproxy - - contrail-analyticsdb:contrail-analyticsdb - contrail-controller:contrail-analyticsdb - - contrail-controller:contrail-auth - contrail-keystone-auth:contrail-auth - - contrail-controller:http-services - contrail-haproxy:reverseproxy - - contrail-controller:https-services - contrail-haproxy:reverseproxy - - contrail-keystone-auth:identity-admin - keystone:identity-admin - - contrail-openstack:nova-compute - nova-compute:neutron-plugin - - contrail-openstack:neutron-api - neutron-api:neutron-plugin-api-subordinate - - contrail-openstack:heat-plugin - heat:heat-plugin-subordinate - - contrail-openstack:contrail-controller - contrail-controller:contrail-controller - - contrail-haproxy:juju-info - contrail-keepalived:juju-info - - nova-cloud-controller:memcache - memcached:cache - - external-policy-routing:juju-info - openstack-dashboard:juju-info - - external-policy-routing:juju-info - glance:juju-info - - external-policy-routing:juju-info - heat:juju-info - - external-policy-routing:juju-info - keystone:juju-info - - external-policy-routing:juju-info - neutron-api:juju-info - - external-policy-routing:juju-info - nova-cloud-controller:juju-info - - external-policy-routing:juju-info - contrail-haproxy:juju-info - - ntp:juju-info - contrail-controller:juju-info - - ntp:juju-info - contrail-analytics:juju-info - - ntp:juju-info - contrail-analyticsdb:juju-info - - ntp:juju-info - neutron-api:juju-info - - ntp:juju-info - heat:juju-info - - contrail-command:contrail-controller - contrail-controller:contrail-controller - - glance:ha - glance-hacluster:ha - - placement:ha - placement-hacluster:ha - - mysql:shared-db - octavia:shared-db - - mysql:shared-db - barbican:shared-db - - mysql:shared-db - vault:shared-db - - keystone:identity-service - octavia:identity-service - - keystone:identity-service - barbican:identity-service - - neutron-api:neutron-load-balancer - octavia:neutron-api - - openstack-dashboard:dashboard-plugin - octavia-dashboard:dashboard - - barbican-vault:secrets - barbican:secrets - - vault:secrets - barbican-vault:secrets-storage - - glance-simplestreams-sync:juju-info - octavia-diskimage-retrofit:juju-info - - keystone:identity-service - glance-simplestreams-sync:identity-service - - keystone:identity-credentials - octavia-diskimage-retrofit:identity-credentials - - contrail-openstack:nova-compute - octavia:neutron-openvswitch - - vault:ha - vault-hacluster:ha - - etcd:certificates - easyrsa:client - - etcd:db - vault:etcd - - barbican:ha - barbican-hacluster:ha - - octavia:ha - octavia-hacluster:ha - - rabbitmq-server:amqp - barbican:amqp - - rabbitmq-server:amqp - glance-simplestreams-sync:amqp - - rabbitmq-server:amqp - heat:amqp - - rabbitmq-server:amqp - neutron-api:amqp - - rabbitmq-server:amqp - nova-cloud-controller:amqp - - rabbitmq-server:amqp - nova-compute:amqp - - rabbitmq-server:amqp - octavia:amqp - - ceph-mon:osd - ceph-osd:mon - - ceph-radosgw:juju-info - external-policy-routing:juju-info - - ceph-radosgw:ha - radosgw-hacluster:ha - - ceph-radosgw:mon - ceph-mon:radosgw - - ceph-radosgw:identity-service - keystone:identity-service - - vault:certificates - ceph-radosgw:certificates - - ceph-radosgw:object-store - glance:object-store - - ceph-mon:client - glance:ceph - - ironic-conductor:amqp - rabbitmq-server:amqp - - ironic-conductor:identity-credentials - keystone:identity-credentials - - ironic-conductor:shared-db - mysql:shared-db - - vault:certificates - ironic-conductor:certificates - - nova-ironic:amqp - rabbitmq-server:amqp - - nova-ironic:image-service - glance:image-service - - nova-ironic:cloud-credentials - keystone:identity-credentials - - nova-ironic:cloud-compute - nova-cloud-controller:cloud-compute - - ceph-mon:client - nova-ironic:ceph - - nova-ironic:juju-info - ntp:juju-info - - contrail-agent-csn:juju-info - nova-ironic:juju-info - - contrail-agent-csn:contrail-controller - contrail-controller:contrail-controller - - ironic-api:ha - ironic-api-hacluster:ha - - ironic-conductor:ironic-api - ironic-api:ironic-api - - ironic-api:amqp - rabbitmq-server:amqp - - ironic-api:identity-service - keystone:identity-service - - ironic-api:shared-db - mysql:shared-db - - vault:certificates - ironic-api:certificates - - nova-ironic:ironic-api - ironic-api:ironic-api