Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
Applies to SUSE OpenStack Cloud Crowbar 8

5 Software Repository Setup

Nodes in SUSE OpenStack Cloud are automatically installed from the Administration Server. For this to happen, software repositories containing products, extensions, and the respective updates for all software need to be available on or accessible from the Administration Server. In this configuration step, these repositories are made available. There are two types of repositories:

Product Media Repositories: Product media repositories are copies of the installation media. They need to be directly copied to the Administration Server, loop-mounted from an iso image, or mounted from a remote server via NFS. Affected are SUSE Linux Enterprise Server 12 SP3 and SUSE OpenStack Cloud Crowbar 8. These are static repositories; they do not change or receive updates. See Section 5.1, “Copying the Product Media Repositories” for setup instructions.

Update and Pool Repositories: Update and Pool repositories are provided by the SUSE Customer Center. They contain all updates and patches for the products and extensions. To make them available for SUSE OpenStack Cloud they need to be mirrored from the SUSE Customer Center. Since their content is regularly updated, they must be kept in synchronization with SUSE Customer Center. For these purposes, SUSE provides either the Subscription Management Tool (SMT) or the SUSE Manager.

5.1 Copying the Product Media Repositories

The files in the product repositories for SUSE Linux Enterprise Server and SUSE OpenStack Cloud do not change, therefore they do not need to be synchronized with a remote source. It is sufficient to either copy the data (from a remote host or the installation media), to mount the product repository from a remote server via NFS, or to loop mount a copy of the installation images.

Important
Important: No Symbolic Links for the SUSE Linux Enterprise Server Repository

Note that the SUSE Linux Enterprise Server product repository must be directly available from the local directory listed below. It is not possible to use a symbolic link to a directory located elsewhere, since this will cause booting via PXE to fail.

Tip
Tip: Providing the SUSE OpenStack Cloud Crowbar Repository via HTTP

The SUSE Linux Enterprise Server product repositories need to be available locally to enable booting via PXE for node deployment. The SUSE OpenStack Cloud Crowbar repository may also be served via HTTP from a remote host. In this case, enter the URL to the Cloud repository as described in Section 7.4, “Repositories.

We recommend copying the data to the Administration Server as the best solution. It does not require much hard disk space (approximately 900 MB). Nor does it require the Administration Server to access a remote host from a different network.

The following product media must be copied to the specified directories:

Table 5.1: Local Product Repositories for SUSE OpenStack Cloud

Repository

Directory

SUSE Linux Enterprise Server 12 SP3 DVD #1

/srv/tftpboot/suse-12.3/x86_64/install

SUSE OpenStack Cloud Crowbar 8 DVD #1

/srv/tftpboot/suse-12.3/x86_64/repos/Cloud

The data can be copied by a variety of methods:

Copying from the Installation Media

We recommended using rsync for copying. If the installation data is located on a removable device, make sure to mount it first (for example, after inserting the DVD1 in the Administration Server and waiting for the device to become ready):

SUSE Linux Enterprise Server 12 SP3 DVD#1
mkdir -p /srv/tftpboot/suse-12.3/x86_64/install
mount /dev/dvd /mnt
rsync -avP /mnt/ /srv/tftpboot/suse-12.3/x86_64/install/
umount /mnt
SUSE OpenStack Cloud Crowbar 8 DVD#1
mkdir -p /srv/tftpboot/suse-12.3/x86_64/repos/Cloud
mount /dev/dvd /mnt
rsync -avP /mnt/ /srv/tftpboot/suse-12.3/x86_64/repos/Cloud/
umount /mnt
Copying from a Remote Host

If the data is provided by a remote machine, log in to that machine and push the data to the Administration Server (which has the IP address 192.168.124.10 in the following example):

SUSE Linux Enterprise Server 12 SP3 DVD#1
mkdir -p /srv/tftpboot/suse-12.3/x86_64/install
rsync -avPz /data/SLES-12-SP3/DVD1/ 192.168.124.10:/srv/tftpboot/suse-12.3/x86_64/install/
SUSE OpenStack Cloud Crowbar 8 DVD#1
mkdir -p /srv/tftpboot/suse-12.3/x86_64/repos/Cloud
rsync -avPz /data/SUSE-OPENSTACK-CLOUD//DVD1/ 192.168.124.10:/srv/tftpboot/suse-12.3/x86_64/repos/Cloud/
Mounting from an NFS Server

If the installation data is provided via NFS by a remote machine, mount the respective shares as follows. To automatically mount these directories either create entries in /etc/fstab or set up the automounter.

SUSE Linux Enterprise Server 12 SP3 DVD#1
mkdir -p /srv/tftpboot/suse-12.3/x86_64/install
mount -t nfs nfs.example.com:/exports/SLES-12-SP3/x86_64/DVD1/ /srv/tftpboot/suse-12.3/x86_64/install
SUSE OpenStack Cloud Crowbar 8 DVD#1
mkdir -p /srv/tftpboot/suse-12.3/x86_64/repos/Cloud/
mount -t nfs nfs.example.com:/exports/SUSE-OPENSTACK-CLOUD/DVD1/ /srv/tftpboot/suse-12.3/x86_64/repos/Cloud
Mounting the ISO Images

The product repositories can also be made available by copying the respective ISO images to the Administration Server and mounting them. To automatically mount these directories either create entries in /etc/fstab or set up the automounter.

SUSE Linux Enterprise Server 12 SP3 DVD#1
mkdir -p /srv/tftpboot/suse-12.3/x86_64/install/
mount -o loop /local/SLES-12-SP3-x86_64-DVD1.iso /srv/tftpboot/suse-12.3/x86_64/install
SUSE OpenStack Cloud Crowbar 8 DVD#1
mkdir -p /srv/tftpboot/suse-12.3/x86_64/repos/Cloud/
mount -o loop /local/SUSE-OPENSTACK-CLOUD-8-x86_64-DVD1.iso /srv/tftpboot/suse-12.3/x86_64/repos/Cloud

5.2 Update and Pool Repositories

Update and Pool Repositories are required on the Administration Server to set up and maintain the SUSE OpenStack Cloud nodes. They are provided by SUSE Customer Center and contain all software packages needed to install SUSE Linux Enterprise Server 12 SP3 and the extensions (pool repositories). In addition, they contain all updates and patches (update repositories). Update repositories are used when deploying the nodes that build SUSE OpenStack Cloud to ensure they are initially equipped with the latest software versions available.

The repositories can be made available on the Administration Server using one or more of the following methods:

5.2.1 Repositories Hosted on an SMT Server Installed on the Administration Server

When all update and pool repositories are managed by an SMT server installed on the Administration Server (see Chapter 4, Installing and Setting Up an SMT Server on the Administration Server (Optional)), make sure the repository location in YaST Crowbar is set to Local SMT Server (this is the default). For details, see Section 7.4, “Repositories. No further action is required. The SUSE OpenStack Cloud Crowbar installation automatically detects all available repositories.

5.2.2 Repositories Hosted on a Remote SMT Server

To use repositories from a remote SMT server, you first need to make sure all required repositories are mirrored on the server. Refer to Section 4.3, “Setting up Repository Mirroring on the SMT Server” for more information. When all update and pool repositories are managed by a remote SMT server, make sure the repository location in YaST Crowbar is set to Remote SMT Server. For details, see Section 7.4, “Repositories. No further action is required. The SUSE OpenStack Cloud Crowbar installation automatically detects all available repositories.

Note
Note: Accessing an External SMT Server

When using an external SMT server, it needs to be reachable by all nodes. This means that the SMT server either needs to be part of the admin network or it needs to be accessible via the default route of the nodes. The latter can be either the gateway of the admin network or the gateway of the public network.

5.2.3 Repositories Hosted on a SUSE Manager Server

To use repositories from SUSE Manager you first need to make sure all required products and extensions are registered, and the corresponding channels are mirrored in SUSE Manager (refer to Table 5.4, “SUSE Manager Repositories (Channels)” for a list of channels).

Important
Important: Accessing a SUSE Manager Server

An external SUSE Manager server needs to be accessible to all nodes in SUSE OpenStack Cloud. The network hosting the SUSE Manager server must be added to the network definitions as described in Section 7.5.8, “Providing Access to External Networks”.

By default SUSE Manager does not expose repositories for direct access. To access them via HTTPS, you need to create a Distribution for auto-installation for the SUSE Linux Enterprise Server 12 SP3 (x86_64) product. Creating this distribution makes the update repositories for this product available, including the repositories for all registered add-on products (like SUSE OpenStack Cloud Crowbar, SLES High Availability Extension and SUSE Enterprise Storage). Instructions for creating a distribution are in the SUSE Manager documentation in https://documentation.suse.com/suma/.

During the distribution setups you need to provide a Label for each the distribution. This label will be part of the URL under which the repositories are available. We recommend choosing a name consisting of characters that do not need to be URL-encoded. In Table 5.4, “SUSE Manager Repositories (Channels)” we assume the following label has been provided: sles12-sp3-x86_64.

When all update and pool repositories are managed by a SUSE Manager server, make sure the repository location in YaST Crowbar is set to SUSE Manager Server. For details, see Section 7.4, “Repositories. No further action is required. The SUSE OpenStack Cloud Crowbar installation automatically detects all available repositories.

The autoinstallation tree provided by SUSE Manager does not provide the SLES Pool repository. Although this repository is not used for node installation, it needs to be present. To work around this issue, it is sufficient to create an empty Pool repository for SUSE Linux Enterprise Server 12 SP3:

mkdir /srv/tftpboot/suse-12.3/x86_64/repos/SLES12-SP3-Pool/
createrepo /srv/tftpboot/suse-12.3/x86_64/repos/SLES12-SP3-Pool/

5.2.4 Alternative Ways to Make the Repositories Available

If you want to keep your SUSE OpenStack Cloud network as isolated from the company network as possible, or your infrastructure does not allow accessing a SUSE Manager or an SMT server, you can alternatively provide access to the required repositories by one of the following methods:

  • Mount the repositories from a remote server.

  • Synchronize the repositories from a remote server (for example via rsync and cron).

  • Manually synchronize the update repositories from removable media.

We strongly recommended making the repositories available at the default locations on the Administration Server as listed in Table 5.5, “Default Repository Locations on the Administration Server”. When choosing these locations, it is sufficient to set the repository location in YaST Crowbar to Custom. You do not need to specify a detailed location for each repository. Refer to Section 7.4, “Repositories for details. If you prefer to use different locations, you need to announce each location with YaST Crowbar.

5.3 Software Repository Sources for the Administration Server Operating System

During the installation of the Administration Server, repository locations for SUSE Linux Enterprise Server 12 SP3 are automatically added to the Administration Server. They point to the source used to install the Administration Server and to the SUSE Customer Center. These repository locations have no influence on the repositories used to set up nodes in the cloud. They are solely used to maintain and update the Administration Server itself.

However, as the Administration Server and all nodes in the cloud use the same operating system—SUSE Linux Enterprise Server 12 SP3—it makes sense to use the same repositories for the cloud and the Administration Server. To avoid downloading the same patches twice, change this setup so that the repositories set up for SUSE OpenStack Cloud deployment are also used on the Administration Server.

To do so, you need to disable or delete all services. In a second step all SUSE Linux Enterprise Server and SUSE OpenStack Cloud repositories need to be edited to point to the alternative sources. Use either Zypper or YaST to edit the repository setup. Note that changing the repository setup on the Administration Server is optional.

5.4 Repository Locations

The following tables show the locations of all repositories that can be used for SUSE OpenStack Cloud.

Table 5.2: SMT Repositories Hosted on the Administration Server

Repository

Directory

Mandatory Repositories

SLES12-SP3-Pool

/srv/www/htdocs/repo/SUSE/Products/SLE-SERVER/12-SP3/x86_64/product/

SLES12-SP3-Updates

/srv/www/htdocs/repo/SUSE/Updates/SLE-SERVER/12-SP3/x86_64/update/

SUSE-OpenStack-Cloud-Crowbar-8-Pool

/srv/www/htdocs/repo/SUSE/Products/OpenStack-Cloud-Crowbar/8/x86_64/product/

SUSE-OpenStack-Cloud-Crowbar-8-Updates

/srv/www/htdocs/repo/SUSE/Updates/OpenStack-Cloud-Crowbar/8/x86_64/update/

Optional Repositories

SLE12-HA12-SP3-Pool

/srv/www/htdocs/repo/SUSE/Products/SLE-HA/12-SP3/x86_64/product/

SLE12-HA12-SP3-Updates

/srv/www/htdocs/repo/SUSE/Updates/SLE-HA/12-SP3/x86_64/update/

SUSE-Enterprise-Storage-5-Pool

/srv/www/htdocs/repo/SUSE/Products/Storage/5/x86_64/product/

SUSE-Enterprise-Storage-5-Updates

/srv/www/htdocs/repo/SUSE/Updates/Storage/5/x86_64/update/

Table 5.3: SMT Repositories hosted on a Remote Server

Repository

URl

Mandatory Repositories

 

SLES12-SP3-Pool

http://smt.example.com/repo/SUSE/Products/SLE-SERVER/12-SP3/x86_64/product/

SLES12-SP3-Updates

http://smt.example.com/repo/SUSE/Updates/SLE-SERVER/12-SP3/x86_64/update/

SUSE-OpenStack-Cloud-Crowbar-8-Pool

http://smt.example.com/repo/SUSE/Products/OpenStack-Cloud/7/x86_64/product/

SUSE-OpenStack-Cloud-Crowbar-8-Updates

http://smt.example.com/repo/SUSE/Updates/OpenStack-Cloud/7/x86_64/update/

Optional Repositories

SLE12-HA12-SP3-Pool

http://smt.example.com/repo/SUSE/Products/SLE-HA/12-SP3/x86_64/product/

SLE12-HA12-SP3-Updates

http://smt.example.com/repo/SUSE/Updates/SLE-HA/12-SP3/x86_64/update/

SUSE-Enterprise-Storage-5-Pool

http://smt.example.com/repo/SUSE/Products/Storage/4/x86_64/product/

SUSE-Enterprise-Storage-5-Updates

http://smt.example.com/repo/SUSE/Updates/Storage/4/x86_64/update/

Table 5.4: SUSE Manager Repositories (Channels)

Repository

URL

Mandatory Repositories

SLES12-SP3-Updates

http://manager.example.com/ks/dist/child/sles12-sp3-updates-x86_64/sles12-sp3-x86_64/

SUSE-OpenStack-Cloud-Crowbar-8-Pool

http://manager.example.com/ks/dist/child/suse-openstack-cloud-7-pool-x86_64/sles12-sp3-x86_64/

SUSE-OpenStack-Cloud-Crowbar-8--Updates

http://manager.example.com/ks/dist/child/suse-openstack-cloud-7-updates-x86_64/sles12-sp3-x86_64/

Optional Repositories

SLE12-HA12-SP3-Pool

http://manager.example.com/ks/dist/child/sle-ha12-sp3-pool-x86_64/sles12-sp3-x86_64/

SLE12-HA12-SP3-Updates

http://manager.example.com/ks/dist/child/sle-ha12-sp3-updates-x86_64/sles12-sp3-x86_64/

SUSE-Enterprise-Storage-5-Pool

http://manager.example.com/ks/dist/child/suse-enterprise-storage-2.1-pool-x86_64/sles12-sp3-x86_64/

SUSE-Enterprise-Storage-5-Updates

http://manager.example.com/ks/dist/child/suse-enterprise-storage-4-updates-x86_64/sles12-sp3-x86_64/

The following table shows the recommended default repository locations to use when manually copying, synchronizing, or mounting the repositories. When choosing these locations, it is sufficient to set the repository location in YaST Crowbar to Custom. You do not need to specify a detailed location for each repository. Refer to Section 5.2.4, “Alternative Ways to Make the Repositories Available” and Section 7.4, “Repositories for details.

Table 5.5: Default Repository Locations on the Administration Server

Channel

Directory on the Administration Server

Mandatory Repositories

SLES12-SP3-Pool

/srv/tftpboot/suse-12.3/x86_64/repos/SLES12-SP3-Pool/

SLES12-SP3-Updates

/srv/tftpboot/suse-12.3/x86_64/repos/SLES12-SP3-Updates/

SUSE-OpenStack-Cloud-Crowbar-8-Pool

/srv/tftpboot/suse-12.3/x86_64/repos/SUSE-OpenStack-Cloud-Crowbar-8-Pool/

SUSE-OpenStack-Cloud-Crowbar-8-Updates

/srv/tftpboot/suse-12.3/x86_64/repos/SUSE-OpenStack-Cloud-Crowbar-8-Updates

Optional Repositories

SLE12-HA12-SP3-Pool

/srv/tftpboot/suse-12.3/x86_64/repos/SLE12-HA12-SP3-Pool

SLE12-HA12-SP3-Updates

/srv/tftpboot/suse-12.3/x86_64/repos/SLE12-HA12-SP3-Updates

SUSE-Enterprise-Storage-5-Pool

/srv/tftpboot/suse-12.3/x86_64/repos/SUSE-Enterprise-Storage-5-Pool

SUSE-Enterprise-Storage-5-Updates

/srv/tftpboot/suse-12.3/x86_64/repos/SUSE-Enterprise-Storage-5-Updates