| ==================== |
| Deploy cfg01 locally |
| ==================== |
| |
| Deploy cfg01 on Ubuntu with QEMU/KVM (libvirt) |
| ============================================== |
| |
| **Prerequisites** |
| |
| Script will check and install next required packages: qemu-utils libvirt-bin virtinst qemu-kvm. |
| |
| **Common info** |
| |
| Script ``define-vm.sh`` gives you an ability to deploy cfg01 VM with provided cfg01 Qcwo2 disk |
| image and config-drive iso file on your local laptop. |
| |
| Script is operating by next ENV variables: |
| |
| * VM_NAME - the name of VM to be created in VirtualBox. Default: 'cfg01-mcp.local'. |
| * VM_SOURCE_DISK - the name of virtual disk to be used for virtual machine. Can be relative or absolute path. |
| You can download and use the following image: http://images.mcp.mirantis.net/cfg01-day01-2019.2.0.qcow2 |
| * VM_CONFIG_DISK - Config-drive ISO file, can be relative or absolute path. |
| * VM_MGM_BRIDGE_NAME - Bridge name to use for deploy management network. Should have Internet access if not |
| offline case. Optional, default: 'br-mgm' |
| * VM_CTL_BRIDGE_NAME - Bridge name to use for control network. Optional, default: 'br-ctl' |
| * VM_MGM_BRIDGE_DISABLE - Do not use host bridge for deploy management network and create new nat-network. |
| Optional, default: false |
| * VM_CTL_BRIDGE_DISABLE - Do not use host bridge for control network and create host-only based new network. |
| Optional, default: false |
| * VM_MGM_NETWORK_NAME - Name for deploy management network. Optional, default: 'mgm_network' |
| * VM_CTL_NETWORK_NAME - Name for control network. Optional, default: 'ctl_network' |
| |
| Script will check that disk and config-drive are present and then define needed networks and spawn virtual machine. |
| Start VM with ``virsh start <VM_NAME>``. Then check that VM is up and running. |
| |
| Once VM is up and running you can use ``virsh console`` to check what is going on during deploy. |
| It is recommended to specify username and password/ssh-key during model generation for login via VM console or ssh if |
| something goes wrong. Once you are logged in you can follow usual debug procedure for cfg01 node. |
| |
| When cfg01 is bootstrapped and configured, Jenkins is available via: http://<salt_master_management_address>:8081/ |
| Default login creds are: root/r00tme |
| |
| Deploy OpenStack All-In-One node on Ubuntu with QEMU/KVM (libvirt) |
| ================================================================== |
| |
| **Prerequisites** |
| |
| Setup cfg01 node and it's up, running and configured. |
| |
| **Common info** |
| |
| Script ``define-slave-vm.sh`` gives you an ability to deploy OpenStack All-in-one VM with provided Qcwo2 disk |
| image and config-drive iso file on your local laptop. |
| |
| Script is operating by next ENV variables: |
| |
| * SLAVE_VM_NAME - the name of VM to be created in VirtualBox. |
| * SLAVE_VM_SOURCE_DISK - the name of virtual disk to be used for virtual machine. Can be relative or absolute path. |
| You can download and use the following image: http://images.mcp.mirantis.net/ubuntu-16-04-x64-mcp2019.2.0.qcow2 |
| * SLAVE_VM_MEM_KB - amount of RAM for VM in KB. Default is: 16777216 |
| * SLAVE_VM_CPUS - amount of CPUs to use. Default is: 4. |
| |
| Next parameters should be same as for cfg01 node: |
| |
| * VM_CONFIG_DISK |
| * VM_MGM_BRIDGE_NAME |
| * VM_CTL_BRIDGE_NAME |
| * VM_MGM_BRIDGE_DISABLE |
| * VM_CTL_BRIDGE_DISABLE |
| * VM_MGM_NETWORK_NAME |
| * VM_CTL_NETWORK_NAME |
| |
| Also once you setup cfg01 setup the next parameter: export CREATE_NEWORKS=false |
| This parameter will disable network recreation, which can be needed in case of changing network setup. |
| |
| Also if you are not going to use system bridges, set next parameters to true: |
| |
| * VM_MGM_BRIDGE_DISABLE=true |
| * VM_CTL_BRIDGE_DISABLE=true |
| |
| This will switch using to locally created virsh networks. |
| |
| Script will check that disk and cfg01 config-drive are present and then prepare config-drive for all-in-one node. |
| Start VM with ``virsh start <SLAVE_VM_NAME>``. Once VM is up and running you can use ``virsh console`` to check what is |
| going on during bootstrap. For that VM will be used same fail safe user as specified for cfg01. |
| |
| Deploy cfg01 on Mac OS with VirtualBox |
| ====================================== |
| |
| **Prerequisites** |
| |
| Recommended VirtualBox version is 5.2.26, with Extenstion pack for the same version: |
| |
| * Get VirtualBox package for your system: https://download.virtualbox.org/virtualbox/5.2.26/ |
| * Extension pack: https://download.virtualbox.org/virtualbox/5.2.26/Oracle_VM_VirtualBox_Extension_Pack-5.2.26.vbox-extpack |
| * Python JSON module |
| |
| **Common info** |
| |
| Script gives you an ability to deploy cfg01 VM with provided cfg01 VDI disk |
| image and config-drive iso file on your local laptop. |
| |
| Script takes as arguments two URLs: for cfg01 disk image and for config-drive ISO file. |
| Both arguments are required in specified order. All other parameters are optional and can |
| be overrided by exporting them via 'export' command or by creating in script's |
| run directory env file 'env_overrides' with next possible arguments: |
| |
| * VM_NAME - the name of VM to be created in VirtualBox. Default: 'cfg01-mcp.local'. |
| * VM_DISK - the name of virtual disk to be used for virtual machine. Can be |
| an absolute path as well. This variable will be used as target file name for |
| downloading virtual machine disk, please be sure that path exists. |
| Default: 'cfg01-disk.vdi' |
| * CONFIG_DRIVE_ISO - same as VM_DISK, but for config-drive ISO file. |
| Default: 'cfg01.deploy-local.local-config.iso' |
| * AUTO_USER_CONFIRM - do not ask user confirmation to override some resource if already exists. |
| Default: false |
| * UPDATE_ISO_INTERFACES - Update network settings in provided config-drive ISO file. |
| The target and main hosts, which is used to deploy cfg01 instance, are based under |
| OS Linux family and QEMU/KVM virtualization and virtio net-driver. Xenial system, which |
| used for cfg01, already contains a new SystemD predictable network interface names mechanism [0], |
| which automatically assigns ens[3-9] interface names for VMs. VirtualBox is using multi-functional |
| network card, which leads to renaming all network interfaces to enp0s* names. |
| [0] https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ |
| Default: true |
| |
| * DEPLOY_NET_NAME - NAT-Service network name, which is used as primary interface for cfg01. This network |
| doesn't provided direct access to VM, it is possible to add manually port forwarding rules if needed, but |
| for VM access use host-only network CONTROL_NET. Default: 'deploy_nat_network' |
| * DEPLOY_NETWORK - NAT-Service network with CIDR to use. Should be same as on model generation |
| step 'networking'. Default: '192.168.15.0/24' |
| * DEPLOY_GATEWAY - NAT-Service network gateway. Should be same as on model generation step 'networking'. |
| Default: '192.168.15.1' |
| * DEPLOY_IP_ADDRESS - Primary deploy IP address, which is also specified during model generation. |
| Default: '192.168.15.15' |
| |
| * CONTROL_NET_NAME - Host-only based network name, which has static names 'vboxnetX', where 'X' is simple |
| count of existing networks for such type. Default: 'vboxnet0' |
| * CONTROL_GATEWAY - Host-only based network gateway. Default: '192.168.56.1' |
| * CONTROL_NETWORK - Host-only based network with CIDR to use. Should be same as on model generation |
| step 'networking'. Default: '192.168.56.0/24' |
| * CONTROL_IP_ADDRESS - Control IP address, which is also specified during model generation. |
| Default: '192.168.56.15' |
| |
| Script will go through next steps: |
| |
| * Download disk image and config drive ISO; |
| * Define virtual machine with provided parameters; |
| * If needed config-drive ISO network data will be updated on a fly; |
| * Run virtual machine. |
| |
| Once VM is up and running you can use VirtualBox VM console to check what is going on during deploy. |
| It will drop all logs into console and it doesn't matter loged in user or not. It is recommended to specify |
| username and password during model generation for login via VM console if something goes wrong. |
| Once you are logged in you can follow usual debug procedure for cfg01 node. |