177 | | Then copy the the contents of /home/gram/.ssh/id_rsa.pub of the control node to /home/gram/.ssh/authorized_keys on the network node, and change the permissions of this file as follows: |
178 | | {{{ |
179 | | sudo chmod 600 /home/gram/.ssh/authorized_keys |
180 | | }}} |
181 | | |
182 | | On the network node: |
183 | | |
184 | | 1. Make sure you have the 10.10.8 interface up as certain pieces of information are placed on the node using ssh and that interface. Alternately, you can run up to the installation of the /tmp/install/install_operating_system_network.sh on the network node before |
185 | | executing the /tmp/install/install_control.sh on the control node. The operating system installation should take care of configuring the needed interface. Although it is a good idea, if not a requirement for sanity, to check that |
186 | | your interfaces are plugged in as you think. So before the installation, check network connectivity. |
187 | | |
188 | | |
189 | | 2. '''Install mysql on the control node''' |
190 | | |
191 | | {{{ |
192 | | sudo apt-get install mariadb-server python-mysqldb |
193 | | }}} |
194 | | |
195 | | - You will be prompted for the password of the mysql admin. Type it in (twice) and remember it: it will be needed in the config.json file for the value of mysql_password. |
196 | | |
197 | | |
198 | | 3. '''Install !OpenStack and GRAM on the control, network and compute nodes''' |
199 | | |
200 | | - Get the DEBIAN files gram_control.deb, gram_network.deb and gram_compute.deb. |
201 | | - These packages can be generated from the repository, following instructions from here: http://groups.geni.net/geni/wiki/GENIRacksHome/OpenGENIRacks/SoftwareReleaseNotes |
202 | | - Alternatively, they can be obtained by request from '''gram-dev@bbn.com'''. |
203 | | - Set up the APT repository to read the correct version of juno packages: |
204 | | {{{ |
205 | | sudo apt-get install -y ubuntu-cloud-keyring |
206 | | echo deb http://ubuntu-cloud.archive.canonical.com/ubuntu trusty-updates/juno main >> cloudarchive-juno.list |
207 | | sudo mv cloudarchive-juno.list /etc/apt/sources.list.d/ |
208 | | }}} |
209 | | - Update the current repository: |
210 | | {{{ |
211 | | sudo apt-get -y update && sudo apt-get -y dist-upgrade |
212 | | }}} |
213 | | |
214 | | - Get the gdebi package for direct installation of deb files |
215 | | {{{ |
216 | | sudo apt-get install gdebi-core |
217 | | }}} |
218 | | - Install the gram package (where <type> is ''control'', ''network'' or ''compute'' depending on what machine type is being installed): |
219 | | {{{ |
220 | | sudo gdebi gram_<control/network/compute>.deb |
221 | | }}} |
222 | | |
223 | | - '''Edit /etc/gram/config.json'''. ''NOTE: This is the most critical step of the process. This specifies your passwords, network configurations, so that !OpenStack will be configured properly.'' [See section "Configuring config.json" below for details on the variables in that file] |
224 | | |
225 | | - Run the GRAM installation script (where <type> is ''control'' or ''compute'' depending on what machine type is being installed): |
226 | | {{{ |
227 | | sudo /etc/gram/install_gram.sh <control/network/compute> |
228 | | }}} |
229 | | |
230 | | - Configure the OS and Network. You will lose network connectivity in the step, it is recommended that the following command is run directly on the machine or using the Linux 'screen' program. |
231 | | {{{ |
232 | | sudo /tmp/install/install_operating_system_[control/network/compute].sh |
233 | | }}} |
234 | | |
235 | | |
236 | | - Configure everything else. Use a ''' root shell ''' |
237 | | {{{ |
238 | | /tmp/install/install_[control/network/compute].sh |
239 | | }}} |
240 | | |
241 | | This last command will do a number of things: |
242 | | - Read in all apt dependencies required |
243 | | - Configure the !OpenStack configuration files based on values set in config.json |
244 | | - Start all !OpenStack services |
245 | | - Start all GRAM services |
246 | | |
247 | | If something goes wrong (you'll see errors in the output stream), then the scripts it is running are in /tmp/install/install*.sh (install_compute.sh or install_control.sh). You can usually run the commands by hand and get things to work or at least see where things went wrong (often a problem in the configuration file). |
248 | | |
249 | | - Create gram ssh public key pair and authorized_hosts file on network node so that commands for gram can be executed without typing in a password |
250 | | |
251 | | {{{ |
252 | | ssh-keygen -t rsa -C "gram@bbn.com" |
| 177 | |
| 178 | - Copy gram ssh public key pair and create authorized_hosts file on network node so that commands for gram can be executed without typing in a password. You might also want to do this on the compute node. |
| 179 | |
| 180 | {{{ |
| 192 | |
| 193 | On the network node: |
| 194 | |
| 195 | 1. Make sure you have the 10.10.8 interface up as certain pieces of information are placed on the node using ssh and that interface. Alternately, you can run up to the installation of the /tmp/install/install_operating_system_network.sh on the network node before |
| 196 | executing the /tmp/install/install_control.sh on the control node. The operating system installation should take care of configuring the needed interface. Although it is a good idea, if not a requirement for sanity, to check that |
| 197 | your interfaces are plugged in as you think. So before the installation, check network connectivity. |
| 198 | |
| 199 | |
| 200 | 2. '''Install mysql on the control node''' |
| 201 | |
| 202 | {{{ |
| 203 | sudo apt-get install mariadb-server python-mysqldb |
| 204 | }}} |
| 205 | |
| 206 | - You will be prompted for the password of the mysql admin. Type it in (twice) and remember it: it will be needed in the config.json file for the value of mysql_password. |
| 207 | |
| 208 | |
| 209 | 3. '''Install !OpenStack and GRAM on the control, network and compute nodes''' |
| 210 | |
| 211 | - Get the DEBIAN files gram_control.deb, gram_network.deb and gram_compute.deb. |
| 212 | - These packages can be generated from the repository, following instructions from here: http://groups.geni.net/geni/wiki/GENIRacksHome/OpenGENIRacks/SoftwareReleaseNotes |
| 213 | - Alternatively, they can be obtained by request from '''gram-dev@bbn.com'''. |
| 214 | - Set up the APT repository to read the correct version of juno packages: |
| 215 | {{{ |
| 216 | sudo apt-get install -y ubuntu-cloud-keyring |
| 217 | echo deb http://ubuntu-cloud.archive.canonical.com/ubuntu trusty-updates/juno main >> cloudarchive-juno.list |
| 218 | sudo mv cloudarchive-juno.list /etc/apt/sources.list.d/ |
| 219 | }}} |
| 220 | - Update the current repository: |
| 221 | {{{ |
| 222 | sudo apt-get -y update && sudo apt-get -y dist-upgrade |
| 223 | }}} |
| 224 | |
| 225 | - Get the gdebi package for direct installation of deb files |
| 226 | {{{ |
| 227 | sudo apt-get install gdebi-core |
| 228 | }}} |
| 229 | - Install the gram package (where <type> is ''control'', ''network'' or ''compute'' depending on what machine type is being installed): |
| 230 | {{{ |
| 231 | sudo gdebi gram_<control/network/compute>.deb |
| 232 | }}} |
| 233 | |
| 234 | - '''Edit /etc/gram/config.json'''. ''NOTE: This is the most critical step of the process. This specifies your passwords, network configurations, so that !OpenStack will be configured properly.'' [See section "Configuring config.json" below for details on the variables in that file] |
| 235 | |
| 236 | - Run the GRAM installation script (where <type> is ''control'' or ''compute'' depending on what machine type is being installed): |
| 237 | {{{ |
| 238 | sudo /etc/gram/install_gram.sh <control/network/compute> |
| 239 | }}} |
| 240 | |
| 241 | - Configure the OS and Network. You will lose network connectivity in the step, it is recommended that the following command is run directly on the machine or using the Linux 'screen' program. |
| 242 | {{{ |
| 243 | sudo /tmp/install/install_operating_system_[control/network/compute].sh |
| 244 | }}} |
| 245 | |
| 246 | |
| 247 | - Configure everything else. Use a ''' root shell ''' |
| 248 | {{{ |
| 249 | /tmp/install/install_[control/network/compute].sh |
| 250 | }}} |
| 251 | |
| 252 | This last command will do a number of things: |
| 253 | - Read in all apt dependencies required |
| 254 | - Configure the !OpenStack configuration files based on values set in config.json |
| 255 | - Start all !OpenStack services |
| 256 | - Start all GRAM services |
| 257 | |
| 258 | If something goes wrong (you'll see errors in the output stream), then the scripts it is running are in /tmp/install/install*.sh (install_compute.sh or install_control.sh). You can usually run the commands by hand and get things to work or at least see where things went wrong (often a problem in the configuration file). |