Bug 1572830

Summary: Unable to perform minor update on OSP10 with external Ceph due to ceph-osd package
Product: Red Hat OpenStack Reporter: Andrew Austin <aaustin>
Component: openstack-tripleo-heat-templatesAssignee: Giulio Fidente <gfidente>
Status: CLOSED CURRENTRELEASE QA Contact: Yogev Rabl <yrabl>
Severity: high Docs Contact:
Priority: high    
Version: 10.0 (Newton)CC: abishop, aschultz, cmuresan, elicohen, gfidente, jappleii, mburns, pkundal
Target Milestone: z10Keywords: TestOnly, Triaged, ZStream
Target Release: 10.0 (Newton)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: openstack-tripleo-heat-templates-5.3.10-21.el7ost Doc Type: Bug Fix
Doc Text:
Cause: The OpenStack Platform director would attempt to install the ceph-osd package on overcloud nodes whenever the overcloud was configured to use an external Ceph cluster. Consequence: The ceph-osd package requires a special license subscription, and so the package installation would fail on nodes that lack that subscription. Fix: The OpenStack Platform director no longer attempts to install the ceph-osd package. Result: Software updates work when the overcloud is using an external Ceph cluster.
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-01-18 11:33:35 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Andrew Austin 2018-04-28 01:45:31 UTC
Description of problem:
When performing a minor update on an OSP10 overcloud that uses the ceph-external Heat template where the nodes only have the Ceph tools repo enabled (for client library updates), the update fails due to an attempt to reinstall ceph-osd. 

The ceph-osd package is removed as part of the yum update script, but it is reinstalled due to the presence of ceph-osd in ceph::params::packages in ceph-external.yaml. Removing ceph-mon and ceph-osd from that list in ceph-external.yaml mitigates the issue.

How reproducible:
1. Deploy an overcloud with OSP10 using external Ceph
2. Enable the rhel-7-server-rhceph-2-tools-rpms on all controller and compute nodes. 
3. Do not enable any other Ceph repos. (Customers using external Ceph will not have subscriptions to these repos for OSP nodes)
4. Attempt a minor update of the overcloud.

Actual results: 

A SoftwareDeployment fails during the update. Viewing the output of the failed deployment shows either a version conflict between Ceph packages or a failed attempt to install ceph-osd depending on whether ceph-mon and ceph-osd were stripped from the overcloud image. 


Expected results:

Update should succeed, preferably with the automatic removal of ceph-mon and ceph-osd.

Additional info:

Comment 1 Giulio Fidente 2018-05-08 11:22:08 UTC
While we work on a fix, I believe a workaround for this is to add to the deployment line an environment file with some custom hieradata, for example:

parameter_defaults:
  ExtraConfig:
    ceph::params::packages:
    - ceph-base
    - ceph-mon

Comment 16 Eliad Cohen 2019-01-17 14:37:05 UTC
Verified on openstack-tripleo-heat-templates-5.3.10-23.el7ost.noarch

Comment 17 Lon Hohberger 2019-01-18 11:33:35 UTC
According to our records, this should be resolved by openstack-tripleo-heat-templates-5.3.10-23.el7ost.  This build is available now.