diff options
-rwxr-xr-x | build/instack.sh | 4 | ||||
-rw-r--r-- | build/instackenv.json.example | 15 | ||||
-rwxr-xr-x | ci/deploy.sh | 11 | ||||
-rw-r--r-- | config/inventory/intel_pod2_settings.yaml | 5 | ||||
-rw-r--r-- | config/inventory/pod_example_settings.yaml | 5 | ||||
-rw-r--r-- | docs/installation-instructions/installation-instructions.rst | 22 |
6 files changed, 49 insertions, 13 deletions
diff --git a/build/instack.sh b/build/instack.sh index 48aef0b2..57af7f96 100755 --- a/build/instack.sh +++ b/build/instack.sh @@ -9,7 +9,7 @@ RDO_RELEASE=liberty SSH_OPTIONS=(-o StrictHostKeyChecking=no -o GlobalKnownHostsFile=/dev/null -o UserKnownHostsFile=/dev/null) # check for dependancy packages -for i in libguestfs-tools python-docutils bsdtar; do +for i in rpm-build createrepo libguestfs-tools python-docutils bsdtar; do if ! rpm -q $i > /dev/null; then sudo yum install -y $i fi @@ -216,7 +216,7 @@ PACKAGES+=",openstack-swift-container,openstack-swift-object,openstack-swift-plu PACKAGES+=",openstack-nova-api,openstack-nova-cert,openstack-heat-api-cfn,openstack-heat-api," PACKAGES+=",openstack-ceilometer-central,openstack-ceilometer-polling,openstack-ceilometer-collector," PACKAGES+=",openstack-heat-api-cloudwatch,openstack-heat-engine,openstack-heat-common,openstack-ceilometer-notification" -PACKAGES+=",hiera,puppet,memcached,keepalived,mariadb,mariadb-server,rabbitmq-server,python-pbr" +PACKAGES+=",hiera,puppet,memcached,keepalived,mariadb,mariadb-server,rabbitmq-server,python-pbr,python-proliantutils" LIBGUESTFS_BACKEND=direct virt-customize --install $PACKAGES -a instack.qcow2 popd diff --git a/build/instackenv.json.example b/build/instackenv.json.example index 949e07d5..370ff202 100644 --- a/build/instackenv.json.example +++ b/build/instackenv.json.example @@ -10,8 +10,9 @@ ], "pm_type": "pxe_ipmitool", "pm_addr": "10.1.8.70", - "pm_user": "root" + "pm_user": "root", "pm_password": "password", + "capabilities": "profile:control" }, { "cpu": "24", @@ -23,8 +24,9 @@ ], "pm_type": "pxe_ipmitool", "pm_addr": "10.1.8.73", - "pm_user": "root" + "pm_user": "root", "pm_password": "password", + "capabilities": "profile:control" }, { "cpu": "24", @@ -36,8 +38,9 @@ ], "pm_type": "pxe_ipmitool", "pm_addr": "10.1.8.74", - "pm_user": "root" + "pm_user": "root", "pm_password": "password", + "capabilities": "profile:control" }, { "cpu": "24", @@ -49,8 +52,9 @@ ], "pm_type": "pxe_ipmitool", "pm_addr": "10.1.8.76", - "pm_user": "root" + "pm_user": "root", "pm_password": "password", + "capabilities": "profile:compute" }, { "cpu": "24", @@ -62,8 +66,9 @@ ], "pm_type": "pxe_ipmitool", "pm_addr": "10.1.8.78", - "pm_user": "root" + "pm_user": "root", "pm_password": "password", + "capabilities": "profile:compute" } ] } diff --git a/ci/deploy.sh b/ci/deploy.sh index 7b72e7be..47b82353 100755 --- a/ci/deploy.sh +++ b/ci/deploy.sh @@ -184,7 +184,8 @@ parse_inventory_file() { \"disk\": \"$(eval echo \${${node}disk})\", \"arch\": \"$(eval echo \${${node}arch})\", \"pm_user\": \"$(eval echo \${${node}ipmi_user})\", - \"pm_addr\": \"$(eval echo \${${node}ipmi_ip})\" + \"pm_addr\": \"$(eval echo \${${node}ipmi_ip})\", + \"capabilities\": \"$(eval echo \${${node}capabilities})\" " instack_env_output+=${node_output} if [ $node_count -lt $node_total ]; then @@ -522,6 +523,10 @@ function undercloud_prep_overcloud_deploy { DEPLOY_OPTIONS+=" --ntp-server $ntp_server" fi + if [[ ! "$virtual" == "TRUE" ]]; then + DEPLOY_OPTIONS+=" --control-flavor control --compute-flavor compute" + fi + ssh -T ${SSH_OPTIONS[@]} "stack@$UNDERCLOUD" <<EOI source stackrc set -o errexit @@ -533,7 +538,11 @@ openstack baremetal configure boot openstack baremetal introspection bulk start echo "Configuring flavors" openstack flavor list | grep baremetal || openstack flavor create --id auto --ram 4096 --disk 39 --vcpus 1 baremetal +openstack flavor list | grep control || openstack flavor create --id auto --ram 4096 --disk 39 --vcpus 1 control +openstack flavor list | grep compute || openstack flavor create --id auto --ram 4096 --disk 39 --vcpus 1 compute openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" baremetal +openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" --property "capabilities:profile"="control" control +openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" --property "capabilities:profile"="compute" compute echo "Configuring nameserver on ctlplane network" neutron subnet-update \$(neutron subnet-list | grep -v id | grep -v \\\\-\\\\- | awk {'print \$2'}) --dns-nameserver 8.8.8.8 echo "Executing overcloud deployment, this should run for an extended period without output." diff --git a/config/inventory/intel_pod2_settings.yaml b/config/inventory/intel_pod2_settings.yaml index 5f933f1f..4545839f 100644 --- a/config/inventory/intel_pod2_settings.yaml +++ b/config/inventory/intel_pod2_settings.yaml @@ -8,6 +8,7 @@ nodes: memory: 2048 disk: 40 arch: "x86_64" + capabilities: "profile:control" node2: mac_address: "00:1e:67:4f:b7:b1" ipmi_ip: 10.4.7.3 @@ -17,6 +18,7 @@ nodes: memory: 2048 disk: 40 arch: "x86_64" + capabilities: "profile:control" node3: mac_address: "00:1e:67:4f:cc:f1" ipmi_ip: 10.4.7.4 @@ -26,6 +28,7 @@ nodes: memory: 2048 disk: 40 arch: "x86_64" + capabilities: "profile:control" node4: mac_address: "00:1e:67:4f:cc:0b" ipmi_ip: 10.4.7.5 @@ -35,6 +38,7 @@ nodes: memory: 2048 disk: 40 arch: "x86_64" + capabilities: "profile:compute" node5: mac_address: "00:1e:67:4f:b9:55" ipmi_ip: 10.4.7.6 @@ -44,3 +48,4 @@ nodes: memory: 2048 disk: 40 arch: "x86_64" + capabilities: "profile:compute" diff --git a/config/inventory/pod_example_settings.yaml b/config/inventory/pod_example_settings.yaml index f24b8e1c..70fa50e7 100644 --- a/config/inventory/pod_example_settings.yaml +++ b/config/inventory/pod_example_settings.yaml @@ -8,6 +8,7 @@ nodes: memory: 2048 disk: 40 arch: "x86_64" + capabilities: "profile:control" node2: mac_address: "10:23:45:67:89:AC" ipmi_ip: 10.4.17.3 @@ -17,6 +18,7 @@ nodes: memory: 2048 disk: 40 arch: "x86_64" + capabilities: "profile:control" node3: mac_address: "10:23:45:67:89:AD" ipmi_ip: 10.4.17.4 @@ -26,6 +28,7 @@ nodes: memory: 2048 disk: 40 arch: "x86_64" + capabilities: "profile:control" node4: mac_address: "10:23:45:67:89:AE" ipmi_ip: 10.4.17.5 @@ -35,6 +38,7 @@ nodes: memory: 2048 disk: 40 arch: "x86_64" + capabilities: "profile:compute" node5: mac_address: "10:23:45:67:89:AF" ipmi_ip: 10.4.17.6 @@ -44,3 +48,4 @@ nodes: memory: 2048 disk: 40 arch: "x86_64" + capabilities: "profile:compute" diff --git a/docs/installation-instructions/installation-instructions.rst b/docs/installation-instructions/installation-instructions.rst index 72a7bb22..46fcfaa1 100644 --- a/docs/installation-instructions/installation-instructions.rst +++ b/docs/installation-instructions/installation-instructions.rst @@ -252,18 +252,29 @@ system to bare metal nodes. Install Bare Metal Jumphost --------------------------- -1. If your Jumphost does not have CentOS 7 already on it, or you would like to do a fresh - install, then download the Apex bootable ISO <http://artifacts.opnfv.org/> here. +1a. If your Jumphost does not have CentOS 7 already on it, or you would like to do a fresh + install, then download the Apex bootable ISO from OPNFV artifacts <http://artifacts.opnfv.org/>. -2. Boot the ISO off of a USB or other installation media and walk through installing OPNFV CentOS 7. - The ISO comes prepare to be written directly to a USB drive with dd as such: +1b. If your Jump host already has CentOS 7 with libvirt running on it then install the + opnfv-apex RPM from OPNFV artifacts <http://artifacts.opnfv.org/>. + +2a. Boot the ISO off of a USB or other installation media and walk through installing OPNFV CentOS 7. + The ISO comes prepared to be written directly to a USB drive with dd as such: ``dd if=opnfv-apex.iso of=/dev/sdX bs=4M`` Replace /dev/sdX with the device assigned to your usb drive. Then select the USB device as the boot media on your Jumphost -3. After OS is installed login to your Jumphost as root. +2b. Install the RDO Release RPM and the opnfv-apex RPM: + + ``sudo yum install -y https://www.rdoproject.org/repos/rdo-release.rpm opnfv-apex-{version}.rpm`` + + The RDO Project release repository is needed to install OpenVSwitch, which is a dependency of + opnfv-apex. If you do not have external connectivity to use this repository you need to download + the OpenVSwitch RPM from the RDO Project repositories and install it with the opnfv-apex RPM. + +3. After the operating system and the opnfv-apex RPM are installed, login to your Jumphost as root. 4. Configure IP addresses on the interfaces that you have selected as your networks. @@ -288,6 +299,7 @@ IPMI configuration information gathered in section `Execution Requirements (Bare - ``pm_addr``: IPMI IP Address - ``pm_user``: IPMI username - ``pm_password``: IPMI password + - ``capabilities``: Intended node role (profile:control or profile:compute) - ``cpu``: CPU cores available - ``memory``: Memory available in Mib - ``disk``: Disk space available in Gb |