diff options
author | Clint Byrum <clint@fewbar.com> | 2013-02-28 08:33:23 -0800 |
---|---|---|
committer | Clint Byrum <clint@fewbar.com> | 2013-02-28 08:33:23 -0800 |
commit | a6e6afaa5a0bb98ce7862fcdae197357c127203d (patch) | |
tree | 394fcc0014f985d4490bfca36a1f8382474bd1e8 /mysql.yaml | |
parent | a6889c1cd3d7776e5533bde5d187ce27a0d1af92 (diff) |
Adding keystone and mysql
Diffstat (limited to 'mysql.yaml')
-rw-r--r-- | mysql.yaml | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/mysql.yaml b/mysql.yaml new file mode 100644 index 00000000..3df3d0e3 --- /dev/null +++ b/mysql.yaml @@ -0,0 +1,84 @@ +HeatTemplateFormatVersion: '2012-12-12' +Description: 'HEAT Template - Dedicated MySQL server' +Parameters: + KeyName: + Description: Name of an existing EC2 KeyPair to enable SSH access to the instances + Type: String + Default: default + InstanceType: + Description: Use this flavor + Type: String + Default: m1.small + MySQLImage: + Type: String +Resources: + ApiAccessPolicy: + Type: OS::Heat::AccessPolicy + Properties: + AllowedResources: [ MySQL0 ] + ApiUser: + Type: AWS::IAM::User + Properties: + Policies: [ { Ref: ApiAccessPolicy } ] + MySQL0: + Type: AWS::EC2::Instance + Metadata: + OpenStack::ImageBuilder::Elements: [ mysql ] + OpenStack::MySQL: + masterhandle: {Ref: MySQLMasterHandle} + keystone: + userhandle: {Ref: KeystonePasswordHandle} + OpenStack::Heat::CFNTools: + AWSAccessKeyId: + Ref: ApiKey + AWSSecretAccessKey: + Fn::GetAtt: [ ApiKey, SecretAccessKey ] + Properties: + ImageId: + {Ref: MySQLImage} + InstanceType: {Ref: InstanceType} + KeyName: {Ref: KeyName} + MySQL1: + Type: AWS::EC2::Instance + DependsOn: MySQL0 + Metadata: + OpenStack::ImageBuilder::Elements: [ mysql ] + OpenStack::MySQL: + masterinfo: {Fn::GetAtt: [ MySQLMaster, Data ]} + consumers: {Ref: Consumers} + keystone: + userhandle: {Ref: KeystonePasswordHandle} + OpenStack::Heat::CFNTools: + AWSAccessKeyId: + Ref: ApiKey + AWSSecretAccessKey: + Fn::GetAtt: [ ApiKey, SecretAccessKey ] + Properties: + ImageId: + {Ref: MySQLImage} + InstanceType: {Ref: InstanceType} + KeyName: {Ref: KeyName} + MySQLMasterHandle: + Type: AWS::CloudFormation::WaitConditionHandle + MySQLMaster: + DependsOn: MySQL0 + Type: AWS::CloudFormation::WaitCondition + Properties: + Handle: {Ref: MySQLMasterHandle} + Timeout: 60 + KeystonePasswordHandle: + Type: AWS::CloudFormation:WaitConditionHandle + Properties: + KeystonePassword: + DependsOn: MySQL1 + Type: AWS::CloudFormation::WaitCondition + Properties: + Handle: {Ref: KeystonePasswordHandle} + Timeout: 60 +Outputs: + MySQLHost: + Fn::GetAtt: [ MySQL0 , PrivateIp ] + MySQLSlaves: + Fn::GetAtt: [ MySQL1, PrivateIp ] + KeystonePassword: + Fn::GetAtt: [ KeystonePassword, Data ] |