Add support for Subscription Manager

The rhos-release repo is required to get through the
rdo-manager install and overcloud deploy.
These hard dependencies are removed from the scripts.
The documentation, that covers both rhos-release and
subscription manager usage, is split so that internal
links were not shared with external documentation.

Change-Id: Ia367c8c13d12280a3ad61a68520b4434bdd919df
This commit is contained in:
Ronelle Landy 2015-03-25 10:18:12 -04:00
parent 3d112e2172
commit 2bdef592cd
7 changed files with 137 additions and 31 deletions

View File

@ -117,3 +117,19 @@ Setting Up The Undercloud Machine
}
]
}
.. only:: external
.. admonition:: RHEL
:class: rhel-tag
Register the host machine using Subscription Management::
sudo subscription-manager register --username="[your username]" --password="[your password]"
# Find this with `subscription-manager list --available`
sudo subscription-manager attach --pool="[pool id]"
# Verify repositories are available
sudo subscription-manager repos --list
# Enable repositories needed
sudo subscription-manager repos --enable=rhel-7-server-rpms \
--enable=rhel-7-server-optional-rpms --enable=rhel-7-server-extras-rpms \
--enable=rhel-7-server-openstack-6.0-rpms

View File

@ -34,19 +34,42 @@ non-root user that was used to install the undercloud.
2. Build the required images:
.. admonition:: RHEL
:class: rhel-tag
.. only:: internal
Download the RHEL 7.1 cloud image or copy it over from a different location,
and define the needed environment variable for RHEL 7.1 prior to running
``instack-build-images``::
.. admonition:: RHEL
:class: rhel-tag
curl -O http://download.devel.redhat.com/brewroot/packages/rhel-guest-image/7.1/20150203.1/images/rhel-guest-image-7.1-20150203.1.x86_64.qcow2
export DIB_LOCAL_IMAGE=rhel-guest-image-7.1-20150203.1.x86_64.qcow2
Download the RHEL 7.1 cloud image or copy it over from a different location,
and define the needed environment variable for RHEL 7.1 prior to running
``instack-build-images``::
curl -O http://download.devel.redhat.com/brewroot/packages/rhel-guest-image/7.1/20150203.1/images/rhel-guest-image-7.1-20150203.1.x86_64.qcow2
export DIB_LOCAL_IMAGE=rhel-guest-image-7.1-20150203.1.x86_64.qcow2
# Enable rhos-release
export RUN_RHOS_RELEASE=1
.. only:: external
.. admonition:: RHEL
:class: rhel-tag
Download the RHEL 7.1 cloud image or copy it over from a different location,
for example:
https://access.redhat.com/downloads/content/69/ver=/rhel---7/7.1/x86_64/product-downloads,
and define the needed environment variables for RHEL 7.1 prior to running
``instack-build-images``::
export DIB_LOCAL_IMAGE=rhel-guest-image-7.1-20150224.0.x86_64.qcow2
export REG_METHOD=portal
export REG_USER="[your username]"
export REG_PASSWORD="[your password]"
# Find this with `sudo subscription-manager list --available`
export REG_POOL_ID="[pool id]"
export REG_REPOS="rhel-7-server-rpms rhel-7-server-extras-rpms rhel-ha-for-rhel-7-server-rpms \
rhel-7-server-optional-rpms rhel-7-server-openstack-6.0-rpms"
::
instack-build-images
instack-build-images
#. Load the images into Glance::

View File

@ -14,7 +14,17 @@ node on which you want to install the undercloud.
This will be the host you selected for the Undercloud while preparing the environment.
#. Download and execute the instack-undercloud setup script::
#. Download and execute the instack-undercloud setup script:
.. only:: internal
.. admonition:: RHEL
:class: rhel-tag
Enable rhos-release::
export RUN_RHOS_RELEASE=1
::
curl https://raw.githubusercontent.com/rdo-management/instack-undercloud/master/scripts/instack-setup-host | bash -x

View File

@ -30,6 +30,24 @@ Preparing the Host Machine
--------------------------
#. Install RHEL 7.1 Server x86_64 or CentOS 7 x86_64.
.. only:: external
.. admonition:: RHEL
:class: rhel-tag
Register the host machine using Subscription Management::
sudo subscription-manager register --username="[your username]" --password="[your password]"
# Find this with `subscription-manager list --available`
sudo subscription-manager attach --pool="[pool id]"
# Verify repositories are available
sudo subscription-manager repos --list
# Enable repositories needed
sudo subscription-manager repos --enable=rhel-7-server-rpms \
--enable=rhel-7-server-optional-rpms --enable=rhel-7-server-extras-rpms \
--enable=rhel-7-server-openstack-6.0-rpms
#. Make sure sshd service is installed and running.
#. The user performing all of the installation steps on the virt host needs to
have sudo enabled. You can use an existing user or use the following commands
@ -44,7 +62,17 @@ Preparing the Host Machine
sudo chmod 0440 /etc/sudoers.d/stack
#. Make sure you are logged in as the non-root user you intend to use.
#. Download and execute the instack-undercloud setup script::
#. Download and execute the instack-undercloud setup script:
.. only:: internal
.. admonition:: RHEL
:class: rhel-tag
Enable rhos-release::
export RUN_RHOS_RELEASE=1
::
curl https://raw.githubusercontent.com/rdo-management/instack-undercloud/master/scripts/instack-setup-host | bash -x
@ -77,16 +105,38 @@ Preparing the Host Machine
8. Run the script to setup your virtual environment:
.. admonition:: RHEL
:class: rhel-tag
.. only:: internal
Download the RHEL 7.1 cloud image or copy it over from a different location,
and define the needed environment variables for RHEL 7.1 prior to running
``instack-virt-setup``::
.. admonition:: RHEL
:class: rhel-tag
curl -O http://download.devel.redhat.com/brewroot/packages/rhel-guest-image/7.1/20150203.1/images/rhel-guest-image-7.1-20150203.1.x86_64.qcow2
export DIB_LOCAL_IMAGE=rhel-guest-image-7.1-20150203.1.x86_64.qcow2
export DIB_YUM_REPO_CONF=/etc/yum.repos.d/rhos-release-6-rhel-7.1.repo
Download the RHEL 7.1 cloud image or copy it over from a different location,
and define the needed environment variables for RHEL 7.1 prior to running
``instack-virt-setup``::
curl -O http://download.devel.redhat.com/brewroot/packages/rhel-guest-image/7.1/20150203.1/images/rhel-guest-image-7.1-20150203.1.x86_64.qcow2
export DIB_LOCAL_IMAGE=rhel-guest-image-7.1-20150203.1.x86_64.qcow2
export DIB_YUM_REPO_CONF=/etc/yum.repos.d/rhos-release-6-rhel-7.1.repo
.. only:: external
.. admonition:: RHEL
:class: rhel-tag
Download the RHEL 7.1 cloud image or copy it over from a different location,
for example:
https://access.redhat.com/downloads/content/69/ver=/rhel---7/7.1/x86_64/product-downloads,
and define the needed environment variables for RHEL 7.1 prior to running
``instack-virt-setup``::
export DIB_LOCAL_IMAGE=rhel-guest-image-7.1-20150224.0.x86_64.qcow2
export REG_METHOD=portal
export REG_USER="[your username]"
export REG_PASSWORD="[your password]"
# Find this with `sudo subscription-manager list --available`
export REG_POOL_ID="[pool id]"
export REG_REPOS="rhel-7-server-rpms rhel-7-server-extras-rpms rhel-ha-for-rhel-7-server-rpms \
rhel-7-server-optional-rpms rhel-7-server-openstack-6.0-rpms"
::

View File

@ -60,8 +60,14 @@ if [ "$NODE_DIST" = "rhel7" ]; then
# We need to set RHOS=0 so that epel/rdo get enabled.
export RHOS=0
# But we still actually need it to enable base RHEL repos.
export RHOS_RELEASE=${RHOS_RELEASE:-6}
export DIB_COMMON_ELEMENTS=rhos-release
export RUN_RHOS_RELEASE=${RUN_RHOS_RELEASE:-"0"}
if [ "${RUN_RHOS_RELEASE}" = "1" ]; then
export RHOS_RELEASE=${RHOS_RELEASE:-6}
export DIB_COMMON_ELEMENTS=rhos-release
else
# SELinux permissive for RHEL without rhos-release
export DIB_COMMON_ELEMENTS=selinux-permissive
fi
export REG_HALT_UNREGISTER=${REG_HALT_UNREGISTER:-1}
export DELOREAN=1
export DELOREAN_REPO_URL=$DELOREAN_EL7_REPO_URL

View File

@ -26,20 +26,20 @@ if ! rpm -q epel-release; then
fi
if $(grep -Eqs 'Red Hat Enterprise Linux Server' /etc/redhat-release); then
export RUN_RHOS_RELEASE=${RUN_RHOS_RELEASE:-"0"}
# rhos-release is also required, otherwise we have no base RHEL repositories to
# pull any dependencies from (without using subscription-manager anyway).
if rpm -q rhos-release; then
sudo yum remove -y rhos-release
fi
sudo yum install -y http://rhos-release.virt.bos.redhat.com/repos/rhos-release/rhos-release-latest.noarch.rpm
export RUN_RHOS_RELEASE=${RUN_RHOS_RELEASE:-"1"}
if [ "$RUN_RHOS_RELEASE" = "1" ]; then
if rpm -q rhos-release; then
sudo yum remove -y rhos-release
fi
sudo yum install -y http://rhos-release.virt.bos.redhat.com/repos/rhos-release/rhos-release-latest.noarch.rpm
sudo rhos-release 6
# We need openwsman-python from the optional repo
sudo yum install -y yum-utils
sudo yum install -y yum-plugin-priorities
sudo yum-config-manager --enable rhelosp-rhel-7-server-opt
fi
# We need openwsman-python from the optional repo
sudo yum install -y yum-utils
sudo yum install -y yum-plugin-priorities
sudo yum-config-manager --enable rhelosp-rhel-7-server-opt
fi
# newer openstack-keystone requires python-zope-interface, but that is not

View File

@ -12,7 +12,8 @@ deps = -r{toxinidir}/test-requirements.txt
commands = {posargs}
[testenv:docs]
commands = python setup.py build_sphinx
commands = sphinx-build -a -t external doc/source/ build/sphinx/html
sphinx-build -a -t internal doc/source/ build/sphinx/internal-html
[testenv:pep8]
deps = bashate