diff options
| author | Martin Borg <martin.borg@enea.com> | 2019-09-27 15:09:16 +0200 |
|---|---|---|
| committer | Martin Borg <martin.borg@enea.com> | 2019-10-01 09:19:25 +0200 |
| commit | 1b9b859ee60570de0064781de3cca45f7b8ddfbc (patch) | |
| tree | 354f49219d4d8c355461e9bcab44b6797f14b694 | |
| parent | c0b37ccf94861f12274b5a7ed11364c8cd26f364 (diff) | |
| download | nfv-access-documentation-1b9b859ee60570de0064781de3cca45f7b8ddfbc.tar.gz | |
GettingStarted: Update Bare-metal Provisioning chapter
- Add information about server notifications
- Restructure into subsections
Change-Id: I6fa6b41eb118acd68746cf2038c348f723c1f407
Signed-off-by: Martin Borg <martin.borg@enea.com>
| -rw-r--r-- | doc/book-enea-nfv-access-getting-started/doc/bare_metal_provisioning.xml | 205 |
1 files changed, 134 insertions, 71 deletions
diff --git a/doc/book-enea-nfv-access-getting-started/doc/bare_metal_provisioning.xml b/doc/book-enea-nfv-access-getting-started/doc/bare_metal_provisioning.xml index 3e6869f..8ff70ee 100644 --- a/doc/book-enea-nfv-access-getting-started/doc/bare_metal_provisioning.xml +++ b/doc/book-enea-nfv-access-getting-started/doc/bare_metal_provisioning.xml | |||
| @@ -12,20 +12,21 @@ | |||
| 12 | <section id="bare_meta_prov_intro"> | 12 | <section id="bare_meta_prov_intro"> |
| 13 | <title>Introduction</title> | 13 | <title>Introduction</title> |
| 14 | 14 | ||
| 15 | <para>Bare Metal Provisioning can be used for automated deployment of the Enea | 15 | <para>Bare Metal Provisioning can be used for automated deployment of the |
| 16 | NFV Access Run Time Platform on a large number of uCPE devices. The uCPE | 16 | Enea NFV Access Run Time Platform on a large number of uCPE devices. The |
| 17 | devices may have no previous operating system installed, or are reinstalled | 17 | uCPE devices may have no previous operating system installed, or are |
| 18 | without preserving any existing data. Enea NFV Access Bare | 18 | reinstalled without preserving any existing data. Enea NFV Access Bare |
| 19 | Metal Provisioning is based on standardized Pre-Boot Execution environment (PXE) booting.</para> | 19 | Metal Provisioning is based on standardized Pre-Boot Execution environment |
| 20 | (PXE) booting.</para> | ||
| 20 | 21 | ||
| 21 | <para>The Bare Metal Provisioning process begins by PXE booting an Enea | 22 | <para>The Bare Metal Provisioning process begins by PXE booting an Enea |
| 22 | NFV Access installer <literal>initramfs</literal> image. The installer downloads a | 23 | NFV Access installer <literal>initramfs</literal> image. The installer |
| 23 | configuration file, as well as the Enea NFV Access Run Time Platform image and | 24 | downloads a configuration file, as well as the Enea NFV Access Run Time |
| 24 | then proceeds to install the system by dividing the disk into 2 partitions. A GPT | 25 | Platform image and then proceeds to install the system by dividing the |
| 25 | partition containing the GRUB boot loader and a second partition | 26 | disk into 2 partitions. A GPT partition containing the GRUB boot loader |
| 26 | containing the Enea NFV Access Run Time Platform root filesystem. When the | 27 | and a second partition containing the Enea NFV Access Run Time Platform |
| 27 | installation is complete, the uCPE device is automatically rebooted into | 28 | root filesystem. When the installation is complete, the uCPE device is |
| 28 | Enea NFV Access Run Time Platform.</para> | 29 | automatically rebooted into Enea NFV Access Run Time Platform.</para> |
| 29 | </section> | 30 | </section> |
| 30 | 31 | ||
| 31 | <section id="bare_meta_prov_prereq"> | 32 | <section id="bare_meta_prov_prereq"> |
| @@ -40,13 +41,15 @@ | |||
| 40 | </listitem> | 41 | </listitem> |
| 41 | 42 | ||
| 42 | <listitem> | 43 | <listitem> |
| 43 | <para>An HTTP server must be available in the provisioning | 44 | <para>An HTTP server must be available and accessible from the uCPE |
| 44 | network.</para> | 45 | devices in the provisioning network. Note that the installer will use |
| 46 | the same interface that the uCPE device is PXE-booted from, to obtain | ||
| 47 | an IP address using DHCP and access the HTTP server.</para> | ||
| 45 | </listitem> | 48 | </listitem> |
| 46 | 49 | ||
| 47 | <listitem> | 50 | <listitem> |
| 48 | <para>The uCPE devices are preconfigured in BIOS to boot from the | 51 | <para>The uCPE devices are preconfigured in BIOS to boot from the hard |
| 49 | hard drive where the Enea NFV Access Run Time Platform will be | 52 | drive where the Enea NFV Access Run Time Platform will be |
| 50 | installed.</para> | 53 | installed.</para> |
| 51 | </listitem> | 54 | </listitem> |
| 52 | 55 | ||
| @@ -58,71 +61,114 @@ | |||
| 58 | </itemizedlist> | 61 | </itemizedlist> |
| 59 | </section> | 62 | </section> |
| 60 | 63 | ||
| 61 | <section id="bare_meta_prov_conf"> | 64 | <section id="bare_meta_prov_server"> |
| 62 | <title>Installation Configuration File</title> | 65 | <title>Server Configuration</title> |
| 63 | 66 | ||
| 64 | <para>An installation configuration file needs to be available on an HTTP | 67 | <para>The following images provided with your Enea NFV Access release |
| 65 | server in the provisioning network.</para> | 68 | needs to be made available on the PXE and HTTP servers:</para> |
| 66 | |||
| 67 | <note><para>The installer will use the same interface that the uCPE device | ||
| 68 | was PXE-booted from, to obtain an IP address (using DHCP) and access the HTTP server.</para></note> | ||
| 69 | |||
| 70 | <para>The configuration parameters are described below. The configuration | ||
| 71 | file format is a list of <literal>"name = value"</literal> pairs.</para> | ||
| 72 | |||
| 73 | <itemizedlist> | ||
| 74 | <listitem> | ||
| 75 | <para><literal>image_url</literal>. The HTTP URL used for downloading | ||
| 76 | the Enea NFV Access Run Time Platform image (in gzip compressed hddimg | ||
| 77 | format) to be installed on the uCPE device(s). This image is provided | ||
| 78 | with your Enea NFV Access release. This parameter is mandatory.</para> | ||
| 79 | </listitem> | ||
| 80 | 69 | ||
| 70 | <orderedlist> | ||
| 81 | <listitem> | 71 | <listitem> |
| 82 | <para><literal>install_drive</literal>. The name of the drive where | 72 | <para>Copy the Enea NFV Access installer <literal>initramfs</literal> |
| 83 | the Enea NFV Access Run Time Platform will be installed (e.g /dev/sda). | 73 | image and kernel <literal>bzImage</literal> for the uCPE device |
| 84 | This parameter is optional. If no value is set, the installer will use | 74 | architecture to the TFTP directory on the PXE server (e.g |
| 85 | the largest detected (non-USB) drive on the uCPE device.</para> | 75 | <literal>/var/lib/tftpboot</literal>).</para> |
| 86 | </listitem> | 76 | </listitem> |
| 87 | 77 | ||
| 88 | <listitem> | 78 | <listitem> |
| 89 | <para><literal>prompt_user</literal>. If the parameter is set to | 79 | <para>Compress the Enea NFV Access Run Time Platform |
| 90 | "yes", the installer will prompt the user before formatting and | 80 | <literal>hddimg</literal> image for the uCPE device architecture using |
| 91 | partitioning the drive. This parameter is optional. The default | 81 | <literal>gzip</literal> and copy the resulting |
| 92 | behaviour is to not prompt the user (unattended installation).</para> | 82 | <literal>hddimg.gz</literal> file to the HTTP server.</para> |
| 93 | </listitem> | 83 | </listitem> |
| 94 | </itemizedlist> | 84 | </orderedlist> |
| 95 | 85 | ||
| 96 | <para>Installation Configuration File Example:</para> | 86 | <section id="bare_meta_prov_install_config"> |
| 97 | 87 | <title>Installation Configuration File</title> | |
| 98 | <programlisting> | 88 | |
| 99 | image_url = http://192.168.1.100/enea-nfv-access-xeon-d.hddimg.gz | 89 | <para>An installation configuration file needs to be prepared on the |
| 100 | install_drive = /dev/sda | 90 | HTTP server. The format of the configuration file is a list of |
| 101 | </programlisting> | 91 | "<literal>name = value</literal>" pairs and the available parameters are |
| 102 | </section> | 92 | described below.</para> |
| 103 | 93 | ||
| 104 | <section id="bare_meta_prov_pxe"> | 94 | <para>Mandatory parameters:</para> |
| 105 | <title>PXE Configuration</title> | 95 | |
| 106 | 96 | <itemizedlist> | |
| 107 | <para>Copy the Enea NFV Access installer <literal>initramfs</literal> image and kernel | 97 | <listitem> |
| 108 | to the <literal>tftpboot</literal> directory on the PXE server (e.g | 98 | <para><literal>image_url</literal>. The HTTP server URL used for |
| 109 | <literal>/var/lib/tftpboot</literal>). These files are provided with your | 99 | downloading the Enea NFV Access Run Time Platform image to be |
| 110 | Enea NFV Access release.</para> | 100 | installed on the uCPE devices in <literal>hddimg.gz</literal> |
| 111 | 101 | format.</para> | |
| 112 | <para>A PXE entry for the Enea NFV Access installation needs to be added as | 102 | </listitem> |
| 113 | the default boot selection in the pxelinux configuration file (e.g | 103 | </itemizedlist> |
| 114 | <literal>/var/lib/tftpboot/pxelinux.cfg/default</literal>). The PXE entry | 104 | |
| 115 | should have the following settings:</para> | 105 | <para>Optional parameters:</para> |
| 116 | 106 | ||
| 117 | <programlisting> | 107 | <itemizedlist> |
| 108 | <listitem> | ||
| 109 | <para><literal>install_drive</literal>. The name of the drive where | ||
| 110 | the Enea NFV Access Run Time Platform will be installed (e.g | ||
| 111 | <literal>/dev/sda</literal>). If not set, the installer will use the | ||
| 112 | largest detected (non-USB) drive on the uCPE device.</para> | ||
| 113 | </listitem> | ||
| 114 | |||
| 115 | <listitem> | ||
| 116 | <para><literal>prompt_user</literal>. If the parameter is set to | ||
| 117 | "yes", the installer will ask for confirmation before formatting and | ||
| 118 | partitioning the drive. The default behaviour is to proceed | ||
| 119 | automatically without any user interaction.</para> | ||
| 120 | </listitem> | ||
| 121 | </itemizedlist> | ||
| 122 | |||
| 123 | <para>Optional parameters for sending status notifications to a server. | ||
| 124 | All three must be provided if used:</para> | ||
| 125 | |||
| 126 | <itemizedlist> | ||
| 127 | <listitem> | ||
| 128 | <para><literal>notify_user</literal>. Server SSH username</para> | ||
| 129 | </listitem> | ||
| 130 | |||
| 131 | <listitem> | ||
| 132 | <para><literal>notify_pass</literal>. Server SSH password</para> | ||
| 133 | </listitem> | ||
| 134 | |||
| 135 | <listitem> | ||
| 136 | <para><literal>notify_path</literal>. Location where notification | ||
| 137 | files will be placed, specified in "Server IP:directory" | ||
| 138 | format.</para> | ||
| 139 | </listitem> | ||
| 140 | </itemizedlist> | ||
| 141 | |||
| 142 | <para>Installation Configuration File Example:</para> | ||
| 143 | |||
| 144 | <programlisting> | ||
| 145 | image_url = http://192.168.1.100/enea-nfv-access-xeon-d.hddimg.gz | ||
| 146 | install_drive = /dev/sda | ||
| 147 | notify_user = username | ||
| 148 | notify_pass = password | ||
| 149 | notify_path = 192.168.1.100:/home/user/status_notifications | ||
| 150 | |||
| 151 | </programlisting> | ||
| 152 | </section> | ||
| 153 | |||
| 154 | <section id="bare_meta_prov_pxe"> | ||
| 155 | <title>PXE Configuration</title> | ||
| 156 | |||
| 157 | <para>A PXE entry for the Enea NFV Access installation needs to be added | ||
| 158 | as the default boot selection in the pxelinux configuration file (e.g | ||
| 159 | <literal>/var/lib/tftpboot/pxelinux.cfg/default</literal>). The PXE | ||
| 160 | entry should have the following settings:</para> | ||
| 161 | |||
| 162 | <programlisting> | ||
| 118 | default nfv_access | 163 | default nfv_access |
| 119 | label nfv_access | 164 | label nfv_access |
| 120 | menu label ^NFV_ACCESS_INSTALLER | 165 | menu label ^NFV_ACCESS_INSTALLER |
| 121 | kernel <Path to kernel> | 166 | kernel <Path to kernel> |
| 122 | append root=/dev/ram0 initrd=<Path to initramfs> LABEL=pxe-installer \ | 167 | append root=/dev/ram0 initrd=<Path to initramfs> LABEL=pxe-installer \ |
| 123 | INSTALL_CFG=http://<Server IP>/<Path to configuration file> | 168 | INSTALL_CFG=http://<Server IP>/<Path to install config file> |
| 124 | ipappend 2 | 169 | ipappend 2 |
| 125 | </programlisting> | 170 | </programlisting> |
| 171 | </section> | ||
| 126 | </section> | 172 | </section> |
| 127 | 173 | ||
| 128 | <section id="bare_meta_prov_inst"> | 174 | <section id="bare_meta_prov_inst"> |
| @@ -130,8 +176,8 @@ | |||
| 130 | 176 | ||
| 131 | <para>To initiate the installation, set the boot device (for next boot | 177 | <para>To initiate the installation, set the boot device (for next boot |
| 132 | only) to PXE and reboot the uCPE devices. How to do this depends on the | 178 | only) to PXE and reboot the uCPE devices. How to do this depends on the |
| 133 | remote management capabilities of the uCPE devices and may be | 179 | remote management capabilities of the uCPE devices and may require |
| 134 | vendor-specific.</para> | 180 | vendor-specific tools.</para> |
| 135 | 181 | ||
| 136 | <para>Example initiation using <literal>ipmitool</literal>:</para> | 182 | <para>Example initiation using <literal>ipmitool</literal>:</para> |
| 137 | 183 | ||
| @@ -141,7 +187,24 @@ | |||
| 141 | </programlisting> | 187 | </programlisting> |
| 142 | 188 | ||
| 143 | <para>The uCPE devices should be configured in BIOS to boot from the | 189 | <para>The uCPE devices should be configured in BIOS to boot from the |
| 144 | installation drive first in order to automatically start the Enea NFV Access | 190 | installation drive first in order to automatically start the Enea NFV |
| 145 | Run Time Platform when the installation is finished.</para> | 191 | Access Run Time Platform when the installation is finished.</para> |
| 192 | |||
| 193 | <section> | ||
| 194 | <title>Server Notifications</title> | ||
| 195 | |||
| 196 | <para>Optionally, the uCPE devices can send a notification file to a | ||
| 197 | server once the installation is complete and Enea NFV Access Runtime | ||
| 198 | Platform has successfully booted. Notifications are enabled by providing | ||
| 199 | the <literal>notify_*</literal> parameters in the installation | ||
| 200 | configuration file.</para> | ||
| 201 | |||
| 202 | <para>Each uCPE device will push a file to the server location specified | ||
| 203 | in the installation configuration file. The file name will be the MAC | ||
| 204 | address of the PXE boot network interface in order to uniquely identify | ||
| 205 | the device. Note that the status notification will only be sent on the | ||
| 206 | first boot after installation is done, subsequent reboots of the uCPE | ||
| 207 | device will not cause any new notifications to be sent.</para> | ||
| 208 | </section> | ||
| 146 | </section> | 209 | </section> |
| 147 | </chapter> \ No newline at end of file | 210 | </chapter> \ No newline at end of file |
