.. incl-config-controller-0-virt-controller-storage-start:

On virtual controller-0:

#. Acquire admin credentials:

   ::

      source /etc/platform/openrc

#. Configure the |OAM| and MGMT interfaces of controller-0 and specify
   the attached networks:

   ::

      OAM_IF=enp7s1
      MGMT_IF=enp7s2
      system host-if-modify controller-0 lo -c none
      IFNET_UUIDS=$(system interface-network-list controller-0 | awk '{if ($6=="lo") print $4;}')
      for UUID in $IFNET_UUIDS; do
          system interface-network-remove ${UUID}
      done
      system host-if-modify controller-0 $OAM_IF -c platform
      system interface-network-assign controller-0 $OAM_IF oam
      system host-if-modify controller-0 $MGMT_IF -c platform
      system interface-network-assign controller-0 $MGMT_IF mgmt
      system interface-network-assign controller-0 $MGMT_IF cluster-host

#. Configure NTP servers for network time synchronization:

   .. note::

      In a virtual environment, this can sometimes cause Ceph clock
      skew alarms. Also, the virtual instance clock is synchronized
      with the host clock, so it is not absolutely required to
      configure NTP here.

   ::

      system ntp-modify ntpservers=0.pool.ntp.org,1.pool.ntp.org

#. Configure Ceph storage backend

   .. important::

      This step required only if your application requires
      persistent storage.

      If you want to install the StarlingX Openstack application
      (|prefix|-openstack) this step is mandatory.

   ::

    system storage-backend-add ceph --confirmed

#. If required, and not already done as part of bootstrap, configure
   Docker to use a proxy server.

   #. List Docker proxy parameters:

      ::

       system service-parameter-list platform docker

   #. Refer to |docker_proxy_config| for details about Docker proxy setting.

.. incl-config-controller-0-virt-controller-storage-end: