X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=undercloud-vm.yaml;h=8c948caf3a7a6857c0edc724672c05f0c0f659b9;hb=69f1dcc7cb1f881b9df0d0c5ac0c34627bc1d775;hp=0b21a310922cd9e98643d7c4a383e9261590054c;hpb=94eb778d718877da2abfe2af22d6bccf01c45668;p=apex-tripleo-heat-templates.git diff --git a/undercloud-vm.yaml b/undercloud-vm.yaml index 0b21a310..8c948caf 100644 --- a/undercloud-vm.yaml +++ b/undercloud-vm.yaml @@ -1,17 +1,54 @@ 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,35 +96,51 @@ 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 - access_key_id: - Ref: Key - refresh: - - resource: notcompute - secret_key: - Fn::GetAtt: - - Key - - SecretAccessKey - stack: - name: + 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: notcomputeConfig.Metadata + secret_access_key: + Fn::GetAtt: + - Key + - SecretAccessKey + stack_name: Ref: AWS::StackName - region: - Ref: AWS::Region interfaces: control: eth2 keystone: 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 @@ -83,18 +149,23 @@ 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: 1200 + pxe_deploy_timeout: 2400 virtual_power: user: Ref: PowerUserName 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,23 +174,31 @@ Resources: physical_network: ctlplane network_vlan_ranges: ctlplane bridge_mappings: ctlplane:br-ctlplane - fixed_range: - start: 192.0.2.5 - end: 192.0.2.24 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