X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=undercloud-vm.yaml;h=8c948caf3a7a6857c0edc724672c05f0c0f659b9;hb=69f1dcc7cb1f881b9df0d0c5ac0c34627bc1d775;hp=b68c0e57e3091c3e05597bc73df3bd054c1ff10b;hpb=99a1e7525015f4e710e3de6e041cffcd264153cf;p=apex-tripleo-heat-templates.git diff --git a/undercloud-vm.yaml b/undercloud-vm.yaml index b68c0e57..8c948caf 100644 --- a/undercloud-vm.yaml +++ b/undercloud-vm.yaml @@ -1,17 +1,54 @@ -escription: All-in-one baremetal OpenStack and all dependencies. +Description: All-in-one baremetal OpenStack and all dependencies. HeatTemplateFormatVersion: '2012-12-12' Parameters: - InstanceType: + AdminPassword: + Default: unset + Description: The password for the keystone admin account, used for monitoring, querying neutron etc. + Type: String + NoEcho: true + AdminToken: + Default: unset + Description: The keystone auth secret. + Type: String + BaremetalArch: + Default: i386 + Description: The architecture to use in Nova-BM - i386 or amd64. + Type: String + Flavor: Default: baremetal Description: Flavor to request when deploying. Type: String + GlancePassword: + Default: unset + Description: The password for the glance service account, used by the glance services. + Type: String + NoEcho: true KeyName: Default: default Description: Name of an existing EC2 KeyPair to enable SSH access to the instances Type: String + HeatPassword: + Default: unset + Description: The password for the Heat service account, used by the Heat services. + Type: String + NoEcho: true Image: Default: undercloud Type: String + NeutronPassword: + Default: unset + Description: The password for the neutron service account, used by neutron agents. + Type: String + NoEcho: true + NeutronNativePXE: + Default: '' + Type: String + Description: Set truthy to enable Neutron native PXE. + NovaPassword: + Default: unset + Description: The password for the nova service account, used by nova-api. + Type: String + NoEcho: true PowerUserName: Default: stack Description: What username to ssh to the virtual power host with. @@ -20,7 +57,7 @@ Resources: AccessPolicy: Properties: AllowedResources: - - notcompute + - notcomputeConfig Type: OS::Heat::AccessPolicy Key: Properties: @@ -32,13 +69,26 @@ Resources: Policies: - Ref: AccessPolicy Type: AWS::IAM::User - notcompute: + notcomputeConfig: + Type: AWS::AutoScaling::LaunchConfiguration + Properties: + ImageId: '0' + InstanceType: foo Metadata: OpenStack::Heat::Stack: {} Openstack::ImageBuilder::Elements: [ boot-stack, heat-cfntools, neutron-network-node ] - admin-password: unset - admin-token: unset - controller-address: 0.0.0.0 + admin-password: + Ref: AdminPassword + admin-token: + Ref: AdminToken + controller-address: + Fn::Select: + - 0 + - Fn::Select: + - "ctlplane" + - Fn::GetAtt: + - notcompute + - networks cinder: db: mysql://cinder:unset@localhost/cinder volume_size_mb: '5000' @@ -46,20 +96,38 @@ Resources: glance: db: mysql://glance:unset@localhost/glance host: 127.0.0.1 + service-password: + Ref: GlancePassword heat: - admin_password: unset + admin_password: + Ref: HeatPassword admin_tenant_name: service admin_user: heat auth_encryption_key: unset___________ db: mysql://heat:unset@localhost/heat - heat_watch_server_url: http://0.0.0.0:8003 - metadata_server_url: http://0.0.0.0:8000 - waitcondition_server_url: http://0.0.0.0:8000/v1/waitcondition + heat_watch_server_url: + Fn::Join: + - '' + - - http:// + - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]} + - ":8003" + metadata_server_url: + Fn::Join: + - '' + - - http:// + - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]} + - ":8000" + waitcondition_server_url: + Fn::Join: + - '' + - - http:// + - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]} + - ":8000/v1/waitcondition" os-collect-config: cfn: access_key_id: Ref: Key - path: Resources.notcompute + path: notcomputeConfig.Metadata secret_access_key: Fn::GetAtt: - Key @@ -72,7 +140,7 @@ Resources: db: mysql://keystone:unset@localhost/keystone host: 127.0.0.1 nova: - compute_hostname: ubuntu + compute_hostname: undercloud compute_driver: baremetal.driver.BareMetalDriver db: mysql://nova:unset@localhost/nova host: 127.0.0.1 @@ -81,7 +149,8 @@ Resources: ram_allocation_ratio: 1.0 reserved_host_memory_mb: 0 baremetal: - arch: i386 + arch: + Ref: BaremetalArch db: mysql://nova:unset@localhost/nova_bm power_manager: nova.virt.baremetal.virtual_power_driver.VirtualPowerManager pxe_deploy_timeout: 2400 @@ -91,8 +160,12 @@ Resources: key: /opt/stack/boot-stack/virtual-power-key ssh_host: 192.168.122.1 type: virsh + service-password: + Ref: NovaPassword neutron: host: 127.0.0.1 + native_pxe: + Ref: NeutronNativePXE ovs_db: mysql://neutron:unset@localhost/ovs_neutron?charset=utf8 ovs: dnsmasq_range: [192.0.2.25, 192.0.2.44] @@ -103,18 +176,29 @@ Resources: bridge_mappings: ctlplane:br-ctlplane tenant_network_type: vlan enable_tunneling: 'False' + service-password: + Ref: NeutronPassword rabbit: host: 127.0.0.1 password: guest - swift: - store_user: unset - store_key: unset - service-password: unset + notcompute: + Type: OS::Nova::Server Properties: - ImageId: + image: Ref: Image - InstanceType: - Ref: InstanceType - KeyName: + flavor: + Ref: Flavor + key_name: Ref: KeyName - Type: AWS::EC2::Instance + Metadata: + os-collect-config: + cfn: + access_key_id: + Ref: Key + path: notcomputeConfig.Metadata + secret_access_key: + Fn::GetAtt: + - Key + - SecretAccessKey + stack_name: + Ref: AWS::StackName