Add docker neutron services
This patch adds docker services for Neutron API(server), the Neutron DHCP agent, and Neutron ML2 plugin configuration. Co-Authored-By: Ian Main <imain@redhat.com> Change-Id: If31e095cae533597cf0d73b4277425dfc3459564
This commit is contained in:
parent
435d270986
commit
0466def813
102
docker/services/neutron-api.yaml
Normal file
102
docker/services/neutron-api.yaml
Normal file
@ -0,0 +1,102 @@
|
||||
heat_template_version: ocata
|
||||
|
||||
description: >
|
||||
OpenStack containerized Neutron API service
|
||||
|
||||
parameters:
|
||||
DockerNamespace:
|
||||
description: namespace
|
||||
default: 'tripleoupstream'
|
||||
type: string
|
||||
DockerNeutronApiImage:
|
||||
description: image
|
||||
default: 'centos-binary-neutron-server:latest'
|
||||
type: string
|
||||
# we configure all neutron services in the same neutron
|
||||
DockerNeutronConfigImage:
|
||||
description: image
|
||||
default: 'centos-binary-neutron-openvswitch-agent:latest'
|
||||
type: string
|
||||
EndpointMap:
|
||||
default: {}
|
||||
description: Mapping of service endpoint -> protocol. Typically set
|
||||
via parameter_defaults in the resource registry.
|
||||
type: json
|
||||
ServiceNetMap:
|
||||
default: {}
|
||||
description: Mapping of service_name -> network name. Typically set
|
||||
via parameter_defaults in the resource registry. This
|
||||
mapping overrides those in ServiceNetMapDefaults.
|
||||
type: json
|
||||
DefaultPasswords:
|
||||
default: {}
|
||||
type: json
|
||||
|
||||
resources:
|
||||
|
||||
NeutronBase:
|
||||
type: ../../puppet/services/neutron-api.yaml
|
||||
properties:
|
||||
EndpointMap: {get_param: EndpointMap}
|
||||
ServiceNetMap: {get_param: ServiceNetMap}
|
||||
DefaultPasswords: {get_param: DefaultPasswords}
|
||||
|
||||
outputs:
|
||||
role_data:
|
||||
description: Role data for the Neutron API role.
|
||||
value:
|
||||
service_name: {get_attr: [NeutronBase, role_data, service_name]}
|
||||
config_settings:
|
||||
map_merge:
|
||||
- get_attr: [NeutronBase, role_data, config_settings]
|
||||
step_config: {get_attr: [NeutronBase, role_data, step_config]}
|
||||
service_config_settings: {get_attr: [NeutronBase, role_data, service_config_settings]}
|
||||
# BEGIN DOCKER SETTINGS
|
||||
docker_image: &neutron_api_image
|
||||
list_join:
|
||||
- '/'
|
||||
- [ {get_param: DockerNamespace}, {get_param: DockerNeutronApiImage} ]
|
||||
puppet_tags: neutron_config,neutron_api_config
|
||||
config_volume: neutron
|
||||
config_image:
|
||||
list_join:
|
||||
- '/'
|
||||
- [ {get_param: DockerNamespace}, {get_param: DockerNeutronConfigImage} ]
|
||||
kolla_config:
|
||||
/var/lib/kolla/config_files/neutron_api.json:
|
||||
command: /usr/bin/neutron-server --config-file /usr/share/neutron/neutron-dist.conf --config-dir /usr/share/neutron/server --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugin.ini
|
||||
config_files:
|
||||
- dest: /etc/neutron/neutron.conf
|
||||
owner: neutron
|
||||
perm: '0640'
|
||||
source: /var/lib/kolla/config_files/src/etc/neutron/neutron.conf
|
||||
- dest: /etc/neutron/plugin.ini
|
||||
owner: neutron
|
||||
perm: '0640'
|
||||
source: /var/lib/kolla/config_files/src/etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
docker_config:
|
||||
step_3:
|
||||
neutron_db_sync:
|
||||
image: *neutron_api_image
|
||||
net: host
|
||||
privileged: false
|
||||
detach: false
|
||||
volumes:
|
||||
- /var/lib/config-data/neutron/etc/neutron:/etc/neutron:ro
|
||||
- /var/lib/config-data/neutron/usr/share/neutron:/usr/share/neutron:ro
|
||||
- /etc/hosts:/etc/hosts:ro
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
command: ['neutron-db-manage', 'upgrade', 'heads']
|
||||
step_4:
|
||||
neutron_api:
|
||||
image: *neutron_api_image
|
||||
net: host
|
||||
privileged: false
|
||||
restart: always
|
||||
volumes:
|
||||
- /var/lib/kolla/config_files/neutron_api.json:/var/lib/kolla/config_files/config.json:ro
|
||||
- /var/lib/config-data/neutron/:/var/lib/kolla/config_files/src:ro
|
||||
- /etc/hosts:/etc/hosts:ro
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
environment:
|
||||
- KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
|
93
docker/services/neutron-dhcp.yaml
Normal file
93
docker/services/neutron-dhcp.yaml
Normal file
@ -0,0 +1,93 @@
|
||||
heat_template_version: ocata
|
||||
|
||||
description: >
|
||||
OpenStack containerized Neutron DHCP service
|
||||
|
||||
parameters:
|
||||
DockerNamespace:
|
||||
description: namespace
|
||||
default: 'tripleoupstream'
|
||||
type: string
|
||||
DockerNeutronApiImage:
|
||||
description: image
|
||||
default: 'centos-binary-neutron-dhcp-agent:latest'
|
||||
type: string
|
||||
# we configure all neutron services in the same neutron
|
||||
DockerNeutronConfigImage:
|
||||
description: image
|
||||
default: 'centos-binary-neutron-openvswitch-agent:latest'
|
||||
type: string
|
||||
EndpointMap:
|
||||
default: {}
|
||||
description: Mapping of service endpoint -> protocol. Typically set
|
||||
via parameter_defaults in the resource registry.
|
||||
type: json
|
||||
ServiceNetMap:
|
||||
default: {}
|
||||
description: Mapping of service_name -> network name. Typically set
|
||||
via parameter_defaults in the resource registry. This
|
||||
mapping overrides those in ServiceNetMapDefaults.
|
||||
type: json
|
||||
DefaultPasswords:
|
||||
default: {}
|
||||
type: json
|
||||
|
||||
resources:
|
||||
|
||||
NeutronBase:
|
||||
type: ../../puppet/services/neutron-dhcp.yaml
|
||||
properties:
|
||||
EndpointMap: {get_param: EndpointMap}
|
||||
ServiceNetMap: {get_param: ServiceNetMap}
|
||||
DefaultPasswords: {get_param: DefaultPasswords}
|
||||
|
||||
outputs:
|
||||
role_data:
|
||||
description: Role data for the Neutron DHCP role.
|
||||
value:
|
||||
service_name: {get_attr: [NeutronBase, role_data, service_name]}
|
||||
config_settings:
|
||||
map_merge:
|
||||
- get_attr: [NeutronBase, role_data, config_settings]
|
||||
step_config: {get_attr: [NeutronBase, role_data, step_config]}
|
||||
service_config_settings: {get_attr: [NeutronBase, role_data, service_config_settings]}
|
||||
# BEGIN DOCKER SETTINGS
|
||||
docker_image: &neutron_dhcp_image
|
||||
list_join:
|
||||
- '/'
|
||||
- [ {get_param: DockerNamespace}, {get_param: DockerNeutronApiImage} ]
|
||||
puppet_tags: neutron_config,neutron_dhcp_agent_config
|
||||
config_volume: neutron
|
||||
config_image:
|
||||
list_join:
|
||||
- '/'
|
||||
- [ {get_param: DockerNamespace}, {get_param: DockerNeutronConfigImage} ]
|
||||
kolla_config:
|
||||
/var/lib/kolla/config_files/neutron_dhcp.json:
|
||||
command: /usr/bin/neutron-dhcp-agent --config-file /usr/share/neutron/neutron-dist.conf --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/dhcp_agent.ini --log-file /var/log/neutron/dhcp-agent.log
|
||||
config_files:
|
||||
- dest: /etc/neutron/neutron.conf
|
||||
owner: neutron
|
||||
perm: '0640'
|
||||
source: /var/lib/kolla/config_files/src/etc/neutron/neutron.conf
|
||||
- dest: /etc/neutron/dhcp_agent.ini
|
||||
owner: neutron
|
||||
perm: '0640'
|
||||
source: /var/lib/kolla/config_files/src/etc/neutron/dhcp_agent.ini
|
||||
docker_config:
|
||||
step_4:
|
||||
neutron_dhcp:
|
||||
image: *neutron_dhcp_image
|
||||
net: host
|
||||
pid: host
|
||||
privileged: true
|
||||
restart: always
|
||||
volumes:
|
||||
- /var/lib/kolla/config_files/neutron_dhcp.json:/var/lib/kolla/config_files/config.json:ro
|
||||
- /var/lib/config-data/neutron/:/var/lib/kolla/config_files/src:ro
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- /etc/hosts:/etc/hosts:ro
|
||||
- /lib/modules:/lib/modules:ro
|
||||
- /run/:/run
|
||||
environment:
|
||||
- KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
|
58
docker/services/neutron-plugin-ml2.yaml
Normal file
58
docker/services/neutron-plugin-ml2.yaml
Normal file
@ -0,0 +1,58 @@
|
||||
heat_template_version: ocata
|
||||
|
||||
description: >
|
||||
OpenStack containerized Neutron ML2 Plugin configured with Puppet
|
||||
|
||||
parameters:
|
||||
EndpointMap:
|
||||
default: {}
|
||||
description: Mapping of service endpoint -> protocol. Typically set
|
||||
via parameter_defaults in the resource registry.
|
||||
type: json
|
||||
ServiceNetMap:
|
||||
default: {}
|
||||
description: Mapping of service_name -> network name. Typically set
|
||||
via parameter_defaults in the resource registry. This
|
||||
mapping overrides those in ServiceNetMapDefaults.
|
||||
type: json
|
||||
DockerNamespace:
|
||||
description: namespace
|
||||
default: 'tripleoupstream'
|
||||
type: string
|
||||
DockerNeutronConfigImage:
|
||||
description: image
|
||||
default: 'centos-binary-neutron-openvswitch-agent:latest'
|
||||
type: string
|
||||
DefaultPasswords:
|
||||
default: {}
|
||||
type: json
|
||||
|
||||
resources:
|
||||
|
||||
NeutronBase:
|
||||
type: ../../puppet/services/neutron-plugin-ml2.yaml
|
||||
properties:
|
||||
EndpointMap: {get_param: EndpointMap}
|
||||
ServiceNetMap: {get_param: ServiceNetMap}
|
||||
DefaultPasswords: {get_param: DefaultPasswords}
|
||||
|
||||
outputs:
|
||||
role_data:
|
||||
description: Role data for the Neutron ML2 Plugin role.
|
||||
value:
|
||||
service_name: {get_attr: [NeutronBase, role_data, service_name]}
|
||||
config_settings:
|
||||
map_merge:
|
||||
- get_attr: [NeutronBase, role_data, config_settings]
|
||||
step_config: {get_attr: [NeutronBase, role_data, step_config]}
|
||||
service_config_settings: {get_attr: [NeutronBase, role_data, service_config_settings]}
|
||||
# BEGIN DOCKER SETTINGS
|
||||
docker_image: &docker_image
|
||||
list_join:
|
||||
- '/'
|
||||
- [ {get_param: DockerNamespace}, {get_param: DockerNeutronConfigImage} ]
|
||||
puppet_tags: ''
|
||||
config_volume: 'neutron'
|
||||
config_image: *docker_image
|
||||
kolla_config: {}
|
||||
docker_config: {}
|
Loading…
x
Reference in New Issue
Block a user