cinder/doc/source/install/cinder-storage-install-windows.rst
Lucian Petrut 8fe26313c6 Update Windows docs
This change updates the Cinder Volume install guide, targeting
Windows deployments.

The Windows iSCSI driver doc has been updated. The Windows SMB
driver was undocumented, which is also addressed by this change.

Closes-Bug: #1746022

Change-Id: I46fadc8df59f7203bc3445c24d3bd6547275ee5b
2018-01-30 20:15:23 +02:00

177 lines
4.8 KiB
ReStructuredText

.. _cinder_storage_install_windows:
Install and configure a storage node
====================================
Prerequisites
~~~~~~~~~~~~~
The following Windows versions are officially supported by Cinder:
* ``Windows Server 2012``
* ``Windows Server 2012 R2``
* ``Windows Server 2016``
The OpenStack Cinder Volume MSI installer is the recommended deployment tool
for Cinder on Windows. You can find it at
https://cloudbase.it/openstack-windows-storage/#download.
It installs an independent Python environment, in order to avoid conflicts
with existing applications. It can dynamically generate a ``cinder.conf`` file
based on the parameters you provide.
The OpenStack Cinder Volume MSI installer can be deployed in a fully automated
way using Puppet, Chef, SaltStack, Ansible, Juju, DSC, Windows Group Policies
or any other automated configuration framework.
Configure NTP
-------------
Network time services must be configured to ensure proper operation
of the OpenStack nodes. To set network time on your Windows host you
must run the following commands:
.. code-block:: bat
net stop w32time
w32tm /config /manualpeerlist:pool.ntp.org,0x8 /syncfromflags:MANUAL
net start w32time
Keep in mind that the node will have to be time synchronized with
the other nodes of your OpenStack environment, so it is important to use
the same NTP server.
.. note::
In case of an Active Directory environment, you may do this only for the
AD Domain Controller.
.. end
Install and configure components
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The MSI may be run in the following modes:
Graphical mode
--------------
The installer will walk you through the commonly used cinder options,
automatically generating a config file based on your input.
You may run the following in order to run the installer in graphical mode,
also specifying a log file. Please use the installer full path.
.. code-block:: powershell
msiexec /i CinderVolumeSetup.msi /l*v msi_log.txt
.. end
Unattended mode
---------------
The installer will deploy Cinder, taking care of required Windows services and
features. A minimal sample config file will be generated and need to be
updated accordingly.
Run the following in order to install Cinder in unattended mode, enabling the
iSCSI and SMB volume drivers.
.. code-block:: powershell
msiexec /i CinderVolumeSetup.msi /qn /l*v msi_log.txt `
ADDLOCAL="iscsiDriver,smbDriver"
.. end
By default, Cinder will be installed at
``%ProgramFiles%\Cloudbase Solutions\OpenStack``. You may choose a different
install directory by using the ``INSTALLDIR`` argument, as following:
.. code-block:: powershell
msiexec /i CinderVolumeSetup.msi /qn /l*v msi_log.txt `
ADDLOCAL="iscsiDriver,smbDriver" `
INSTALLDIR="C:\cinder"
.. end
The installer will generate a Windows service, called ``cinder-volume``.
.. note::
Previous MSI releases may use a separate service per volume backend (e.g.
cinder-volume-smb). You may double check the cinder services along with
their executable paths by running the following:
.. code-block:: powershell
get-service cinder-volume*
sc.exe qc cinder-volume-smb
.. end
Note that ``sc`` is also an alias for ``Set-Content``. To use the service
control utility, you have to explicitly call ``sc.exe``.
.. end
Configuring Cinder
------------------
If you've run the installer in graphical mode, you may skip this part as the
MSI already took care of generating the configuration files.
The Cinder Volume Windows service configured by the MSI expects the cinder
config file to reside at::
%INSTALLDIR%\etc\cinder.conf
You may use the following config sample, updating fields appropriately.
.. code-block:: ini
[DEFAULT]
my_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
auth_strategy = keystone
transport_url = rabbit://RABBIT_USER:RABBIT_PASS@controller:5672
glance_api_servers = http://controller/image
sql_connection = mysql+pymysql://cinder:CINDER_DBPASS@controller/cinder
image_conversion_dir = C:\OpenStack\ImageConversionDir\
lock_path = C:\OpenStack\Lock\
log_dir = C:\OpenStack\Log\
log_file = cinder-volume.log
[coordination]
backend_url = file:///C:/OpenStack/Lock/
[key_manager]
api_class = cinder.keymgr.conf_key_mgr.ConfKeyManager
.. end
.. note::
The above sample doesn't configure any Cinder Volume driver. To do
so, follow the configuration guide for the driver of choice, appending
driver specific config options.
.. end
Currently supported drivers on Windows:
* :ref:`windows_smb_volume_driver`
* :ref:`windows_iscsi_volume_driver`
Finalize installation
~~~~~~~~~~~~~~~~~~~~~
#. Restart the Cinder Volume service:
.. code-block:: powershell
Restart-Service cinder-volume
.. end
#. Ensure that the Cinder Volume service is running:
.. code-block:: powershell
Get-Service cinder-volume
.. end