Bug 1698207 - [DOCS] AWS UPI install should not render machines by default
Summary: [DOCS] AWS UPI install should not render machines by default
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Documentation
Version: 4.1.0
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
: 4.1.0
Assignee: Kathryn Alexander
QA Contact: Johnny Liu
Vikram Goyal
URL:
Whiteboard:
: 1700255 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-04-09 19:47 UTC by Derek Carr
Modified: 2019-05-08 15:20 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-05-08 15:20:53 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github openshift installer pull 1649 0 None closed Drop AWS UPI control-plane Machines and compute MachineSets 2021-01-19 06:30:44 UTC

Description Derek Carr 2019-04-09 19:47:13 UTC
Description of problem:

UPI AWS installs renders manifests for machines.  In UPI modes, usage of the machine API is a choice, and I do not think we can render proper manifests without collecting more data.

How reproducible:

Steps to Reproduce:
1.
2.
3.

Actual results:
machine-api resources are rendered in an install

Expected results:
do not render machine api resources, or make dynamic compute an option in an install-config.


Additional info:

Comment 1 Abhinav Dahiya 2019-04-10 17:47:10 UTC
(In reply to Derek Carr from comment #0)
> Description of problem:
> 
> UPI AWS installs renders manifests for machines.  In UPI modes, usage of the
> machine API is a choice, and I do not think we can render proper manifests
> without collecting more data.
> 
> How reproducible:
> 
> Steps to Reproduce:
> 1.
> 2.
> 3.
> 
> Actual results:
> machine-api resources are rendered in an install
> 
> Expected results:
> do not render machine api resources, or make dynamic compute an option in an
> install-config.

install-config currently supports 0 compute:
```
apiVersion: v1beta3
baseDomain: tt.testing
compute:
- name: worker
  replicas: 0
controlPlane:
  name: master
  replicas: 1
```

> Additional info:


And users are free to remove the machine objects for control plane if they choose. 
```
create manifests
rm -rf openshift/99_openshift-cluster-api_master-machines-*.yaml
create ignition-configs
```

Comment 2 Scott Dodson 2019-04-16 17:35:19 UTC
*** Bug 1700255 has been marked as a duplicate of this bug. ***

Comment 3 Scott Dodson 2019-04-17 16:48:08 UTC
This is not a BetaBlocker, for now we'll document the need to step through manifest generation and removal of machine manifests from AWS UPI installs as described in Comment 1.

Comment 4 Kathryn Alexander 2019-04-17 16:50:11 UTC
Scott, will you either dupe or reassign the bug to doc?

Comment 5 Scott Dodson 2019-04-18 19:42:14 UTC
*** Bug 1700255 has been marked as a duplicate of this bug. ***

Comment 6 Scott Dodson 2019-04-18 20:23:14 UTC
(In reply to Kathryn Alexander from comment #4)
> Scott, will you either dupe or reassign the bug to doc?

Yes, there's some due diligence we need to do on our side and we'll pass this over once we're done.

Comment 7 W. Trevor King 2019-04-24 07:18:20 UTC
Ok, installer#1649 tested out for me locally, so I'm moving this to the Documenation component.

Comment 8 Kathryn Alexander 2019-04-24 13:21:59 UTC
I added two commits to https://github.com/openshift/openshift-docs/pull/14241 to add steps to remove the control plane manifest and update the CloudFormation templates. At this point, I think that the cluster-controlled compute nodes should be handled separately.

Comment 9 Johnny Liu 2019-04-25 10:27:22 UTC
Follow the PR with r4.1.0-rc.0 payload, have a try, still reproduced. 

The 1st issue:
Should be `rm -f openshift/99_openshift-cluster-api_master-*.yaml`, but not `rm -f openshift/99_openshift-cluster-api_master-machines-*.yaml` or else would hit such error:
$ ./openshift-install create ignition-configs --dir ./upi_2019-04-24-23-57-58
FATAL failed to fetch Bootstrap Ignition Config: failed to load asset "Master Machines": master machine manifests are required if you also provide openshift/99_openshift-cluster-api_master-user-data-secret.yaml

The 2nd issue after workaround the 1st issue:
+ ./openshift-install create manifests --dir ./upi_2019-04-25-02-31-11
WARNING There are no compute nodes specified. The cluster will not fully initialize without compute nodes. 
INFO Consuming "Install Config" from target directory 
+ echo 'Remove the control-plane Machines from the manifest assets.......'
Remove the control-plane Machines from the manifest assets.......
+ rm -f ./upi_2019-04-25-02-31-11/openshift/99_openshift-cluster-api_master-machines-0.yaml ./upi_2019-04-25-02-31-11/openshift/99_openshift-cluster-api_master-machines-1.yaml ./upi_2019-04-25-02-31-11/openshift/99_openshift-cluster-api_master-machines-2.yaml ./upi_2019-04-25-02-31-11/openshift/99_openshift-cluster-api_master-user-data-secret.yaml
+ echo 'Generate ignition files.......'
Generate ignition files.......
+ ./openshift-install create ignition-configs --dir ./upi_2019-04-25-02-31-11
INFO Consuming "Common Manifests" from target directory 
INFO Consuming "Openshift Manifests" from target directory 
INFO Consuming "Worker Machines" from target directory 

Follow upi-on-aws install doc, master machines are still listed:
# oc get machine -n openshift-machine-api
NAME                         INSTANCE   STATE   TYPE        REGION      ZONE         AGE
jialiu-upi2-rlv4l-master-0                      m4.xlarge   us-east-2   us-east-2a   27m
jialiu-upi2-rlv4l-master-1                      m4.xlarge   us-east-2   us-east-2b   27m
jialiu-upi2-rlv4l-master-2                      m4.xlarge   us-east-2   us-east-2c   27m

Comment 10 Kathryn Alexander 2019-04-25 13:50:01 UTC
Trevor, will you PTAL at issue 2?

Comment 11 W. Trevor King 2019-04-25 20:07:44 UTC
(In reply to Johnny Liu from comment #9)
> The 1st issue:
> Should be `rm -f openshift/99_openshift-cluster-api_master-*.yaml`, but not
> `rm -f openshift/99_openshift-cluster-api_master-machines-*.yaml` or else
> would hit such error:
> $ ./openshift-install create ignition-configs --dir ./upi_2019-04-24-23-57-58
> FATAL failed to fetch Bootstrap Ignition Config: failed to load asset
> "Master Machines": master machine manifests are required if you also provide
> openshift/99_openshift-cluster-api_master-user-data-secret.yaml

I cannot reproduce, and have posted some notes on this to [1].  Seeing if I can reproduce your second point now...

[1]: https://github.com/openshift/installer/pull/1649#discussion_r278710662

Comment 12 Johnny Liu 2019-04-26 06:35:43 UTC
I removed my previous installer binary, and extract it. The same version. While tThis time, I can not reproduced either. Really interesting.
$ oc adm release extract --command='openshift-install' registry.svc.ci.openshift.org/ocp/release:4.1.0-rc.0

$ ./openshift-install version
./openshift-install v4.1.0-201904211700-dirty
built from commit f3b726cc151f5a3d66bc7e23e81b3013f1347a7e
release image registry.svc.ci.openshift.org/ocp/release:4.1.0-rc.0


$ rm -f ./test1/openshift/99_openshift-cluster-api_master-machines-*.yaml

$ ./openshift-install create ignition-configs --dir test1
INFO Consuming "Master Machines" from target directory
INFO Consuming "Openshift Manifests" from target directory
INFO Consuming "Worker Machines" from target directory
INFO Consuming "Common Manifests" from target directory


Follow upi-on-aws install doc, master machines are not listed any more.

# oc get machine -n openshift-machine-api
No resources found.

Comment 13 Kathryn Alexander 2019-05-08 15:20:53 UTC
The AWS UPI docs are live.


Note You need to log in before you can comment on or make changes to this bug.