Nested stack of nova-compute-instance.yaml
authorClint Byrum <clint@fewbar.com>
Thu, 23 May 2013 22:49:41 +0000 (15:49 -0700)
committerClint Byrum <clint@fewbar.com>
Thu, 6 Jun 2013 16:40:16 +0000 (09:40 -0700)
nova-compute-group.yaml [new file with mode: 0644]
nova-compute-instance.yaml

diff --git a/nova-compute-group.yaml b/nova-compute-group.yaml
new file mode 100644 (file)
index 0000000..b1ffa21
--- /dev/null
@@ -0,0 +1,61 @@
+HeatTemplateFormatVersion: '2012-12-12'
+Description: 'Group of Nova Computes'
+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: baremetal
+  NovaImage:
+    Type: String
+  KeystoneHost:
+    Type: String
+  ServicePassword:
+    Description: admin_password for setting up auth in nova.
+    Type: String
+  QuantumHost:
+    Type: String
+  RabbitHost:
+    Type: String
+  RabbitPassword:
+    Type: String
+  NovaInterfaces:
+    Type: String
+    Default: eth0
+  NovaComputeDriver:
+    Type: String
+    Default: libvirt.LibvirtDriver
+  NovaApiHost:
+    Type: String
+  GlanceHost:
+    Type: String
+  NovaComputeTemplate:
+    Type: String
+    Default: https://raw.github.com/SpamapS/templates/MERGE/nova-compute-instance.yaml
+  NovaDSN:
+    Type: String
+  QuantumDSN:
+    Type: String
+Resources:
+  NovaCompute0:
+    Type: AWS::CloudFormation::Stack
+    Properties:
+      Parameters:
+        NovaImage: {Ref: NovaImage}
+        InstanceType: {Ref: InstanceType}
+        KeyName: {Ref: KeyName}
+        KeystoneHost: {Ref: KeystoneHost}
+        ServicePassword: {Ref: ServicePassword}
+        QuantumHost: {Ref: QuantumHost}
+        RabbitHost: {Ref: RabbitHost}
+        RabbitPassword: {Ref: RabbitPassword}
+        NovaInterfaces: {Ref: NovaInterfaces}
+        NovaComputeDriver: {Ref: NovaComputeDriver}
+        NovaApiHost: {Ref: NovaApiHost}
+        GlanceHost: {Ref: GlanceHost}
+        NovaDSN: {Ref: NovaDSN}
+        QuantumDSN: {Ref: QuantumDSN}
+      TemplateURL: {Ref: NovaComputeTemplate}
index 2c9b838..f508377 100644 (file)
@@ -28,8 +28,14 @@ Parameters:
   NovaComputeDriver:
     Type: String
     Default: libvirt.LibvirtDriver
+  NovaApiHost:
+    Type: String
   GlanceHost:
     Type: String
+  NovaDSN:
+    Type: String
+  QuantumDSN:
+    Type: String
 Resources:
   AccessPolicy:
     Type: OS::Heat::AccessPolicy
@@ -65,12 +71,23 @@ Resources:
           - resource: NovaCompute
       nova:
         compute_driver: {Ref: NovaComputeDriver}
+        db: {Ref: NovaDSN}
+        host: {Ref: NovaApiHost}
       glance:
         host: {Ref: GlanceHost}
       keystone:
         host: {Ref: KeystoneHost}
       quantum:
         host: {Ref: QuantumHost}
+        ovs_db: {Ref: QuantumDSN}
+        ovs:
+          local_ip:
+            Fn::GetAtt: [ NovaCompute, PrivateIp ]
+          tenant_network_type: gre
+          network_vlan_ranges: ''
+          bridge_mappings: ''
+          enable_tunneling: 'True'
+
       service-password: {Ref: ServicePassword}
       admin-password: {Ref: ServicePassword}
       rabbit: