Denis Egorenko | dcc233d | 2019-03-06 18:09:24 +0400 | [diff] [blame] | 1 | ==================== |
| 2 | Deploy cfg01 locally |
| 3 | ==================== |
| 4 | |
| 5 | Deploy cfg01 on Ubuntu with QEMU/KVM (libvirt) |
| 6 | ============================================== |
| 7 | |
| 8 | **Prerequisites** |
| 9 | |
| 10 | Script will check and install next required packages: qemu-utils libvirt-bin virtinst qemu-kvm. |
| 11 | |
| 12 | **Common info** |
| 13 | |
| 14 | Script gives you an ability to deploy cfg01 VM with provided cfg01 Qcwo2 disk |
| 15 | image and config-drive iso file on your local laptop. |
| 16 | |
| 17 | Script is operating by next ENV variables: |
| 18 | |
| 19 | * VM_NAME - the name of VM to be created in VirtualBox. Default: 'cfg01-mcp.local'. |
| 20 | * VM_SOURCE_DISK - the name of virtual disk to be used for virtual machine. Can be relative or absolute path. |
Denis Egorenko | c265640 | 2019-04-19 18:17:50 +0400 | [diff] [blame^] | 21 | You can download and use the following image: http://images.mcp.mirantis.net/cfg01-day01-2019.2.0.qcow2 |
| 22 | * VM_CONFIG_DISK - Config-drive ISO file, can be relative or absolute path. |
Denis Egorenko | dcc233d | 2019-03-06 18:09:24 +0400 | [diff] [blame] | 23 | * VM_MGM_BRIDGE_NAME - Bridge name to use for deploy management network. Should have Internet access if not |
| 24 | offline case. Optional, default: 'br-mgm' |
| 25 | * VM_CTL_BRIDGE_NAME - Bridge name to use for control network. Optional, default: 'br-ctl' |
| 26 | * VM_MGM_BRIDGE_DISABLE - Do not use host bridge for deploy management network and create new nat-network. |
| 27 | Optional, default: false |
| 28 | * VM_CTL_BRIDGE_DISABLE - Do not use host bridge for control network and create host-only based new network. |
| 29 | Optional, default: false |
| 30 | * VM_MGM_NETWORK_NAME - Name for deploy management network. Optional, default: 'mgm_network' |
| 31 | * VM_CTL_NETWORK_NAME - Name for control network. Optional, default: 'ctl_network' |
| 32 | * VM_MGM_NETWORK_GATEWAY - NAT-Service network gateway for deploy management network. |
| 33 | Optional, default: '192.168.15.1' |
| 34 | * VM_MGM_NETWORK_MASK - Network mask for deploy management network. Optional, default: '255.255.255.0' |
| 35 | * VM_CTL_NETWORK_GATEWAY - Host-only based network gateway for control network. |
| 36 | Optional, default: '192.168.56.1' |
| 37 | * VM_CTL_NETWORK_MASK - Network mask for control network. Optional, default: '255.255.255.0' |
| 38 | |
| 39 | Script will check that disk and config-drive are present and then define needed networks and spawn virtual machine. |
| 40 | Then check that VM is up and running. |
| 41 | |
| 42 | Once VM is up and running you can use ``virsh console`` to check what is going on during deploy. |
| 43 | It is recommended to specify username and password during model generation for login via VM console if |
| 44 | something goes wrong. Once you are logged in you can follow usual debug procedure for cfg01 node. |
| 45 | |
Denis Egorenko | c265640 | 2019-04-19 18:17:50 +0400 | [diff] [blame^] | 46 | Deploy OpenStack All-In-One node on Ubuntu with QEMU/KVM (libvirt) |
| 47 | ================================================================== |
| 48 | |
| 49 | **Prerequisites** |
| 50 | |
| 51 | Setup cfg01 node and it's up, running and configured. |
| 52 | |
| 53 | **Common info** |
| 54 | |
| 55 | Script define-slave-vm.sh gives you an ability to deploy OpenStack All-in-one VM with provided Qcwo2 disk |
| 56 | image and config-drive iso file on your local laptop. |
| 57 | |
| 58 | Script is operating by next ENV variables: |
| 59 | |
| 60 | * SLAVE_VM_NAME - the name of VM to be created in VirtualBox. |
| 61 | * SLAVE_VM_SOURCE_DISK - the name of virtual disk to be used for virtual machine. Can be relative or absolute path. |
| 62 | You can download and use the following image: http://images.mcp.mirantis.net/ubuntu-16-04-x64-mcp2019.2.0.qcow2 |
| 63 | * SLAVE_VM_MEM_KB - amount of RAM for VM in KB. Default is: 16777216 |
| 64 | * SLAVE_VM_CPUS - amount of CPUs to use. Default is: 4. |
| 65 | |
| 66 | Next parameters should be same as for cfg01 node: |
| 67 | |
| 68 | * VM_CONFIG_DISK |
| 69 | * VM_MGM_BRIDGE_NAME |
| 70 | * VM_CTL_BRIDGE_NAME |
| 71 | * VM_MGM_BRIDGE_DISABLE |
| 72 | * VM_CTL_BRIDGE_DISABLE |
| 73 | * VM_MGM_NETWORK_NAME |
| 74 | * VM_CTL_NETWORK_NAME |
| 75 | * VM_MGM_NETWORK_GATEWAY |
| 76 | * VM_MGM_NETWORK_MASK |
| 77 | * VM_CTL_NETWORK_GATEWAY |
| 78 | * VM_CTL_NETWORK_MASK |
| 79 | |
| 80 | Also once you setup cfg01 setup the next parameter: export CREATE_NEWORKS=false |
| 81 | This parameter will disable network recreation, which can be needed in case of changing network setup. |
| 82 | |
| 83 | Also if you are not going to use system bridges, set next parameters to true: |
| 84 | |
| 85 | * VM_MGM_BRIDGE_DISABLE=true |
| 86 | * VM_CTL_BRIDGE_DISABLE=true |
| 87 | |
| 88 | This will switch using to locally created virsh networks. |
| 89 | |
| 90 | Script will check that disk and cfg01 config-drive are present and then prepare config-drive for all-in-one node. |
| 91 | Once VM is up and running you can use ``virsh console`` to check what is going on during deploy. For that VM will be used |
| 92 | same fail safe user as for cfg01. |
Denis Egorenko | dcc233d | 2019-03-06 18:09:24 +0400 | [diff] [blame] | 93 | |
Denis Egorenko | f7aaccf | 2019-02-26 13:47:25 +0400 | [diff] [blame] | 94 | Deploy cfg01 on Mac OS with VirtualBox |
| 95 | ====================================== |
| 96 | |
| 97 | **Prerequisites** |
| 98 | |
| 99 | Recommended VirtualBox version is 5.2.26, with Extenstion pack for the same version: |
| 100 | |
| 101 | * Get VirtualBox package for your system: https://download.virtualbox.org/virtualbox/5.2.26/ |
| 102 | * Extension pack: https://download.virtualbox.org/virtualbox/5.2.26/Oracle_VM_VirtualBox_Extension_Pack-5.2.26.vbox-extpack |
| 103 | * Python JSON module |
| 104 | |
| 105 | **Common info** |
| 106 | |
| 107 | Script gives you an ability to deploy cfg01 VM with provided cfg01 VDI disk |
| 108 | image and config-drive iso file on your local laptop. |
| 109 | |
| 110 | Script takes as arguments two URLs: for cfg01 disk image and for config-drive ISO file. |
| 111 | Both arguments are required in specified order. All other parameters are optional and can |
| 112 | be overrided by exporting them via 'export' command or by creating in script's |
| 113 | run directory env file 'env_overrides' with next possible arguments: |
| 114 | |
| 115 | * VM_NAME - the name of VM to be created in VirtualBox. Default: 'cfg01-mcp.local'. |
| 116 | * VM_DISK - the name of virtual disk to be used for virtual machine. Can be |
| 117 | an absolute path as well. This variable will be used as target file name for |
| 118 | downloading virtual machine disk, please be sure that path exists. |
| 119 | Default: 'cfg01-disk.vdi' |
| 120 | * CONFIG_DRIVE_ISO - same as VM_DISK, but for config-drive ISO file. |
| 121 | Default: 'cfg01.deploy-local.local-config.iso' |
| 122 | * AUTO_USER_CONFIRM - do not ask user confirmation to override some resource if already exists. |
| 123 | Default: false |
| 124 | * UPDATE_ISO_INTERFACES - Update network settings in provided config-drive ISO file. |
| 125 | The target and main hosts, which is used to deploy cfg01 instance, are based under |
| 126 | OS Linux family and QEMU/KVM virtualization and virtio net-driver. Xenial system, which |
| 127 | used for cfg01, already contains a new SystemD predictable network interface names mechanism [0], |
| 128 | which automatically assigns ens[3-9] interface names for VMs. VirtualBox is using multi-functional |
| 129 | network card, which leads to renaming all network interfaces to enp0s* names. |
| 130 | [0] https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ |
| 131 | Default: true |
| 132 | |
| 133 | * DEPLOY_NET_NAME - NAT-Service network name, which is used as primary interface for cfg01. This network |
| 134 | doesn't provided direct access to VM, it is possible to add manually port forwarding rules if needed, but |
| 135 | for VM access use host-only network CONTROL_NET. Default: 'deploy_nat_network' |
| 136 | * DEPLOY_NETWORK - NAT-Service network with CIDR to use. Should be same as on model generation |
| 137 | step 'networking'. Default: '192.168.15.0/24' |
| 138 | * DEPLOY_GATEWAY - NAT-Service network gateway. Should be same as on model generation step 'networking'. |
| 139 | Default: '192.168.15.1' |
| 140 | * DEPLOY_IP_ADDRESS - Primary deploy IP address, which is also specified during model generation. |
| 141 | Default: '192.168.15.15' |
| 142 | |
| 143 | * CONTROL_NET_NAME - Host-only based network name, which has static names 'vboxnetX', where 'X' is simple |
| 144 | count of existing networks for such type. Default: 'vboxnet0' |
| 145 | * CONTROL_GATEWAY - Host-only based network gateway. Default: '192.168.56.1' |
| 146 | * CONTROL_NETWORK - Host-only based network with CIDR to use. Should be same as on model generation |
| 147 | step 'networking'. Default: '192.168.56.0/24' |
| 148 | * CONTROL_IP_ADDRESS - Control IP address, which is also specified during model generation. |
| 149 | Default: '192.168.56.15' |
| 150 | |
| 151 | Script will go through next steps: |
| 152 | |
| 153 | * Download disk image and config drive ISO; |
| 154 | * Define virtual machine with provided parameters; |
| 155 | * If needed config-drive ISO network data will be updated on a fly; |
| 156 | * Run virtual machine. |
| 157 | |
| 158 | Once VM is up and running you can use VirtualBox VM console to check what is going on during deploy. |
Denis Egorenko | dcc233d | 2019-03-06 18:09:24 +0400 | [diff] [blame] | 159 | It will drop all logs into console and it doesn't matter loged in user or not. It is recommended to specify |
| 160 | username and password during model generation for login via VM console if something goes wrong. |
Denis Egorenko | f7aaccf | 2019-02-26 13:47:25 +0400 | [diff] [blame] | 161 | Once you are logged in you can follow usual debug procedure for cfg01 node. |