Update the install-guide for freezer

Change-Id: I7aa1c9e1d054f4684dca25e62776d85d4b1ca50d
This commit is contained in:
Saad Zaher 2017-03-15 13:13:34 +00:00
parent def678e235
commit b266e83bb7
12 changed files with 346 additions and 44 deletions

View File

@ -0,0 +1,10 @@
2. Edit the ``/etc/freezer-api/freezer-api.conf`` file and complete the following
actions:
* In the ``[database]`` section, configure database access:
.. code-block:: ini
[database]
...
connection = mysql+pymysql://freezer-api:FREEZER-API_DBPASS@controller/freezer-api

View File

@ -0,0 +1,75 @@
Prerequisites
-------------
Before you install and configure the Backup service,
you must create a database, service credentials, and API endpoints.
#. To create the database, complete these steps:
* Use the database access client to connect to the database
server as the ``root`` user:
.. code-block:: console
$ mysql -u root -p
* Create the ``freezer`` database:
.. code-block:: console
CREATE DATABASE freezer;
* Grant proper access to the ``freezer`` database:
.. code-block:: console
GRANT ALL PRIVILEGES ON freezer-api.* TO 'freezer'@'localhost' \
IDENTIFIED BY 'FREEZER_DBPASS';
GRANT ALL PRIVILEGES ON freezer.* TO 'freezer'@'%' \
IDENTIFIED BY 'FREEZER_DBPASS';
Replace ``FREEZER_DBPASS`` with a suitable password.
* Exit the database access client.
.. code-block:: console
exit;
#. Source the ``admin`` credentials to gain access to
admin-only CLI commands:
.. code-block:: console
$ . admin-openrc
#. To create the service credentials, complete these steps:
* Create the ``freezer`` user:
.. code-block:: console
$ openstack user create --domain default --password-prompt freezer
* Add the ``admin`` role to the ``freezer`` user:
.. code-block:: console
$ openstack role add --project service --user freezer admin
* Create the freezer service entities:
.. code-block:: console
$ openstack service create --name freezer --description "Backup" backup
#. Create the Backup service API endpoints:
.. code-block:: console
$ openstack endpoint create --region RegionOne \
backup public http://controller:9090/vY/%\(tenant_id\)s
$ openstack endpoint create --region RegionOne \
backup internal http://controller:9090/vY/%\(tenant_id\)s
$ openstack endpoint create --region RegionOne \
backup admin http://controller:9090/vY/%\(tenant_id\)s

View File

@ -1,15 +1,25 @@
"""
(c) Copyright 2016 Hewlett-Packard Enterprise Development Company, L.P.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
"""
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is execfile()d with the current directory set to its
# containing dir.
#
# Note that not all possible configuration values are present in this
# autogenerated file.
#
# All configuration values have a default; values that are commented out
# serve to show the default.
import os
# import sys
@ -45,7 +55,7 @@ source_suffix = '.rst'
master_doc = 'index'
# General information about the project.
project = u'Installation Guide for Messaging Service'
project = u'Installation Guide for Backup Service'
bug_tag = u'install-guide'
copyright = u'2016, OpenStack contributors'
@ -61,15 +71,15 @@ release = '0.1'
# A few variables have to be set for the log-a-bug feature.
# giturl: The location of conf.py on Git. Must be set manually.
# gitsha: The SHA checksum of the bug description. Automatically extracted
# from git log.
# from git log.
# bug_tag: Tag for categorizing the bug. Must be set manually.
# These variables are passed to the logabug code via html_context.
giturl = (u'https://git.openstack.org/cgit/openstack/freezer-api/tree/'
u'install-guide/source')
giturl = u'http://git.openstack.org/cgit/openstack/freezer-api/tree/install-guide/source' # noqa
git_cmd = "/usr/bin/git log | head -n1 | cut -f2 -d' '"
gitsha = os.popen(git_cmd).read().strip('\n')
html_context = {"gitsha": gitsha, "bug_tag": bug_tag,
"giturl": giturl}
"giturl": giturl,
"bug_project": "freezer-api"}
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
@ -83,7 +93,7 @@ html_context = {"gitsha": gitsha, "bug_tag": bug_tag,
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = []
exclude_patterns = ["common_prerequisites.rst", "common_configure.rst"]
# The reST default role (used for this markup: `text`) to use for all
# documents.
@ -112,23 +122,23 @@ pygments_style = 'sphinx'
# -- Options for HTML output ----------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
html_theme = 'openstackdocs'
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# further. For a list of options available for each theme, see the
# documentation.
# html_theme_options = {}
# Add any paths that contain custom themes here, relative to this directory.
html_theme_path = [openstackdocstheme.get_html_theme_path()]
# The name for this set of Sphinx documents. If None, it defaults to
# The name for this set of Sphinx documents. If None, it defaults to
# "<project> v<release> documentation".
# html_title = None
# A shorter title for the navigation bar. Default is the same as html_title.
# A shorter title for the navigation bar. Default is the same as html_title.
# html_short_title = None
# The name of an image file (relative to this directory) to place at the top
@ -136,7 +146,7 @@ html_theme_path = [openstackdocstheme.get_html_theme_path()]
# html_logo = None
# The name of an image file (within the static path) to use as favicon of the
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
# pixels large.
# html_favicon = None
@ -188,7 +198,7 @@ html_show_sourcelink = False
# html_show_copyright = True
# If true, an OpenSearch description file will be output, and all pages will
# contain a <link> tag referring to it. The value of this option must be the
# contain a <link> tag referring to it. The value of this option must be the
# base URL from which the finished HTML is served.
# html_use_opensearch = ''

View File

@ -0,0 +1,53 @@
.. _db-install:
Install and configure database
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Before you install and configure the Backup/Restore service,
you must install the database.
#. To install elasticsearch on Ubuntu, complete these steps:
* Install java prerequisites:
.. code-block:: console
$ sudo apt-get install -y default-jre-headless
* Download ``elasticsearch`` version 2.3.0
.. code-block:: console
$ wget https://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/deb/elasticsearch/2.3.0/elasticsearch-2.3.0.deb
* Install ``elasticsearch``
.. code-block:: console
$ sudo dpkg -i elasticsearch-2.3.0.deb
$ sudo update-rc.d elasticsearch defaults 95 10
#. To install elasticsearch on Fedora, complete these steps:
* Install java prerequisites:
.. code-block:: console
$ sudo yum install -y java-1.8.0-openjdk-headless
* Download ``elasticsearch`` version 2.3.0
.. code-block:: console
$ wget https://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/rpm/elasticsearch/2.3.0/elasticsearch-2.3.0.rpm
* Install ``elasticsearch``
.. code-block:: console
$ sudo yum install -y elasticsearch-2.3.0.rpm

View File

@ -1,9 +1,16 @@
==============================
Backup and DR service Overview
==============================
======================================
Backup/Restore and DR service overview
======================================
The Backup/Restore and DR service provides an easy way to backup and restore
your OpenStack workloads to different storage.
Freezer is a Backup Restore DR as a Service platform that helps you to automate
the data backup and restore process.
The Backup and restore service consists of the following components:
- freezer-api
- freezer-agent
- freezer-scheduler
The Disaster Recovery service consists of the following components:
- freezer-dr
The service features a RESTful API, which can be used to maintain the status of
your jobs, backups and metadata.
@ -19,3 +26,7 @@ Concepts and definitions
*backup_id*
defined as UUID of a backup
``freezer-api`` service
Accepts and responds to end user API calls...

View File

@ -1,11 +1,14 @@
=====================
Backup and DR service
=====================
=============================
Backup/Restore and DR service
=============================
.. toctree::
:maxdepth: 2
get_started.rst
install.rst
verify.rst
next-steps.rst
api_routes.rst
metadata_structure.rst
client_structure.rst
@ -13,11 +16,6 @@ Backup and DR service
known_issues.rst
Freezer is a Backup Restore DR as a Service platform that helps you to automate
the data backup and restore process.
The service features a RESTful API, which can be used to maintain the status of
your jobs, backups and metadata.
This chapter assumes a working setup of OpenStack following the base
Installation Guide.
This chapter assumes a working setup of OpenStack following the
`OpenStack Installation Tutorial
<https://docs.openstack.org/project-install-guide/ocata/>`_.

View File

@ -0,0 +1,34 @@
.. _install-obs:
Install and configure for openSUSE and SUSE Linux Enterprise
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This section describes how to install and configure the Backup service
for openSUSE Leap 42.1 and SUSE Linux Enterprise Server 12 SP1.
.. include:: common_prerequisites.rst
Install and configure components
--------------------------------
#. Install the packages:
.. code-block:: console
# zypper --quiet --non-interactive install
.. include:: common_configure.rst
Finalize installation
---------------------
Start the Backup services and configure them to start when
the system boots:
.. code-block:: console
# systemctl enable openstack-freezer-api.service
# systemctl start openstack-freezer-api.service

View File

@ -0,0 +1,33 @@
.. _install-rdo:
Install and configure for Red Hat Enterprise Linux and CentOS
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This section describes how to install and configure the Backup service
for Red Hat Enterprise Linux 7 and CentOS 7.
.. include:: common_prerequisites.rst
Install and configure components
--------------------------------
#. Install the packages:
.. code-block:: console
# yum install
.. include:: common_configure.rst
Finalize installation
---------------------
Start the Backup services and configure them to start when
the system boots:
.. code-block:: console
# systemctl enable openstack-freezer-api.service
# systemctl start openstack-freezer-api.service

View File

@ -0,0 +1,31 @@
.. _install-ubuntu:
Install and configure for Ubuntu
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This section describes how to install and configure the Backup
service for Ubuntu 14.04 (LTS).
.. include:: common_prerequisites.rst
Install and configure components
--------------------------------
#. Install the packages:
.. code-block:: console
# apt-get update
# apt-get install
.. include:: common_configure.rst
Finalize installation
---------------------
Restart the Backup services:
.. code-block:: console
# service openstack-freezer-api restart

View File

@ -1,10 +1,24 @@
.. _install:
Installation
============
Install and configure
~~~~~~~~~~~~~~~~~~~~~
Install freezer-api
-------------------
This section describes how to install and configure the
Backup service, code-named freezer-api, on the controller node.
This section assumes that you already have a working OpenStack
environment with at least the following components installed:
.. Keystone
Note that installation and configuration vary by distribution.
.. toctree::
:maxdepth: 2
db-install.rst
install-obs.rst
install-rdo.rst
install-ubuntu.rst
.. code-block:: bash

View File

@ -0,0 +1,9 @@
.. _next-steps:
Next steps
~~~~~~~~~~
Your OpenStack environment now includes the freezer-api service.
To add additional services, see
https://docs.openstack.org/project-install-guide/ocata/.

View File

@ -0,0 +1,24 @@
.. _verify:
Verify operation
~~~~~~~~~~~~~~~~
Verify operation of the Backup service.
.. note::
Perform these commands on the controller node.
#. Source the ``admin`` project credentials to gain access to
admin-only CLI commands:
.. code-block:: console
$ . admin-openrc
#. List service components to verify successful launch and registration
of each process:
.. code-block:: console
$ openstack endpoint list