Bug 1642148

Summary: [3.10] Modification in master-config.yaml is causing a failure during Master-API restart (runtime-config)
Product: OpenShift Container Platform Reporter: Scott Dodson <sdodson>
Component: InstallerAssignee: Scott Dodson <sdodson>
Status: CLOSED ERRATA QA Contact: ge liu <geliu>
Severity: high Docs Contact:
Priority: high    
Version: 3.10.0CC: aos-bugs, cshereme, jialiu, jokerman, mmccomas, rhowe, sdodson, sreber
Target Milestone: ---   
Target Release: 3.10.z   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Previously, when upgrading from earlier versions of the product the step that removes pod presets configuration may have resulted in a master-config.yaml file that failed to parse properly. This error has been corrected and the master-config.yaml should now be updated properly in all scenarios.
Story Points: ---
Clone Of: 1634700 Environment:
Last Closed: 2019-01-10 09:27:10 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:
Bug Depends On: 1634700    
Bug Blocks:    

Comment 2 ge liu 2018-11-01 07:25:14 UTC
Install ocp 3.9, and check the master-config.yaml file:

kubernetesMasterConfig:
  apiServerArguments:
    cloud-config:
    - /etc/origin/cloudprovider/gce.conf
    cloud-provider:
    - gce
    runtime-config:
    - apis/settings.k8s.io/v1alpha1=true


Upgrade to ocp 310: v3.10.68 successfully, and check the master-config.yaml:

kubernetesMasterConfig:
  apiServerArguments:
.......
    runtime-config:
    - apis/settings.k8s.io/v1alpha1=true


atomic-openshift-hyperkube-3.10.68-1.git.0.0481810.el7.x86_64

Comment 3 ge liu 2018-11-02 10:02:27 UTC
There is still problem in upgrade.yml, :
########################################################################
- name: Find current value for runtime-config
  yedit: 
    src: "/tmp/master-config.yaml"    ====>It should be '{{ openshift.common.config_base }}/master/'
    key: "kubernetesMasterConfig.apiServerArguments.runtime-config"
    state: list
  register: runtime_config
- name: Set the runtime-config to exclude pod presets
####################################################################
 "/tmp/master-config.yaml" is a wrong directory, so it will not list the runtime_config, then the next steps will be skill by playbook, so this error need to be executed.

Comment 4 Scott Dodson 2018-11-13 19:59:42 UTC
https://github.com/openshift/openshift-ansible/pull/10595 should've fixed this

That's in openshift-ansible-3.10.70-1 and later.

Comment 5 ge liu 2018-11-14 06:55:35 UTC
Verified:
openshift-ansible-3.10.76-1.git.0.11b68c9.el7.noarch
ansible-2.4.6.0-1.el7ae.noarch

installed v3.9.51, check the master-config.yaml:

runtime-config:
    - apis/settings.k8s.io/v1alpha1=true

upgrade to v3.10.76

verify the master-config.yaml:

runtime-config:[]

Comment 7 errata-xmlrpc 2019-01-10 09:27:10 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2019:0026