
Incorporate Virtual content in BM AIO-DX install proc using synchronized tabs. Make self-referential include paths relative Move virtual includes to conventional folder for shared content Convert link to root of Install docs to external. This is required because link source page is used in context where internal ref is not available Address review comments from patchset 5 Integrate change on AIO-SX Integrate Std with Storage Integrate Dedicated Storage Share includes to avoid indentation formatting errors (greybars) in DS builds Signed-off-by: Ron Stone <ronald.stone@windriver.com> Change-Id: Ie04c5f8a065b5e2bf87176515bb1131b75a4fcf3
225 lines
7.3 KiB
ReStructuredText
225 lines
7.3 KiB
ReStructuredText
|
||
|
||
.. begin-aio-sx-install-verify-ip-connectivity
|
||
|
||
External connectivity is required to run the Ansible bootstrap
|
||
playbook. The StarlingX boot image will |DHCP| out all interfaces
|
||
so the server may have obtained an IP address and have external IP
|
||
connectivity if a |DHCP| server is present in your environment.
|
||
Verify this using the :command:`ip addr` and :command:`ping
|
||
8.8.8.8` commands.
|
||
|
||
Otherwise, manually configure an IP address and default IP route.
|
||
Use the PORT, IP-ADDRESS/SUBNET-LENGTH and GATEWAY-IP-ADDRESS
|
||
applicable to your deployment environment.
|
||
|
||
::
|
||
|
||
sudo ip address add <IP-ADDRESS>/<SUBNET-LENGTH> dev <PORT>
|
||
sudo ip link set up dev <PORT>
|
||
sudo ip route add default via <GATEWAY-IP-ADDRESS> dev <PORT>
|
||
ping 8.8.8
|
||
|
||
.. end-aio-sx-install-verify-ip-connectivity
|
||
|
||
|
||
.. begin-config-controller-0-oam-interface-sx
|
||
|
||
The following example configures the |OAM| interface on a physical
|
||
untagged ethernet port, use |OAM| port name that is applicable to
|
||
your deployment environment, for example eth0:
|
||
|
||
::
|
||
|
||
~(keystone_admin)$ OAM_IF=<OAM-PORT>
|
||
~(keystone_admin)$ system host-if-modify controller-0 $OAM_IF -c platform
|
||
~(keystone_admin)$ system interface-network-assign controller-0 $OAM_IF oam
|
||
|
||
To configure a vlan or aggregated ethernet interface, see
|
||
:ref:`Node Interfaces <node-interfaces-index>`.
|
||
|
||
.. end-config-controller-0-oam-interface-sx
|
||
|
||
|
||
.. begin-config-controller-0-ntp-interface-sx
|
||
|
||
.. code-block:: none
|
||
|
||
~(keystone_admin)$ system ntp-modify ntpservers=0.pool.ntp.org,1.pool.ntp.org
|
||
|
||
To configure |PTP| instead of |NTP|, see :ref:`PTP Server
|
||
Configuration <ptp-server-config-index>`.
|
||
|
||
.. end-config-controller-0-ntp-interface-sx
|
||
|
||
|
||
.. begin-config-controller-0-OS-k8s-sriov-sx
|
||
|
||
#. Configure the Kubernetes |SRIOV| device plugin.
|
||
|
||
::
|
||
|
||
~(keystone_admin)$ system host-label-assign controller-0 sriovdp=enabled
|
||
|
||
#. |optional| If you are planning on running |DPDK| in
|
||
Kubernetes hosted application containers on this host,
|
||
configure the number of 1G Huge pages required on both |NUMA|
|
||
nodes.
|
||
|
||
.. code-block:: bash
|
||
|
||
# assign 10x 1G huge page on processor/numa-node 0 on controller-0 to applications
|
||
~(keystone_admin)$ system host-memory-modify -f application controller-0 0 -1G 10
|
||
|
||
# assign 10x 1G huge page on processor/numa-node 1 on controller-0 to applications
|
||
~(keystone_admin)$ system host-memory-modify -f application controller-0 1 -1G
|
||
|
||
.. end-config-controller-0-OS-k8s-sriov-sx
|
||
|
||
|
||
.. begin-config-controller-0-OS-add-cores-sx
|
||
|
||
A minimum of 4 platform cores are required, 6 platform cores are
|
||
recommended.
|
||
|
||
Increase the number of platform cores with the following
|
||
commands. This example assigns 6 cores on processor/numa-node 0
|
||
on controller-0 to platform.
|
||
|
||
.. code-block:: bash
|
||
|
||
~(keystone_admin)$ system host-cpu-modify -f platform -p0 6 controller-0
|
||
|
||
.. end-config-controller-0-OS-add-cores-sx
|
||
|
||
|
||
|
||
.. begin-config-controller-0-OS-vswitch-sx
|
||
|
||
To deploy |OVS-DPDK|, run the following command:
|
||
|
||
.. parsed-literal::
|
||
|
||
~(keystone_admin)$ system modify --vswitch_type |ovs-dpdk|
|
||
|
||
Default recommendation for an |AIO|-controller is to use a
|
||
single core for |OVS-DPDK| vSwitch.
|
||
|
||
.. code-block:: bash
|
||
|
||
# assign 1 core on processor/numa-node 0 on controller-0 to vswitch
|
||
~(keystone_admin)$ system host-cpu-modify -f vswitch -p0 1 controller-0
|
||
|
||
When using |OVS-DPDK|, configure 1G of huge pages for vSwitch
|
||
memory on each |NUMA| node on the host. It is recommended to
|
||
configure 1x 1G huge page (-1G 1) for vSwitch memory on each
|
||
|NUMA| node on the host.
|
||
|
||
However, due to a limitation with Kubernetes, only a single huge
|
||
page size is supported on any one host. If your application
|
||
|VMs| require 2M huge pages, then configure 500x 2M huge pages
|
||
(-2M 500) for vSwitch memory on each |NUMA| node on the host.
|
||
|
||
.. code-block::
|
||
|
||
# Assign 1x 1G huge page on processor/numa-node 0 on controller-0 to vswitch
|
||
~(keystone_admin)$ system host-memory-modify -f vswitch -1G 1 controller-0 0
|
||
|
||
# Assign 1x 1G huge page on processor/numa-node 1 on controller-0 to vswitch
|
||
~(keystone_admin)$ system host-memory-modify -f vswitch -1G 1 controller-0 1
|
||
|
||
.. important::
|
||
|
||
|VMs| created in an |OVS-DPDK| environment must be configured
|
||
to use huge pages to enable networking and must use a flavor
|
||
with property: hw:mem_page_size=large
|
||
Configure the huge pages for |VMs| in an |OVS-DPDK|
|
||
environment on this host, the following commands are an
|
||
example that assumes that 1G huge page size is being used on
|
||
this host:
|
||
|
||
.. code-block:: bash
|
||
|
||
# assign 1x 1G huge page on processor/numa-node 0 on controller-0 to applications
|
||
~(keystone_admin)$ system host-memory-modify -f application -1G 10 controller-0 0
|
||
|
||
# assign 1x 1G huge page on processor/numa-node 1 on controller-0 to applications
|
||
~(keystone_admin)$ system host-memory-modify -f application -1G 10 controller-0 1
|
||
|
||
.. note::
|
||
|
||
After controller-0 is unlocked, changing vswitch_type
|
||
requires locking and unlocking controller-0 to apply the
|
||
change.
|
||
|
||
.. end-config-controller-0-OS-vswitch-sx
|
||
|
||
|
||
|
||
.. begin-config-controller-0-OS-add-fs-sx
|
||
|
||
.. note::
|
||
|
||
Both cannot exist at the same time.
|
||
|
||
Add an 'instances' filesystem
|
||
|
||
.. code-block:: bash
|
||
|
||
~(keystone_admin)$ export NODE=controller-0
|
||
|
||
# Create ‘instances’ filesystem
|
||
~(keystone_admin)$ system host-fs-add ${NODE} instances=<size>
|
||
|
||
Or add a 'nova-local' volume group:
|
||
|
||
.. code-block:: bash
|
||
|
||
~(keystone_admin)$ export NODE=controller-0
|
||
|
||
# Create ‘nova-local’ local volume group
|
||
~(keystone_admin)$ system host-lvg-add ${NODE} nova-local
|
||
|
||
# Get UUID of an unused DISK to to be added to the ‘nova-local’ volume
|
||
# group. CEPH OSD Disks can NOT be used
|
||
# List host’s disks and take note of UUID of disk to be used
|
||
~(keystone_admin)$ system host-disk-list ${NODE}
|
||
|
||
# Add the unused disk to the ‘nova-local’ volume group
|
||
~(keystone_admin)$ system host-pv-add ${NODE} nova-local <DISK_UUID>
|
||
|
||
.. end-config-controller-0-OS-add-fs-sx
|
||
|
||
|
||
|
||
.. begin-config-controller-0-OS-data-interface-sx
|
||
|
||
.. code-block:: bash
|
||
|
||
~(keystone_admin)$ NODE=controller-0
|
||
|
||
# List inventoried host’s ports and identify ports to be used as ‘data’ interfaces,
|
||
# based on displayed linux port name, pci address and device type.
|
||
~(keystone_admin)$ system host-port-list ${NODE}
|
||
|
||
# List host’s auto-configured ‘ethernet’ interfaces,
|
||
# find the interfaces corresponding to the ports identified in previous step, and
|
||
# take note of their UUID
|
||
~(keystone_admin)$ system host-if-list -a ${NODE}
|
||
|
||
# Modify configuration for these interfaces
|
||
# Configuring them as ‘data’ class interfaces, MTU of 1500 and named data#
|
||
~(keystone_admin)$ system host-if-modify -m 1500 -n data0 -c data ${NODE} <data0-if-uuid>
|
||
~(keystone_admin)$ system host-if-modify -m 1500 -n data1 -c data ${NODE} <data1-if-uuid>
|
||
|
||
# Create Data Networks that vswitch 'data' interfaces will be connected to
|
||
~(keystone_admin)$ DATANET0='datanet0'
|
||
~(keystone_admin)$ DATANET1='datanet1'
|
||
~(keystone_admin)$ system datanetwork-add ${DATANET0} vlan
|
||
~(keystone_admin)$ system datanetwork-add ${DATANET1} vlan
|
||
|
||
# Assign Data Networks to Data Interfaces
|
||
~(keystone_admin)$ system interface-datanetwork-assign ${NODE} <data0-if-uuid> ${DATANET0}
|
||
~(keystone_admin)$ system interface-datanetwork-assign ${NODE} <data1-if-uuid> ${DATANET1}
|
||
|
||
.. end-config-controller-0-OS-data-interface-sx |