X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=overcloud-source.yaml;h=a7098227851c935cb401e8990dd8a42410ea6cd8;hb=0acac15f4ead9e5c6bec98411bbdda21f876d582;hp=ba05e2803f1653da08e8202a644fbd9fc330718a;hpb=ed3663bb150d05e7a300336e5c07d18d3afb5ab8;p=apex-tripleo-heat-templates.git diff --git a/overcloud-source.yaml b/overcloud-source.yaml index ba05e280..a7098227 100644 --- a/overcloud-source.yaml +++ b/overcloud-source.yaml @@ -17,15 +17,27 @@ Parameters: Description: The password for the cinder service account, used by cinder-api. Type: String NoEcho: true - Flavor: + OvercloudControlFlavor: Default: baremetal - Description: Flavor to request when deploying. + Description: Flavor for control nodes to request when deploying. + Type: String + OvercloudComputeFlavor: + Default: baremetal + Description: Flavor for compute nodes 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 + GlanceNotifierStrategy: + Description: Strategy to use for Glance notification queue + Type: String + Default: noop + GlanceLogFile: + Description: The filepath of the file to use for logging messages from Glance. + Type: String + Default: '' HeatPassword: Default: unset Description: The password for the Heat service account, used by the Heat services. @@ -39,6 +51,10 @@ Parameters: Default: default Description: Name of an existing EC2 KeyPair to enable SSH access to the instances Type: String + NeutronBridgeMappings: + Description: The OVS logical->physical bridge mappings to use. + Type: String + Default: '' NeutronPassword: Default: unset Description: The password for the neutron service account, used by neutron agents. @@ -59,6 +75,10 @@ Parameters: Description: The password for the ceilometer service account. Type: String NoEcho: true + CloudName: + Default: '' + Description: The DNS name of this cloud. E.g. ci-overcloud.tripleo.org + Type: String NovaComputeDriver: Default: libvirt.LibvirtDriver Type: String @@ -73,9 +93,17 @@ Parameters: 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. + NeutronFlatNetworks: + Type: String + Default: '' + Description: If set, flat networks to configure in neutron plugins. + HypervisorNeutronPhysicalBridge: + Default: '' + Description: An OVS bridge to create on each hypervisor. + Type: String + HypervisorNeutronPublicInterface: + Default: '' + Description: What interface to add to the HypervisorNeutronPhysicalBridge. Type: String NeutronPublicInterface: Default: eth0 @@ -96,12 +124,64 @@ Parameters: notcomputeImage: Type: String Default: overcloud-control + NtpServer: + Type: String + Default: '' + RabbitUserName: + Default: guest + Description: The username for RabbitMQ + Type: String + RabbitPassword: + Default: guest + Description: The password for RabbitMQ + Type: String + NoEcho: true + RabbitCookieSalt: + Type: String + Default: unset + Description: Salt for the rabbit cookie, change this to force the randomly generated rabbit cookie to change. + HeatStackDomainAdminPassword: + Description: Password for heat_domain_admin user. + Type: String + Default: '' + NoEcho: true + LiveUpdateUserName: + Type: String + Description: The live-update username for the undercloud Glance API. + Default: '' + LiveUpdateTenantName: + Type: String + Description: The live-update tenant name for the undercloud Glance API. + Default: '' + LiveUpdateHost: + Type: String + Description: The IP address for the undercloud Glance API. + Default: '' + LiveUpdatePassword: + Type: String + Default: '' + Description: The live-update password for the undercloud Glance API. + NoEcho: true + LiveUpdateComputeImage: + Type: String + Description: The image ID for live-updates to the overcloud compute nodes. + Default: '' + MysqlInnodbBufferPoolSize: + Description: Specifies the size of the buffer pool in megabytes. + Type: Number + Default: 100 Resources: + RabbitCookie: + Type: OS::Heat::RandomString + Properties: + length: 20 + salt: + Ref: RabbitCookieSalt AccessPolicy: Properties: AllowedResources: - - notcompute - - notcomputeConfig + - notCompute0 + - notCompute0Config Type: OS::Heat::AccessPolicy ComputeAccessPolicy: Properties: @@ -109,25 +189,32 @@ Resources: - NovaCompute0 - NovaCompute0Config Type: OS::Heat::AccessPolicy - Key: + notCompute0Key: Properties: UserName: Ref: User Type: AWS::IAM::AccessKey - CompletionCondition: + notCompute0CompletionCondition: Type: AWS::CloudFormation::WaitCondition - DependsOn: notcompute + DependsOn: notCompute0Config Properties: - Handle: {Ref: CompletionHandle} - Count: '2' + Handle: {Ref: notCompute0CompletionHandle} + Count: '1' Timeout: '1800' - CompletionHandle: - Type: AWS::CloudFormation::WaitConditionHandle - ComputeKey: - Properties: - UserName: - Ref: ComputeUser - Type: AWS::IAM::AccessKey + notCompute0CompletionHandle: + Type: OS::Heat::UpdateWaitConditionHandle + NovaCompute0Key: + Type: FileInclude + Path: nova-compute-instance.yaml + SubKey: Resources.NovaCompute0Key + NovaCompute0CompletionCondition: + Type: FileInclude + Path: nova-compute-instance.yaml + SubKey: Resources.NovaCompute0CompletionCondition + NovaCompute0CompletionHandle: + Type: FileInclude + Path: nova-compute-instance.yaml + SubKey: Resources.NovaCompute0CompletionHandle ComputeUser: Properties: Policies: @@ -138,19 +225,66 @@ Resources: Path: nova-compute-instance.yaml SubKey: Resources.NovaCompute0Config Parameters: - NovaApiHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notcompute, networks]} ]} ] } - KeystoneHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notcompute, networks]} ]} ] } - RabbitHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notcompute, networks]} ]} ] } - NeutronHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notcompute, networks]} ]} ] } - GlanceHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notcompute, networks]} ]} ] } - NovaDSN: {"Fn::Join": ['', ['mysql://nova:unset@', {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notcompute, networks]} ]} ]}, '/nova']]} - CeilometerDSN: {"Fn::Join": ['', ['mysql://ceilometer:unset@', {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notcompute, networks]} ]} ]}, '/ceilometer']]} - NeutronDSN: {"Fn::Join": ['', ['mysql://neutron:unset@', {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notcompute, networks]} ]} ]}, '/neutron']]} + NovaApiHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notCompute0, networks]} ]} ] } + KeystoneHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notCompute0, networks]} ]} ] } + RabbitHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notCompute0, networks]} ]} ] } + NeutronHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notCompute0, networks]} ]} ] } + GlanceHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notCompute0, networks]} ]} ] } + NovaDSN: {"Fn::Join": ['', ['mysql://nova:unset@', {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notCompute0, networks]} ]} ]}, '/nova']]} + CeilometerDSN: {"Fn::Join": ['', ['mysql://ceilometer:unset@', {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notCompute0, networks]} ]} ]}, '/ceilometer']]} + NeutronDSN: {"Fn::Join": ['', ['mysql://neutron:unset@', {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [notCompute0, networks]} ]} ]}, '/neutron']]} NeutronNetworkType: "gre" NeutronEnableTunnelling: "True" + NeutronFlatNetworks: + Ref: NeutronFlatNetworks NeutronNetworkVLANRanges: "" - NeutronBridgeMappings: "" - RabbitPassword: "guest" + NeutronPhysicalBridge: + Ref: HypervisorNeutronPhysicalBridge + NeutronPublicInterface: + Ref: HypervisorNeutronPublicInterface + NeutronBridgeMappings: + Ref: NeutronBridgeMappings + StaticHosts: + Fn::Join: + - "\n" + - - Fn::Join: + - "\n" + - Merge::Map: + NovaCompute0: + Fn::Join: + - ' ' + - - Fn::Select: + - 0 + - Fn::Select: + - ctlplane + - Fn::GetAtt: + - NovaCompute0 + - networks + - Fn::Select: + - name + - Fn::GetAtt: + - NovaCompute0 + - show + - Fn::Join: + - '.' + - - Fn::Select: + - name + - Fn::GetAtt: + - NovaCompute0 + - show + - 'novalocal' + - Fn::Join: + - ' ' + - - Fn::Select: + - 0 + - Fn::Select: + - ctlplane + - Fn::GetAtt: + - notCompute0 + - networks + - {Ref: CloudName} + # If CloudName is unset, make the hosts line still valid + - unused NovaCompute0: Type: FileInclude Path: nova-compute-instance.yaml @@ -160,7 +294,7 @@ Resources: Policies: - Ref: AccessPolicy Type: AWS::IAM::User - notcomputeConfig: + notCompute0Config: Type: AWS::AutoScaling::LaunchConfiguration Properties: ImageId: '0' @@ -185,14 +319,14 @@ Resources: service-password: Ref: CinderPassword completion-handle: - Ref: CompletionHandle + Ref: notCompute0CompletionHandle controller-address: Fn::Select: - 0 - Fn::Select: - 'ctlplane' - Fn::GetAtt: - - notcompute + - notCompute0 - networks db-password: unset glance: @@ -204,13 +338,17 @@ Resources: - Fn::Select: - 'ctlplane' - Fn::GetAtt: - - notcompute + - notCompute0 - networks service-password: Ref: GlancePassword swift-store-user: service:glance swift-store-key: Ref: GlancePassword + notifier-strategy: + Ref: GlanceNotifierStrategy + log-file: + Ref: GlanceLogFile heat: admin_password: Ref: HeatPassword @@ -218,6 +356,7 @@ Resources: admin_user: heat auth_encryption_key: unset___________ db: mysql://heat:unset@localhost/heat + stack_domain_admin_password: {Ref: HeatStackDomainAdminPassword} watch_server_url: Fn::Join: - '' @@ -227,7 +366,7 @@ Resources: - Fn::Select: - 'ctlplane' - Fn::GetAtt: - - notcompute + - notCompute0 - networks - ':8003' metadata_server_url: @@ -239,7 +378,7 @@ Resources: - Fn::Select: - 'ctlplane' - Fn::GetAtt: - - notcompute + - notCompute0 - networks - ':8000' waitcondition_server_url: @@ -251,9 +390,20 @@ Resources: - Fn::Select: - 'ctlplane' - Fn::GetAtt: - - notcompute + - notCompute0 - networks - ':8000/v1/waitcondition' + hosts: + Fn::Join: + - ' ' + - - Fn::Select: + - 0 + - Fn::Select: + - ctlplane + - Fn::GetAtt: + - notCompute0 + - networks + - {Ref: CloudName} keystone: db: mysql://keystone:unset@localhost/keystone host: @@ -262,16 +412,19 @@ Resources: - Fn::Select: - 'ctlplane' - Fn::GetAtt: - - notcompute + - notCompute0 - networks + mysql: + innodb_buffer_pool_size: {Ref: MysqlInnodbBufferPoolSize} neutron: + flat-networks: {Ref: NeutronFlatNetworks} host: Fn::Select: - 0 - Fn::Select: - ctlplane - Fn::GetAtt: - - notcompute + - notCompute0 - networks metadata_proxy_shared_secret: unset ovs: @@ -282,8 +435,9 @@ Resources: - Fn::Select: - ctlplane - Fn::GetAtt: - - notcompute + - notCompute0 - networks + bridge_mappings: {Ref: NeutronBridgeMappings} public_interface: Ref: NeutronPublicInterface public_interface_raw_device: @@ -311,7 +465,7 @@ Resources: - Fn::Select: - 'ctlplane' - Fn::GetAtt: - - notcompute + - notCompute0 - networks metadata-proxy: true service-password: @@ -319,11 +473,11 @@ Resources: os-collect-config: cfn: access_key_id: - Ref: Key - path: notcomputeConfig.Metadata + Ref: notCompute0Key + path: notCompute0Config.Metadata secret_access_key: Fn::GetAtt: - - Key + - notCompute0Key - SecretAccessKey stack_name: Ref: AWS::StackName @@ -334,10 +488,20 @@ Resources: - Fn::Select: - ctlplane - Fn::GetAtt: - - notcompute + - notCompute0 - networks - password: guest - notcompute: + username: + Ref: RabbitUserName + password: + Ref: RabbitPassword + cookie: + Fn::GetAtt: + - RabbitCookie + - value + ntp: + servers: + - {server: {Ref: NtpServer}, fudge: "stratum 0"} + notCompute0: Type: OS::Nova::Server Properties: image: @@ -345,18 +509,18 @@ Resources: image_update_policy: Ref: ImageUpdatePolicy flavor: - Ref: Flavor + Ref: OvercloudControlFlavor key_name: Ref: KeyName Metadata: os-collect-config: cfn: access_key_id: - Ref: Key - path: notcomputeConfig.Metadata + Ref: notCompute0Key + path: notCompute0Config.Metadata secret_access_key: Fn::GetAtt: - - Key + - notCompute0Key - SecretAccessKey stack_name: Ref: AWS::StackName @@ -372,6 +536,6 @@ Outputs: - Fn::Select: - ctlplane - Fn::GetAtt: - - notcompute + - notCompute0 - networks - :5000/v2.0/