From 2b9a378e7024dae98d16ce2de1468f65a095f309 Mon Sep 17 00:00:00 2001 From: Sam Thursfield Date: Thu, 16 Jul 2015 11:09:21 +0100 Subject: Reformat all definitions according to a consistent style This was done using the 'indent' tool, which uses a fork of PyYAML named 'ruamel.yaml' to rewrite YAML files without losing comments, ordering, or certain elements of formatting. My aim with doing this is to open the door to automated editing of the reference system definitions using the 'ruamel.yaml' library. This can be used to implement automated migration when we want to make changes to the YAML format that we use to represent Baserock system definitions. Although this looks drastic, remember that it's actually only altered 65 out of 608 .morph files -- the vast majority already pass unchanged through my version of ruamel.yaml. Change-Id: I95ec978714b5bd1c02c90183336a9fbb846cb692 --- clusters/cephclient.morph | 26 +-- clusters/ci.morph | 39 +++-- clusters/example-swift-storage-cluster.morph | 14 +- clusters/jetson-upgrade.morph | 17 +- clusters/mason-openstack.morph | 2 +- ...nimal-system-armv5l-openbmc-aspeed-deploy.morph | 6 +- clusters/moonshot-m2-armv8b64.morph | 36 ++-- clusters/moonshot-pxe-armv8b64.morph | 16 +- clusters/moonshot-pxe-armv8l64.morph | 4 +- clusters/openstack-one-node-swift.morph | 24 +-- clusters/openstack-one-node.morph | 8 +- clusters/openstack-three-node-installer.morph | 183 ++++++++++----------- clusters/openstack-two-node-installer.morph | 163 +++++++++--------- clusters/release.morph | 26 +-- clusters/zookeeper.morph | 36 ++-- 15 files changed, 302 insertions(+), 298 deletions(-) (limited to 'clusters') diff --git a/clusters/cephclient.morph b/clusters/cephclient.morph index 2585fbdf..9eaf92ee 100644 --- a/clusters/cephclient.morph +++ b/clusters/cephclient.morph @@ -3,18 +3,18 @@ kind: cluster systems: - morph: systems/ceph-service-x86_64-generic.morph deploy: - ceph-node-virtualbox-image: - type: extensions/virtualbox-ssh - SYSTEM: systems/ceph-service-x86_64-generic.morph - location: vbox+ssh://user@machine/ChefNode4/home/user/chefnode4.vdi - # HOST_IPADDR and NETMASK should be set to the IP address and netmask of the virtualbox host on the host-only interface. - #HOST_IPADDR: 10.0.100.100 - #NETMASK: 255.255.255.0 + ceph-node-virtualbox-image: + type: extensions/virtualbox-ssh + SYSTEM: systems/ceph-service-x86_64-generic.morph + location: vbox+ssh://user@machine/ChefNode4/home/user/chefnode4.vdi + # HOST_IPADDR and NETMASK should be set to the IP address and netmask of the virtualbox host on the host-only interface. + #HOST_IPADDR: 10.0.100.100 + #NETMASK: 255.255.255.0 - # This is an example of how to configure the three interfaces necessary to support ceph in the BCPC configuration. - #NETWORK_CONFIG: lo:loopback;enp0s3:static,address=10.0.100.14,netmask=255.255.255.0;enp0s8:static,address=172.16.100.14,netmask=255.255.255.0;enp0s9:static,address=192.168.100.14,netmask=255.255.255.0 - DISK_SIZE: 8G - HOSTNAME: CephNode4 + # This is an example of how to configure the three interfaces necessary to support ceph in the BCPC configuration. + #NETWORK_CONFIG: lo:loopback;enp0s3:static,address=10.0.100.14,netmask=255.255.255.0;enp0s8:static,address=172.16.100.14,netmask=255.255.255.0;enp0s9:static,address=192.168.100.14,netmask=255.255.255.0 + DISK_SIZE: 8G + HOSTNAME: CephNode4 - # You must install authorized_keys in chef/root/.ssh/ before this will work. - INSTALL_FILES: install-files/chef/manifest + # You must install authorized_keys in chef/root/.ssh/ before this will work. + INSTALL_FILES: install-files/chef/manifest diff --git a/clusters/ci.morph b/clusters/ci.morph index 69b7c76a..fc3e50a7 100644 --- a/clusters/ci.morph +++ b/clusters/ci.morph @@ -24,12 +24,13 @@ systems: type: extensions/rawdisk location: build-system-armv7lhf-jetson.img DISK_SIZE: 2G - BOOT_DEVICE: "/dev/mmcblk0p1" - ROOT_DEVICE: "/dev/mmcblk0p2" - DTB_PATH: "boot/tegra124-jetson-tk1.dtb" - BOOTLOADER_CONFIG_FORMAT: "extlinux" - BOOTLOADER_INSTALL: "none" - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 nouveau.pstate=1 + BOOT_DEVICE: /dev/mmcblk0p1 + ROOT_DEVICE: /dev/mmcblk0p2 + DTB_PATH: boot/tegra124-jetson-tk1.dtb + BOOTLOADER_CONFIG_FORMAT: extlinux + BOOTLOADER_INSTALL: none + KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 + nouveau.pstate=1 - morph: systems/weston-system-x86_64-generic.morph deploy: weston-system-x86_64-generic: @@ -43,12 +44,13 @@ systems: type: extensions/rawdisk location: weston-system-armv7lhf-jetson.img DISK_SIZE: 4G - BOOT_DEVICE: "/dev/mmcblk0p1" - ROOT_DEVICE: "/dev/mmcblk0p2" - DTB_PATH: "boot/tegra124-jetson-tk1.dtb" - BOOTLOADER_CONFIG_FORMAT: "extlinux" - BOOTLOADER_INSTALL: "none" - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 nouveau.pstate=1 + BOOT_DEVICE: /dev/mmcblk0p1 + ROOT_DEVICE: /dev/mmcblk0p2 + DTB_PATH: boot/tegra124-jetson-tk1.dtb + BOOTLOADER_CONFIG_FORMAT: extlinux + BOOTLOADER_INSTALL: none + KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 + nouveau.pstate=1 - morph: systems/genivi-baseline-system-x86_64-generic.morph deploy: genivi-baseline-system-x86_64-generic: @@ -62,12 +64,13 @@ systems: type: extensions/rawdisk location: genivi-baseline-system-armv7lhf-jetson.img DISK_SIZE: 4G - BOOT_DEVICE: "/dev/mmcblk0p1" - ROOT_DEVICE: "/dev/mmcblk0p2" - DTB_PATH: "boot/tegra124-jetson-tk1.dtb" - BOOTLOADER_CONFIG_FORMAT: "extlinux" - BOOTLOADER_INSTALL: "none" - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 nouveau.pstate=1 + BOOT_DEVICE: /dev/mmcblk0p1 + ROOT_DEVICE: /dev/mmcblk0p2 + DTB_PATH: boot/tegra124-jetson-tk1.dtb + BOOTLOADER_CONFIG_FORMAT: extlinux + BOOTLOADER_INSTALL: none + KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 + nouveau.pstate=1 - morph: systems/openstack-system-x86_64.morph deploy: openstack-system-x86_64: diff --git a/clusters/example-swift-storage-cluster.morph b/clusters/example-swift-storage-cluster.morph index e5e7b6ab..ddab6481 100644 --- a/clusters/example-swift-storage-cluster.morph +++ b/clusters/example-swift-storage-cluster.morph @@ -11,13 +11,13 @@ systems: SWIFT_REPLICAS: 3 SWIFT_MIN_PART_HOURS: 1 - SWIFT_STORAGE_DEVICES: [{ ip: , device: sdb, weight: 100 }, - { ip: , device: sdc, weight: 100 }, - { ip: , device: sdd, weight: 100 }, - - { ip: , device: sdb, weight: 100 }, - { ip: , device: sdc, weight: 100 }, - { ip: , device: sdd, weight: 100 }] + SWIFT_STORAGE_DEVICES: + - {ip: , device: sdb, weight: 100} + - {ip: , device: sdc, weight: 100} + - {ip: , device: sdd, weight: 100} + - {ip: , device: sdb, weight: 100} + - {ip: , device: sdc, weight: 100} + - {ip: , device: sdd, weight: 100} # This value can be any random string or number # but each node in your swift cluster must have the same value diff --git a/clusters/jetson-upgrade.morph b/clusters/jetson-upgrade.morph index e6ec97e0..c335445b 100644 --- a/clusters/jetson-upgrade.morph +++ b/clusters/jetson-upgrade.morph @@ -5,14 +5,15 @@ systems: deploy-defaults: TROVE_HOST: TROVE_HOST TROVE_ID: TROVE_ID - BOOT_DEVICE: "/dev/mmcblk0p1" - ROOT_DEVICE: "/dev/mmcblk0p2" - DTB_PATH: "boot/tegra124-jetson-tk1.dtb" - BOOTLOADER_CONFIG_FORMAT: "extlinux" - BOOTLOADER_INSTALL: "none" - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 nouveau.pstate=1 + BOOT_DEVICE: /dev/mmcblk0p1 + ROOT_DEVICE: /dev/mmcblk0p2 + DTB_PATH: boot/tegra124-jetson-tk1.dtb + BOOTLOADER_CONFIG_FORMAT: extlinux + BOOTLOADER_INSTALL: none + KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 + nouveau.pstate=1 FSTAB_SRC: LABEL=src /src auto defaults,rw,noatime,nofail 0 2 deploy: self: - type: extensions/ssh-rsync - location: root@127.0.0.1 + type: extensions/ssh-rsync + location: root@127.0.0.1 diff --git a/clusters/mason-openstack.morph b/clusters/mason-openstack.morph index 935e2496..cc7c1d4d 100644 --- a/clusters/mason-openstack.morph +++ b/clusters/mason-openstack.morph @@ -34,6 +34,6 @@ systems: OPENSTACK_TENANT_ID: 7d7ebfe23367490b973a10fa426c3aec OPENSTACK_IMAGENAME: mason-openstack OPENSTACK_NETWORK_ID: 71f5151a-b7c3-405d-a841-d1b07e5db099 - CLOUD_INIT: yes + CLOUD_INIT: true KERNEL_ARGS: console=ttyS0 console=tty0 TEST_INFRASTRUCTURE_TYPE: openstack diff --git a/clusters/minimal-system-armv5l-openbmc-aspeed-deploy.morph b/clusters/minimal-system-armv5l-openbmc-aspeed-deploy.morph index 9647e7a7..3154fa26 100644 --- a/clusters/minimal-system-armv5l-openbmc-aspeed-deploy.morph +++ b/clusters/minimal-system-armv5l-openbmc-aspeed-deploy.morph @@ -6,8 +6,8 @@ systems: minimal-system-armv5l-openbmc-aspeed: type: extensions/jffs2 location: minimal-system-armv5l-openbmc-aspeed.img - ROOT_DEVICE: "/dev/mtdblock" - BOOTLOADER_CONFIG_FORMAT: "extlinux" - BOOTLOADER_INSTALL: "none" + ROOT_DEVICE: /dev/mtdblock + BOOTLOADER_CONFIG_FORMAT: extlinux + BOOTLOADER_INSTALL: none ERASE_BLOCK: 64 INIT_SYSTEM: busybox diff --git a/clusters/moonshot-m2-armv8b64.morph b/clusters/moonshot-m2-armv8b64.morph index c6d62ca2..caa460c3 100644 --- a/clusters/moonshot-m2-armv8b64.morph +++ b/clusters/moonshot-m2-armv8b64.morph @@ -14,32 +14,32 @@ systems: PXEBOOT_CONFIG_TFTP_ADDRESS: sftp://192.168.0.1/srv/nfsboot/tftp/ PXEBOOT_ROOTFS_RSYNC_ADDRESS: rsync://192.168.0.1/srv/nfsboot/ PXEBOOT_PXE_REBOOT_COMMAND: | - ssh Administrator@10.0.1.10 set node power off force c31n1 - ssh Administrator@10.0.1.10 set node boot pxe c31n1 - # Nodes are powered on twice as sometimes powering them on - # once is not enough - ssh Administrator@10.0.1.10 set node power on c31n1 - ssh Administrator@10.0.1.10 set node power on c31n1 + ssh Administrator@10.0.1.10 set node power off force c31n1 + ssh Administrator@10.0.1.10 set node boot pxe c31n1 + # Nodes are powered on twice as sometimes powering them on + # once is not enough + ssh Administrator@10.0.1.10 set node power on c31n1 + ssh Administrator@10.0.1.10 set node power on c31n1 PXEBOOT_REBOOT_COMMAND: | - ssh Administrator@10.0.1.10 set node power off force c31n1 - ssh Administrator@10.0.1.10 set node boot m.2 c31n1 - ssh Administrator@10.0.1.10 set node power on c31n1 - ssh Administrator@10.0.1.10 set node power on c31n1 + ssh Administrator@10.0.1.10 set node power off force c31n1 + ssh Administrator@10.0.1.10 set node boot m.2 c31n1 + ssh Administrator@10.0.1.10 set node power on c31n1 + ssh Administrator@10.0.1.10 set node power on c31n1 INSTALLER_TARGET_STORAGE_DEVICE: /dev/sda INSTALLER_ROOTFS_TO_INSTALL: /rootfs INSTALLER_POST_INSTALL_COMMAND: | - while : ; do - echo "enter 'installed' in your deployment machine to finish the installation" - sleep 2 - done - INSTALLER_CREATE_BOOT_PARTITION: yes + while : ; do + echo "enter 'installed' in your deployment machine to finish the installation" + sleep 2 + done + INSTALLER_CREATE_BOOT_PARTITION: true HOSTNAME: installer-system-c31n1 DTB_PATH: boot/m400-1003.dtb KERNEL_ARGS: console=ttyS0,9600n8r init=/usr/lib/baserock-installer/installer INSTALL_FILES: install-files/moonshot/manifest - MOONSHOT_KERNEL: yes + MOONSHOT_KERNEL: true subsystems: - morph: systems/devel-system-armv8b64.morph deploy: @@ -49,8 +49,8 @@ systems: HOSTNAME: baserock-c31n1 DTB_PATH: boot/m400-1003.dtb INSTALL_FILES: install-files/moonshot/manifest - MOONSHOT_KERNEL: yes + MOONSHOT_KERNEL: true BOOT_DEVICE: /dev/sda1 ROOT_DEVICE: /dev/sda2 BOOTLOADER_CONFIG_FORMAT: extlinux - BOOTLOADER_INSTALL: "none" + BOOTLOADER_INSTALL: none diff --git a/clusters/moonshot-pxe-armv8b64.morph b/clusters/moonshot-pxe-armv8b64.morph index ffee0392..af59817a 100644 --- a/clusters/moonshot-pxe-armv8b64.morph +++ b/clusters/moonshot-pxe-armv8b64.morph @@ -15,16 +15,16 @@ systems: PXEBOOT_CONFIG_TFTP_ADDRESS: sftp://192.168.0.1/srv/nfsboot/tftp/ PXEBOOT_ROOTFS_RSYNC_ADDRESS: rsync://192.168.0.1/srv/nfsboot/ PXEBOOT_PXE_REBOOT_COMMAND: | - ssh Administrator@10.0.1.10 set node power off force c31n1 - ssh Administrator@10.0.1.10 set node boot pxe c31n1 - # Nodes are powered on twice as sometimes powering them on - # once is not enough - ssh Administrator@10.0.1.10 set node power on c31n1 - ssh Administrator@10.0.1.10 set node power on c31n1 - PXE_INSTALLER: no + ssh Administrator@10.0.1.10 set node power off force c31n1 + ssh Administrator@10.0.1.10 set node boot pxe c31n1 + # Nodes are powered on twice as sometimes powering them on + # once is not enough + ssh Administrator@10.0.1.10 set node power on c31n1 + ssh Administrator@10.0.1.10 set node power on c31n1 + PXE_INSTALLER: false HOSTNAME: baserock-c31n1 DTB_PATH: boot/m400-1003.dtb KERNEL_ARGS: console=ttyS0,9600n8r rw INSTALL_FILES: install-files/moonshot/manifest - MOONSHOT_KERNEL: yes + MOONSHOT_KERNEL: true diff --git a/clusters/moonshot-pxe-armv8l64.morph b/clusters/moonshot-pxe-armv8l64.morph index 62ee92a2..80771d52 100644 --- a/clusters/moonshot-pxe-armv8l64.morph +++ b/clusters/moonshot-pxe-armv8l64.morph @@ -17,6 +17,6 @@ systems: KERNEL_ARGS: console=ttyS0,9600n8r rw DTB_PATH: boot/m400-1003.dtb HOSTNAME: baserock-m400-node31 - MOONSHOT_KERNEL: yes + MOONSHOT_KERNEL: true INSTALL_FILES: install-files/moonshot/manifest - PXE_INSTALLER: no + PXE_INSTALLER: false diff --git a/clusters/openstack-one-node-swift.morph b/clusters/openstack-one-node-swift.morph index de7066d6..fc289538 100644 --- a/clusters/openstack-one-node-swift.morph +++ b/clusters/openstack-one-node-swift.morph @@ -51,7 +51,7 @@ systems: ## Swift config options ######################################################################### - SWIFT_CONTROLLER: True + SWIFT_CONTROLLER: true SWIFT_ADMIN_PASSWORD: insecure @@ -59,13 +59,13 @@ systems: SWIFT_REPLICAS: 3 SWIFT_MIN_PART_HOURS: 1 - SWIFT_STORAGE_DEVICES: [{ ip: , device: sdb, weight: 100 }, - { ip: , device: sdc, weight: 100 }, - { ip: , device: sdd, weight: 100 }, - - { ip: , device: sdb, weight: 100 }, - { ip: , device: sdc, weight: 100 }, - { ip: , device: sdd, weight: 100 }] + SWIFT_STORAGE_DEVICES: + - {ip: , device: sdb, weight: 100} + - {ip: , device: sdc, weight: 100} + - {ip: , device: sdd, weight: 100} + - {ip: , device: sdb, weight: 100} + - {ip: , device: sdc, weight: 100} + - {ip: , device: sdd, weight: 100} # This value can be any random string or number # but each node in your swift cluster must have the same values @@ -91,13 +91,13 @@ systems: CONTROLLER_HOST_ADDRESS: onenode MANAGEMENT_INTERFACE_IP_ADDRESS: - KEYSTONE_ENABLE_SERVICE: True + KEYSTONE_ENABLE_SERVICE: true KEYSTONE_TEMPORARY_ADMIN_TOKEN: 22f3aa1cf538e3f6d5e8 KEYSTONE_ADMIN_PASSWORD: veryinsecure KEYSTONE_DB_USER: keystoneDB KEYSTONE_DB_PASSWORD: veryinsecure - GLANCE_ENABLE_SERVICE: True + GLANCE_ENABLE_SERVICE: true GLANCE_SERVICE_USER: glance GLANCE_SERVICE_PASSWORD: veryinsecure GLANCE_DB_USER: glanceDB @@ -108,7 +108,7 @@ systems: NOVA_DB_USER: novaDB NOVA_DB_PASSWORD: veryinsecure NOVA_VIRT_TYPE: qemu - NOVA_BAREMETAL_SCHEDULING: no + NOVA_BAREMETAL_SCHEDULING: false CINDER_SERVICE_USER: cinder CINDER_SERVICE_PASSWORD: veryinsecure @@ -123,7 +123,7 @@ systems: NEUTRON_DB_PASSWORD: veryinsecure METADATA_PROXY_SHARED_SECRET: novaneutronmetasecret - IRONIC_ENABLE_SERVICE: True + IRONIC_ENABLE_SERVICE: true IRONIC_SERVICE_USER: ironic IRONIC_SERVICE_PASSWORD: veryinsecure IRONIC_DB_USER: ironicDB diff --git a/clusters/openstack-one-node.morph b/clusters/openstack-one-node.morph index ab12f9b3..1b31996a 100644 --- a/clusters/openstack-one-node.morph +++ b/clusters/openstack-one-node.morph @@ -55,13 +55,13 @@ systems: CONTROLLER_HOST_ADDRESS: onenode MANAGEMENT_INTERFACE_IP_ADDRESS: - KEYSTONE_ENABLE_SERVICE: True + KEYSTONE_ENABLE_SERVICE: true KEYSTONE_TEMPORARY_ADMIN_TOKEN: 22f3aa1cf538e3f6d5e8 KEYSTONE_ADMIN_PASSWORD: veryinsecure KEYSTONE_DB_USER: keystoneDB KEYSTONE_DB_PASSWORD: veryinsecure - GLANCE_ENABLE_SERVICE: True + GLANCE_ENABLE_SERVICE: true GLANCE_SERVICE_USER: glance GLANCE_SERVICE_PASSWORD: veryinsecure GLANCE_DB_USER: glanceDB @@ -72,7 +72,7 @@ systems: NOVA_DB_USER: novaDB NOVA_DB_PASSWORD: veryinsecure NOVA_VIRT_TYPE: qemu - NOVA_BAREMETAL_SCHEDULING: no + NOVA_BAREMETAL_SCHEDULING: false CINDER_SERVICE_USER: cinder CINDER_SERVICE_PASSWORD: veryinsecure @@ -87,7 +87,7 @@ systems: NEUTRON_DB_PASSWORD: veryinsecure METADATA_PROXY_SHARED_SECRET: novaneutronmetasecret - IRONIC_ENABLE_SERVICE: True + IRONIC_ENABLE_SERVICE: true IRONIC_SERVICE_USER: ironic IRONIC_SERVICE_PASSWORD: veryinsecure IRONIC_DB_USER: ironicDB diff --git a/clusters/openstack-three-node-installer.morph b/clusters/openstack-three-node-installer.morph index b9c72364..87c7056b 100644 --- a/clusters/openstack-three-node-installer.morph +++ b/clusters/openstack-three-node-installer.morph @@ -1,59 +1,58 @@ name: openstack-three-node-installer kind: cluster description: | - - This is a cluster morphology for deploying an installer for an x86_64 - OpenStack system spread across three nodes. - - This cluster creates disk images that may be `dd`'d onto install media to - produce an OpenStack cluster when instantiated. - - Alternatively it may be used to install directly onto a physical disk by - running: - - morph deploy clusters/openstack-three-node-installer.morph \ - network-installer network-installer.location=/dev/vdb - - Substituting network-installer for either compute-installer or - controller-installer will produce different configurations, and it is possible - to substitue /dev/vdb for a different path to a disk image to install to a - different disk image. - - Substitute the values of HOSTNAME, NETWORK_CONFIG, EXTERNAL_INTERFACE, - MANAGEMENT_IP_ADDRESS, CONTROLLER_HOST_ADDRESS, RABBITMQ_HOST and HOSTS_* to - match your hardware and networking configuration. - - Requirements to be able to run and test the system: - - - DISK_SIZE should be bigger than 5G - - The system has to have available at least 4G of RAM, but once - you start instantiating VMs you will need more. - - The IP of the system can't change, and you need to know it beforehand, - that is, the system needs a static IP address. - - This cluster is configurable, but with the following constraints: - - - The hostname in RABBITMQ_HOST has to match CONTROLLER_HOST_ADDRESS, - and HOST_CONTROLLER. - - HOSTS_CONTROLLER is only needed if the hostname (see previous point) - is not a FQDN. - - The IP listed in MANAGEMENT_INTERFACE_IP_ADDRESS has to match the one - used in HOSTS_CONTROLLER. - - CINDER_DEVICE should be a path to a storage device ready to be - used/formated for cinder data. - - EXTERNAL_INTERFACE is required when the system has more than one network - interface. - - You can also have a look at the following suggestions: - - - NOVA_VIRT_TYPE can be either 'kvm' or 'qemu', depending on where the - system is being deployed to. - - We recommend changing all the PASSWORDs variables, also the - KEYSTONE_TEMPORARY_ADMIN_TOKEN, METADATA_PROXY_SHARED_SECRET and - METERING_SECRET. - - Setting NOVA_BAREMETAL_SCHEDULING with an YAML truth value will configure - Nova to schedule baremetal machines through the Ironic driver, instead of - sheduling virtual machines. + This is a cluster morphology for deploying an installer for an x86_64 + OpenStack system spread across three nodes. + + This cluster creates disk images that may be `dd`'d onto install media to + produce an OpenStack cluster when instantiated. + + Alternatively it may be used to install directly onto a physical disk by + running: + + morph deploy clusters/openstack-three-node-installer.morph \ + network-installer network-installer.location=/dev/vdb + + Substituting network-installer for either compute-installer or + controller-installer will produce different configurations, and it is possible + to substitue /dev/vdb for a different path to a disk image to install to a + different disk image. + + Substitute the values of HOSTNAME, NETWORK_CONFIG, EXTERNAL_INTERFACE, + MANAGEMENT_IP_ADDRESS, CONTROLLER_HOST_ADDRESS, RABBITMQ_HOST and HOSTS_* to + match your hardware and networking configuration. + + Requirements to be able to run and test the system: + + - DISK_SIZE should be bigger than 5G + - The system has to have available at least 4G of RAM, but once + you start instantiating VMs you will need more. + - The IP of the system can't change, and you need to know it beforehand, + that is, the system needs a static IP address. + + This cluster is configurable, but with the following constraints: + + - The hostname in RABBITMQ_HOST has to match CONTROLLER_HOST_ADDRESS, + and HOST_CONTROLLER. + - HOSTS_CONTROLLER is only needed if the hostname (see previous point) + is not a FQDN. + - The IP listed in MANAGEMENT_INTERFACE_IP_ADDRESS has to match the one + used in HOSTS_CONTROLLER. + - CINDER_DEVICE should be a path to a storage device ready to be + used/formated for cinder data. + - EXTERNAL_INTERFACE is required when the system has more than one network + interface. + + You can also have a look at the following suggestions: + + - NOVA_VIRT_TYPE can be either 'kvm' or 'qemu', depending on where the + system is being deployed to. + - We recommend changing all the PASSWORDs variables, also the + KEYSTONE_TEMPORARY_ADMIN_TOKEN, METADATA_PROXY_SHARED_SECRET and + METERING_SECRET. + - Setting NOVA_BAREMETAL_SCHEDULING with an YAML truth value will configure + Nova to schedule baremetal machines through the Ironic driver, instead of + sheduling virtual machines. systems: - morph: systems/installer-system-x86_64.morph @@ -66,7 +65,7 @@ systems: HOSTNAME: installer-x86_64 INSTALLER_TARGET_STORAGE_DEVICE: /dev/sda INSTALLER_ROOTFS_TO_INSTALL: /rootfs - INSTALLER_POST_INSTALL_COMMAND: 'sync; poweroff -f' + INSTALLER_POST_INSTALL_COMMAND: sync; poweroff -f INITRAMFS_PATH: boot/initramfs.gz subsystems: - morph: systems/initramfs-x86_64.morph @@ -90,30 +89,30 @@ systems: RABBITMQ_PASSWORD: veryinsecure # This token needs to be unique and secret - KEYSTONE_ENABLE_SERVICE: False + KEYSTONE_ENABLE_SERVICE: false KEYSTONE_TEMPORARY_ADMIN_TOKEN: 22f3aa1cf538e3f6d5e8 KEYSTONE_ADMIN_PASSWORD: veryinsecure KEYSTONE_DB_USER: keystoneDB KEYSTONE_DB_PASSWORD: veryinsecure - GLANCE_ENABLE_SERVICE: False + GLANCE_ENABLE_SERVICE: false GLANCE_SERVICE_USER: glance GLANCE_SERVICE_PASSWORD: veryinsecure GLANCE_DB_USER: glanceDB GLANCE_DB_PASSWORD: veryinsecure - NOVA_ENABLE_CONTROLLER: False - NOVA_ENABLE_COMPUTE: False + NOVA_ENABLE_CONTROLLER: false + NOVA_ENABLE_COMPUTE: false NOVA_SERVICE_USER: nova NOVA_SERVICE_PASSWORD: veryinsecure NOVA_DB_USER: novaDB NOVA_DB_PASSWORD: veryinsecure NOVA_VIRT_TYPE: kvm - NOVA_BAREMETAL_SCHEDULING: no + NOVA_BAREMETAL_SCHEDULING: false - CINDER_ENABLE_CONTROLLER: False - CINDER_ENABLE_COMPUTE: False - CINDER_ENABLE_STORAGE: False + CINDER_ENABLE_CONTROLLER: false + CINDER_ENABLE_COMPUTE: false + CINDER_ENABLE_STORAGE: false CINDER_SERVICE_USER: cinder CINDER_SERVICE_PASSWORD: veryinsecure CINDER_DB_USER: cinderDB @@ -121,16 +120,16 @@ systems: # Storage device to be used by Cinder CINDER_DEVICE: /dev/sdb - NEUTRON_ENABLE_AGENT: False - NEUTRON_ENABLE_MANAGER: True - NEUTRON_ENABLE_CONTROLLER: False + NEUTRON_ENABLE_AGENT: false + NEUTRON_ENABLE_MANAGER: true + NEUTRON_ENABLE_CONTROLLER: false NEUTRON_SERVICE_USER: neutron NEUTRON_SERVICE_PASSWORD: veryinsecure NEUTRON_DB_USER: neutronDB NEUTRON_DB_PASSWORD: veryinsecure METADATA_PROXY_SHARED_SECRET: novaneutronmetasecret - IRONIC_ENABLE_SERVICE: False + IRONIC_ENABLE_SERVICE: false IRONIC_SERVICE_USER: ironic IRONIC_SERVICE_PASSWORD: veryinsecure IRONIC_DB_USER: ironicDB @@ -140,8 +139,8 @@ systems: CEILOMETER_SERVICE_PASSWORD: veryinsecure CEILOMETER_DB_USER: ceilometerDB CEILOMETER_DB_PASSWORD: veryinsecure - CEILOMETER_ENABLE_CONTROLLER: False - CEILOMETER_ENABLE_COMPUTE: False + CEILOMETER_ENABLE_CONTROLLER: false + CEILOMETER_ENABLE_COMPUTE: false METERING_SECRET: insecureceilometersecret CONTROLLER_HOST_ADDRESS: threenode-controller.os-mgmt @@ -154,7 +153,7 @@ systems: EXTERNAL_INTERFACE: enp3s0 NETWORK_CONFIG: enp3s0:dhcp;enp2s0:static,address=10.0.0.1,netmask=255.255.255.0 - SYNC_TIME_WITH_CONTROLLER: True + SYNC_TIME_WITH_CONTROLLER: true subsystems: - morph: systems/initramfs-x86_64.morph deploy: @@ -174,31 +173,31 @@ systems: <<: *stack-node HOSTNAME: threenode-controller - KEYSTONE_ENABLE_SERVICE: True + KEYSTONE_ENABLE_SERVICE: true - GLANCE_ENABLE_SERVICE: True + GLANCE_ENABLE_SERVICE: true - NOVA_ENABLE_CONTROLLER: True + NOVA_ENABLE_CONTROLLER: true - CINDER_ENABLE_CONTROLLER: True - CINDER_ENABLE_COMPUTE: False - CINDER_ENABLE_STORAGE: False + CINDER_ENABLE_CONTROLLER: true + CINDER_ENABLE_COMPUTE: false + CINDER_ENABLE_STORAGE: false - NEUTRON_ENABLE_AGENT: False - NEUTRON_ENABLE_MANAGER: False - NEUTRON_ENABLE_CONTROLLER: True + NEUTRON_ENABLE_AGENT: false + NEUTRON_ENABLE_MANAGER: false + NEUTRON_ENABLE_CONTROLLER: true METADATA_PROXY_SHARED_SECRET: novaneutronmetasecret - IRONIC_ENABLE_SERVICE: True + IRONIC_ENABLE_SERVICE: true - CEILOMETER_ENABLE_CONTROLLER: True - CEILOMETER_ENABLE_COMPUTE: False + CEILOMETER_ENABLE_CONTROLLER: true + CEILOMETER_ENABLE_COMPUTE: false MANAGEMENT_INTERFACE_IP_ADDRESS: 10.0.0.2 HOSTS_SELF: 10.0.0.2 threenode-controller EXTERNAL_INTERFACE: enp2s0 NETWORK_CONFIG: enp2s0:dhcp;enp0s26u1u2:static,address=10.0.0.2,netmask=255.255.255.0 - SYNC_TIME_WITH_CONTROLLER: False + SYNC_TIME_WITH_CONTROLLER: false subsystems: - morph: systems/initramfs-x86_64.morph deploy: @@ -218,24 +217,24 @@ systems: <<: *stack-node HOSTNAME: threenode-compute - NOVA_ENABLE_COMPUTE: True + NOVA_ENABLE_COMPUTE: true - CINDER_ENABLE_CONTROLLER: False - CINDER_ENABLE_COMPUTE: True - CINDER_ENABLE_STORAGE: True + CINDER_ENABLE_CONTROLLER: false + CINDER_ENABLE_COMPUTE: true + CINDER_ENABLE_STORAGE: true - NEUTRON_ENABLE_AGENT: True - NEUTRON_ENABLE_MANAGER: False - NEUTRON_ENABLE_CONTROLLER: False + NEUTRON_ENABLE_AGENT: true + NEUTRON_ENABLE_MANAGER: false + NEUTRON_ENABLE_CONTROLLER: false - CEILOMETER_ENABLE_CONTROLLER: False - CEILOMETER_ENABLE_COMPUTE: True + CEILOMETER_ENABLE_CONTROLLER: false + CEILOMETER_ENABLE_COMPUTE: true MANAGEMENT_INTERFACE_IP_ADDRESS: 10.0.0.3 HOSTS_SELF: 10.0.0.3 threenode-compute EXTERNAL_INTERFACE: eno1 NETWORK_CONFIG: eno1:dhcp;enp0s29u1u3:static,address=10.0.0.3,netmask=255.255.255.0 - SYNC_TIME_WITH_CONTROLLER: True + SYNC_TIME_WITH_CONTROLLER: true subsystems: - morph: systems/initramfs-x86_64.morph deploy: diff --git a/clusters/openstack-two-node-installer.morph b/clusters/openstack-two-node-installer.morph index 29c028dc..e9c90cd1 100644 --- a/clusters/openstack-two-node-installer.morph +++ b/clusters/openstack-two-node-installer.morph @@ -1,58 +1,57 @@ name: openstack-two-node-installer kind: cluster description: | - - This is a cluster morphology for deploying an installer for an x86_64 - OpenStack system spread across three nodes. - - This cluster creates disk images that may be `dd`'d onto install media to - produce an OpenStack cluster when instantiated. - - Alternatively it may be used to install directly onto a physical disk by - running: - - morph deploy clusters/openstack-two-node-installer.morph \ - controller-installer controller-installer.location=/dev/vdb - - Substituting contrller-installer for compute-installer will produce - different configurations, and it is possible to substitue /dev/vdb for a - different path to a disk image to install to a different disk image. - - Substitute the values of HOSTNAME, NETWORK_CONFIG, EXTERNAL_INTERFACE, - MANAGEMENT_IP_ADDRESS, CONTROLLER_HOST_ADDRESS, RABBITMQ_HOST and HOSTS_* to - match your hardware and networking configuration. - - Requirements to be able to run and test the system: - - - DISK_SIZE should be bigger than 5G - - The system has to have available at least 4G of RAM, but once - you start instantiating VMs you will need more. - - The IP of the system can't change, and you need to know it beforehand, - that is, the system needs a static IP address. - - This cluster is configurable, but with the following constraints: - - - The hostname in RABBITMQ_HOST has to match CONTROLLER_HOST_ADDRESS, - and HOST_CONTROLLER. - - HOSTS_CONTROLLER is only needed if the hostname (see previous point) - is not a FQDN. - - The IP listed in MANAGEMENT_INTERFACE_IP_ADDRESS has to match the one - used in HOSTS_CONTROLLER. - - CINDER_DEVICE should be a path to a storage device ready to be - used/formated for cinder data. - - EXTERNAL_INTERFACE is required when the system has more than one network - interface. - - You can also have a look at the following suggestions: - - - NOVA_VIRT_TYPE can be either 'kvm' or 'qemu', depending on where the - system is being deployed to. - - We recommend changing all the PASSWORDs variables, also the - KEYSTONE_TEMPORARY_ADMIN_TOKEN, METADATA_PROXY_SHARED_SECRET and - METERING_SECRET. - - Setting NOVA_BAREMETAL_SCHEDULING with a YAML truth value will configure - Nova to schedule baremetal machines through the Ironic driver, instead of - sheduling virtual machines. + This is a cluster morphology for deploying an installer for an x86_64 + OpenStack system spread across three nodes. + + This cluster creates disk images that may be `dd`'d onto install media to + produce an OpenStack cluster when instantiated. + + Alternatively it may be used to install directly onto a physical disk by + running: + + morph deploy clusters/openstack-two-node-installer.morph \ + controller-installer controller-installer.location=/dev/vdb + + Substituting contrller-installer for compute-installer will produce + different configurations, and it is possible to substitue /dev/vdb for a + different path to a disk image to install to a different disk image. + + Substitute the values of HOSTNAME, NETWORK_CONFIG, EXTERNAL_INTERFACE, + MANAGEMENT_IP_ADDRESS, CONTROLLER_HOST_ADDRESS, RABBITMQ_HOST and HOSTS_* to + match your hardware and networking configuration. + + Requirements to be able to run and test the system: + + - DISK_SIZE should be bigger than 5G + - The system has to have available at least 4G of RAM, but once + you start instantiating VMs you will need more. + - The IP of the system can't change, and you need to know it beforehand, + that is, the system needs a static IP address. + + This cluster is configurable, but with the following constraints: + + - The hostname in RABBITMQ_HOST has to match CONTROLLER_HOST_ADDRESS, + and HOST_CONTROLLER. + - HOSTS_CONTROLLER is only needed if the hostname (see previous point) + is not a FQDN. + - The IP listed in MANAGEMENT_INTERFACE_IP_ADDRESS has to match the one + used in HOSTS_CONTROLLER. + - CINDER_DEVICE should be a path to a storage device ready to be + used/formated for cinder data. + - EXTERNAL_INTERFACE is required when the system has more than one network + interface. + + You can also have a look at the following suggestions: + + - NOVA_VIRT_TYPE can be either 'kvm' or 'qemu', depending on where the + system is being deployed to. + - We recommend changing all the PASSWORDs variables, also the + KEYSTONE_TEMPORARY_ADMIN_TOKEN, METADATA_PROXY_SHARED_SECRET and + METERING_SECRET. + - Setting NOVA_BAREMETAL_SCHEDULING with a YAML truth value will configure + Nova to schedule baremetal machines through the Ironic driver, instead of + sheduling virtual machines. systems: - morph: systems/installer-system-x86_64.morph @@ -65,7 +64,7 @@ systems: HOSTNAME: installer-x86_64 INSTALLER_TARGET_STORAGE_DEVICE: /dev/sda INSTALLER_ROOTFS_TO_INSTALL: /rootfs - INSTALLER_POST_INSTALL_COMMAND: 'sync; poweroff -f' + INSTALLER_POST_INSTALL_COMMAND: sync; poweroff -f INITRAMFS_PATH: boot/initramfs.gz subsystems: - morph: systems/initramfs-x86_64.morph @@ -89,30 +88,30 @@ systems: RABBITMQ_PASSWORD: veryinsecure # This token needs to be unique and secret - KEYSTONE_ENABLE_SERVICE: True + KEYSTONE_ENABLE_SERVICE: true KEYSTONE_TEMPORARY_ADMIN_TOKEN: 22f3aa1cf538e3f6d5e8 KEYSTONE_ADMIN_PASSWORD: veryinsecure KEYSTONE_DB_USER: keystoneDB KEYSTONE_DB_PASSWORD: veryinsecure - GLANCE_ENABLE_SERVICE: True + GLANCE_ENABLE_SERVICE: true GLANCE_SERVICE_USER: glance GLANCE_SERVICE_PASSWORD: veryinsecure GLANCE_DB_USER: glanceDB GLANCE_DB_PASSWORD: veryinsecure - NOVA_ENABLE_CONTROLLER: True - NOVA_ENABLE_COMPUTE: False + NOVA_ENABLE_CONTROLLER: true + NOVA_ENABLE_COMPUTE: false NOVA_SERVICE_USER: nova NOVA_SERVICE_PASSWORD: veryinsecure NOVA_DB_USER: novaDB NOVA_DB_PASSWORD: veryinsecure NOVA_VIRT_TYPE: kvm - NOVA_BAREMETAL_SCHEDULING: no + NOVA_BAREMETAL_SCHEDULING: false - CINDER_ENABLE_CONTROLLER: True - CINDER_ENABLE_COMPUTE: False - CINDER_ENABLE_STORAGE: False + CINDER_ENABLE_CONTROLLER: true + CINDER_ENABLE_COMPUTE: false + CINDER_ENABLE_STORAGE: false CINDER_SERVICE_USER: cinder CINDER_SERVICE_PASSWORD: veryinsecure CINDER_DB_USER: cinderDB @@ -120,16 +119,16 @@ systems: # Storage device to be used by Cinder CINDER_DEVICE: /dev/sdb - NEUTRON_ENABLE_AGENT: False - NEUTRON_ENABLE_MANAGER: True - NEUTRON_ENABLE_CONTROLLER: True + NEUTRON_ENABLE_AGENT: false + NEUTRON_ENABLE_MANAGER: true + NEUTRON_ENABLE_CONTROLLER: true NEUTRON_SERVICE_USER: neutron NEUTRON_SERVICE_PASSWORD: veryinsecure NEUTRON_DB_USER: neutronDB NEUTRON_DB_PASSWORD: veryinsecure METADATA_PROXY_SHARED_SECRET: novaneutronmetasecret - IRONIC_ENABLE_SERVICE: True + IRONIC_ENABLE_SERVICE: true IRONIC_SERVICE_USER: ironic IRONIC_SERVICE_PASSWORD: veryinsecure IRONIC_DB_USER: ironicDB @@ -139,8 +138,8 @@ systems: CEILOMETER_SERVICE_PASSWORD: veryinsecure CEILOMETER_DB_USER: ceilometerDB CEILOMETER_DB_PASSWORD: veryinsecure - CEILOMETER_ENABLE_CONTROLLER: True - CEILOMETER_ENABLE_COMPUTE: False + CEILOMETER_ENABLE_CONTROLLER: true + CEILOMETER_ENABLE_COMPUTE: false METERING_SECRET: insecureceilometersecret CONTROLLER_HOST_ADDRESS: twonode-controller.os-mgmt @@ -151,7 +150,7 @@ systems: HOSTS_COMPUTE: 10.0.0.3 twonode-compute.os-mgmt EXTERNAL_INTERFACE: enp3s0 NETWORK_CONFIG: enp3s0:dhcp;enp2s0:static,address=10.0.0.1,netmask=255.255.255.0 - SYNC_TIME_WITH_CONTROLLER: False + SYNC_TIME_WITH_CONTROLLER: false subsystems: - morph: systems/initramfs-x86_64.morph deploy: @@ -171,31 +170,31 @@ systems: <<: *stack-node HOSTNAME: twonode-compute - KEYSTONE_ENABLE_SERVICE: False + KEYSTONE_ENABLE_SERVICE: false - GLANCE_ENABLE_SERVICE: False + GLANCE_ENABLE_SERVICE: false - NOVA_ENABLE_COMPUTE: True - NOVA_ENABLE_CONTROLLER: False + NOVA_ENABLE_COMPUTE: true + NOVA_ENABLE_CONTROLLER: false - CINDER_ENABLE_CONTROLLER: False - CINDER_ENABLE_COMPUTE: True - CINDER_ENABLE_STORAGE: True + CINDER_ENABLE_CONTROLLER: false + CINDER_ENABLE_COMPUTE: true + CINDER_ENABLE_STORAGE: true - NEUTRON_ENABLE_AGENT: True - NEUTRON_ENABLE_MANAGER: False - NEUTRON_ENABLE_CONTROLLER: False + NEUTRON_ENABLE_AGENT: true + NEUTRON_ENABLE_MANAGER: false + NEUTRON_ENABLE_CONTROLLER: false - IRONIC_ENABLE_SERVICE: False + IRONIC_ENABLE_SERVICE: false - CEILOMETER_ENABLE_CONTROLLER: False - CEILOMETER_ENABLE_COMPUTE: True + CEILOMETER_ENABLE_CONTROLLER: false + CEILOMETER_ENABLE_COMPUTE: true MANAGEMENT_INTERFACE_IP_ADDRESS: 10.0.0.3 HOSTS_SELF: 10.0.0.3 twonode-compute EXTERNAL_INTERFACE: eno1 NETWORK_CONFIG: eno1:dhcp;enp0s29u1u3:static,address=10.0.0.3,netmask=255.255.255.0 - SYNC_TIME_WITH_CONTROLLER: True + SYNC_TIME_WITH_CONTROLLER: true subsystems: - morph: systems/initramfs-x86_64.morph deploy: diff --git a/clusters/release.morph b/clusters/release.morph index a18af4f0..3f597a38 100644 --- a/clusters/release.morph +++ b/clusters/release.morph @@ -46,12 +46,13 @@ systems: type: extensions/rawdisk location: build-system-armv7lhf-jetson.img DISK_SIZE: 2G - BOOT_DEVICE: "/dev/mmcblk0p1" - ROOT_DEVICE: "/dev/mmcblk0p2" - DTB_PATH: "boot/tegra124-jetson-tk1.dtb" - BOOTLOADER_CONFIG_FORMAT: "extlinux" - BOOTLOADER_INSTALL: "none" - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 nouveau.pstate=1 + BOOT_DEVICE: /dev/mmcblk0p1 + ROOT_DEVICE: /dev/mmcblk0p2 + DTB_PATH: boot/tegra124-jetson-tk1.dtb + BOOTLOADER_CONFIG_FORMAT: extlinux + BOOTLOADER_INSTALL: none + KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 + nouveau.pstate=1 HOSTNAME: build-system-armv7lhf-jetson - morph: systems/genivi-baseline-system-x86_64-generic.morph deploy: @@ -74,10 +75,11 @@ systems: type: extensions/rawdisk location: genivi-baseline-system-armv7lhf-jetson.img DISK_SIZE: 4G - BOOT_DEVICE: "/dev/mmcblk0p1" - ROOT_DEVICE: "/dev/mmcblk0p2" - DTB_PATH: "boot/tegra124-jetson-tk1.dtb" - BOOTLOADER_CONFIG_FORMAT: "extlinux" - BOOTLOADER_INSTALL: "none" - KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 nouveau.pstate=1 + BOOT_DEVICE: /dev/mmcblk0p1 + ROOT_DEVICE: /dev/mmcblk0p2 + DTB_PATH: boot/tegra124-jetson-tk1.dtb + BOOTLOADER_CONFIG_FORMAT: extlinux + BOOTLOADER_INSTALL: none + KERNEL_ARGS: cma=256M console=tty0 console=ttyS0,115200n8 no_console_suspend=1 + nouveau.pstate=1 HOSTNAME: genivi-baseline-system-armv7lhf-jetson diff --git a/clusters/zookeeper.morph b/clusters/zookeeper.morph index cca6db81..80197726 100644 --- a/clusters/zookeeper.morph +++ b/clusters/zookeeper.morph @@ -1,21 +1,21 @@ name: zookeeper kind: cluster systems: - - morph: systems/zookeeper-client-x86_64.morph - deploy: - my-client-system: - type: extensions/kvm - location: kvm+ssh://username@HOSTNAME/machinename/path/to/zookeeper-client.img - DISK_SIZE: 4G - RAM_SIZE: 1G - VCPUS: 1 - HOSTNAME: zkclient - - morph: systems/zookeeper-server-x86_64.morph - deploy: - my-server-system: - type: extensions/kvm - location: kvm+ssh://username@HOSTNAME/machinename/path/to/zookeeper-server.img - DISK_SIZE: 4G - RAM_SIZE: 1G - VCPUS: 1 - HOSTNAME: zkserver +- morph: systems/zookeeper-client-x86_64.morph + deploy: + my-client-system: + type: extensions/kvm + location: kvm+ssh://username@HOSTNAME/machinename/path/to/zookeeper-client.img + DISK_SIZE: 4G + RAM_SIZE: 1G + VCPUS: 1 + HOSTNAME: zkclient +- morph: systems/zookeeper-server-x86_64.morph + deploy: + my-server-system: + type: extensions/kvm + location: kvm+ssh://username@HOSTNAME/machinename/path/to/zookeeper-server.img + DISK_SIZE: 4G + RAM_SIZE: 1G + VCPUS: 1 + HOSTNAME: zkserver -- cgit v1.2.1