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