Skip to content

OSDOCS-14757 greatly reducing GCP sample install config files #93709

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion installing/installing_gcp/installing-gcp-customizations.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -48,11 +48,12 @@ include::modules/installation-gcp-enabling-shielded-vms.adoc[leveloffset=+2]

include::modules/installation-gcp-enabling-confidential-vms.adoc[leveloffset=+2]

include::modules/installation-gcp-config-yaml.adoc[leveloffset=+2]
include::modules/installation-gcp-config-yaml-simple.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources

* xref:../../installing/installing_gcp/installation-config-parameters-gcp.adoc#installation-config-parameters-gcp[Installation configuration parameters for GCP]
* xref:../../machine_management/creating_machinesets/creating-machineset-gcp.adoc#machineset-enabling-customer-managed-encryption_creating-machineset-gcp[Enabling customer-managed encryption keys for a compute machine set]

include::modules/installation-configure-proxy.adoc[leveloffset=+2]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,11 +54,12 @@ include::modules/installation-gcp-enabling-shielded-vms.adoc[leveloffset=+2]

include::modules/installation-gcp-enabling-confidential-vms.adoc[leveloffset=+2]

include::modules/installation-gcp-config-yaml.adoc[leveloffset=+2]
include::modules/installation-gcp-config-yaml-simple.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources

* xref:../../installing/installing_gcp/installation-config-parameters-gcp.adoc#installation-config-parameters-gcp[Installation configuration parameters for GCP]
* xref:../../machine_management/creating_machinesets/creating-machineset-gcp.adoc#machineset-enabling-customer-managed-encryption_creating-machineset-gcp[Enabling customer-managed encryption keys for a compute machine set]

include::modules/installation-configure-proxy.adoc[leveloffset=+2]
Expand Down
3 changes: 2 additions & 1 deletion installing/installing_gcp/installing-gcp-private.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,12 @@ include::modules/installation-gcp-enabling-shielded-vms.adoc[leveloffset=+2]

include::modules/installation-gcp-enabling-confidential-vms.adoc[leveloffset=+2]

include::modules/installation-gcp-config-yaml.adoc[leveloffset=+2]
include::modules/installation-gcp-config-yaml-simple.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources

* xref:../../installing/installing_gcp/installation-config-parameters-gcp.adoc#installation-config-parameters-gcp[Installation configuration parameters for GCP]
* xref:../../machine_management/creating_machinesets/creating-machineset-gcp.adoc#machineset-enabling-customer-managed-encryption_creating-machineset-gcp[Enabling customer-managed encryption keys for a compute machine set]

include::modules/nw-gcp-installing-global-access-configuration.adoc[leveloffset=+2]
Expand Down
7 changes: 7 additions & 0 deletions installing/installing_gcp/installing-gcp-shared-vpc.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,13 @@ include::modules/installation-gcp-enabling-confidential-vms.adoc[leveloffset=+2]

include::modules/installation-gcp-shared-vpc-config.adoc[leveloffset=+2]

include::modules/installation-gcp-config-yaml-simple.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources

* xref:../../installing/installing_gcp/installation-config-parameters-gcp.adoc#installation-config-parameters-gcp[Installation configuration parameters for GCP]

include::modules/installation-configure-proxy.adoc[leveloffset=+2]

//Installing the OpenShift CLI by downloading the binary: Moved up to precede `ccoctl` steps, which require the use of `oc`
Expand Down
3 changes: 2 additions & 1 deletion installing/installing_gcp/installing-gcp-vpc.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,12 @@ include::modules/installation-gcp-enabling-shielded-vms.adoc[leveloffset=+2]

include::modules/installation-gcp-enabling-confidential-vms.adoc[leveloffset=+2]

include::modules/installation-gcp-config-yaml.adoc[leveloffset=+2]
include::modules/installation-gcp-config-yaml-simple.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources

* xref:../../installing/installing_gcp/installation-config-parameters-gcp.adoc#installation-config-parameters-gcp[Installation configuration parameters for GCP]
* xref:../../machine_management/creating_machinesets/creating-machineset-gcp.adoc#machineset-enabling-customer-managed-encryption_creating-machineset-gcp[Enabling customer-managed encryption keys for a compute machine set]

include::modules/nw-gcp-installing-global-access-configuration.adoc[leveloffset=+2]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,12 @@ include::modules/installation-gcp-enabling-shielded-vms.adoc[leveloffset=+2]

include::modules/installation-gcp-enabling-confidential-vms.adoc[leveloffset=+2]

include::modules/installation-gcp-config-yaml.adoc[leveloffset=+2]
include::modules/installation-gcp-config-yaml-simple.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources

* xref:../../installing/installing_gcp/installation-config-parameters-gcp.adoc#installation-config-parameters-gcp[Installation configuration parameters for GCP]

include::modules/nw-gcp-installing-global-access-configuration.adoc[leveloffset=+2]

Expand Down
51 changes: 51 additions & 0 deletions modules/installation-gcp-config-yaml-simple.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
// Module included in the following assemblies:
//
// * installing/installing_gcp/installing-gcp-customizations.adoc
// * installing/installing_gcp/installing-gcp-network-customizations.adoc
// * installing/installing_gcp/installing-gcp-vpc.adoc
// * installing/installing_gcp/installing-gcp-private.adoc
// * installing/installing_gcp/installing-restricted-networks-gcp-installer-provisioned.adoc

:_mod-docs-content-type: REFERENCE
[id="installation-gcp-config-yaml_{context}"]
= Sample customized install-config.yaml file for GCP

You can customize the `install-config.yaml` file to specify more details about your {product-title} cluster's platform or modify the values of the required parameters.

[IMPORTANT]
====
This sample YAML file is provided for reference only. You must obtain your `install-config.yaml` file by using the installation program and modify it.
====

[source,yaml]
----
apiVersion: v1 <1>
baseDomain: example.com
pullSecret: '{"auths": ...}'
controlPlane: <2>
name: master
replicas: 3
platform:
gcp:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure how minimal you want to go but this type may not be required, but if you do want to show the structure there are certainly other fields that could be mentioned here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, I am open to suggestions. At a minimum I'd like to put 1 parameter in each section. is there another you would recommend?

type: n2-standard-4
compute: <3>
- name: worker
replicas: 3
platform:
gcp:
type: n2-standard-4
metadata:
name: test-cluster
networking: <4>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As a default, you may be able to drop the networking section. I am sure that this is present in the base install config.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I want to include the networking stanza because this sample is also included in the "...with network customizations" installation procedure so I want to show what that portion of the file looks like.

clusterNetwork:
- cidr: 10.128.0.0/14
hostPrefix: 23
platform: <5>
gcp:
projectID: sample-project

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

platform.gcp.region is also a required field.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bscott-rh Besides, I'm trying to understand the updates, for example, in the 4.18 doc chapter "Chapter 6. Installing a cluster on GCP in a disconnected environment", the section "6.5. Creating the installation configuration file" explains how to edit "install-config.yaml" to give the additional information that is required for an installation in a restricted network. But in your changes, it seems no such info, how do you expect the end-users know generally what's required?

----
<1> Parameters at the first level of indentation apply to the cluster globally.
<2> The `controlPlane` stanza applies to control plane machines.
<3> The `compute` stanza applies to compute machines.
<4> The `networking` stanza applies to the cluster networking configuration. If you do not provide networking values, the installation program provides default values.
<5> The `platform` stanza applies to the infrastructure platform that hosts the cluster.
73 changes: 14 additions & 59 deletions modules/installation-gcp-shared-vpc-config.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -3,68 +3,23 @@

:_mod-docs-content-type: PROCEDURE
[id="installation-gcp-shared-vpc-config_{context}"]
= Sample customized install-config.yaml file for shared VPC installation
There are several configuration parameters which are required to install {product-title} on GCP using a shared VPC. The following is a sample `install-config.yaml` file which demonstrates these fields.

[IMPORTANT]
====
This sample YAML file is provided for reference only. You must modify this file with the correct values for your environment and cluster.
====
= Enabling installation into a shared VPC
There are several configuration parameters which are required to install {product-title} on GCP using a shared VPC.
The following parameters must be added to the `install-config.yaml` file prior to installation.

.Shared VPC parameters in `install-config.yaml`
[source,yaml]
----
apiVersion: v1
baseDomain: example.com
credentialsMode: Passthrough <1>
metadata:
name: cluster_name
platform:
gcp:
computeSubnet: shared-vpc-subnet-1 <2>
controlPlaneSubnet: shared-vpc-subnet-2 <3>
network: shared-vpc <4>
networkProjectID: host-project-name <5>
projectID: service-project-name <6>
region: us-east1
defaultMachinePlatform:
tags: <7>
- global-tag1
controlPlane:
name: master
platform:
gcp:
tags: <7>
- control-plane-tag1
type: n2-standard-4
zones:
- us-central1-a
- us-central1-c
replicas: 3
compute:
- name: worker
platform:
gcp:
tags: <7>
- compute-tag1
type: n2-standard-4
zones:
- us-central1-a
- us-central1-c
replicas: 3
networking:
clusterNetwork:
- cidr: 10.128.0.0/14
hostPrefix: 23
machineNetwork:
- cidr: 10.0.0.0/16
pullSecret: '{"auths": ...}'
sshKey: ssh-ed25519 AAAA... <8>
computeSubnet: shared-vpc-subnet-1 <1>
controlPlaneSubnet: shared-vpc-subnet-2 <2>
network: shared-vpc <3>
networkProjectID: host-project-name <4>
projectID: service-project-name <5>
----
<1> `credentialsMode` must be set to `Passthrough` or `Manual`. See the "Prerequisites" section for the required GCP permissions that your service account must have.
<2> The name of the subnet in the shared VPC for compute machines to use.
<3> The name of the subnet in the shared VPC for control plane machines to use.
<4> The name of the shared VPC.
<5> The name of the host project where the shared VPC exists.
<6> The name of the GCP project where you want to install the cluster.
<7> Optional. One or more network tags to apply to compute machines, control plane machines, or all machines.
<8> You can optionally provide the `sshKey` value that you use to access the machines in your cluster.
<1> The name of the subnet in the shared VPC for compute machines to use.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The credentialsMode still applies I believe. Should be leave that or mention it somewhere else ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was going off of what we have the parameters table, which is "If no mode is specified, the CCO dynamically tries to determine the capabilities of the provided credentials, with a preference for mint mode on the platforms where multiple modes are supported. "

would you recommend we still specify credentials mode? if so, which mode should we put in the sample?

<2> The name of the subnet in the shared VPC for control plane machines to use.
<3> The name of the shared VPC.
<4> The name of the host project where the shared VPC exists.
<5> The name of the GCP project where you want to install the cluster.