Skip to content

Commit 275342c

Browse files
committed
OCPBUGS-51298: Added VPC note to manually-create-iam-ibm-cloud.adoc
1 parent ad9965a commit 275342c

File tree

2 files changed

+62
-44
lines changed

2 files changed

+62
-44
lines changed

modules/manually-create-iam-ibm-cloud.adoc

Lines changed: 36 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -53,33 +53,43 @@ You can use the Cloud Credential Operator (CCO) utility (`ccoctl`) to create the
5353
5454
.Procedure
5555

56-
. Edit the `install-config.yaml` configuration file so that it contains the `credentialsMode` parameter set to `Manual`.
56+
. Edit the `install-config.yaml` configuration file so that the file includes the `credentialsMode` parameter set to `Manual`.
5757
+
58+
ifdef::ibm-vpc[]
5859
.Example `install-config.yaml` configuration file
59-
[source,yaml]
60+
[source,yaml,subs="+quotes"]
6061
----
6162
apiVersion: v1
6263
baseDomain: cluster1.example.com
63-
credentialsMode: Manual <1>
64+
credentialsMode: Manual
6465
compute:
65-
ifdef::ibm-vpc[]
6666
- architecture: amd64
67+
hyperthreading: Enabled
68+
----
6769
endif::ibm-vpc[]
6870
ifdef::ibm-power-vs[]
71+
.Example `install-config.yaml` configuration file
72+
[source,yaml,subs="+quotes"]
73+
----
74+
apiVersion: v1
75+
baseDomain: cluster1.example.com
76+
credentialsMode: Manual
77+
compute:
6978
- architecture: ppc64le
70-
endif::ibm-power-vs[]
7179
hyperthreading: Enabled
7280
----
73-
<1> This line is added to set the `credentialsMode` parameter to `Manual`.
81+
endif::ibm-power-vs[]
82+
83+
* `credentialsMode`: Set the `credentialsMode` parameter to `Manual`.
7484
75-
. To generate the manifests, run the following command from the directory that contains the installation program:
85+
. To generate the manifests, run the following command from the directory that includes the installation program:
7686
+
7787
[source,terminal]
7888
----
7989
$ ./openshift-install create manifests --dir <installation_directory>
8090
----
8191

82-
. From the directory that contains the installation program, set a `$RELEASE_IMAGE` variable with the release image from your installation file by running the following command:
92+
. From the directory that includes the installation program, set a `$RELEASE_IMAGE` variable with the release image from your installation file by running the following command:
8393
+
8494
[source,terminal]
8595
----
@@ -93,13 +103,13 @@ $ RELEASE_IMAGE=$(./openshift-install version | awk '/release image/ {print $3}'
93103
$ oc adm release extract \
94104
--from=$RELEASE_IMAGE \
95105
--credentials-requests \
96-
--included \// <1>
97-
--install-config=<path_to_directory_with_installation_configuration>/install-config.yaml \// <2>
98-
--to=<path_to_directory_for_credentials_requests> <3>
106+
--include \
107+
--install-config=<path_to_directory_with_installation_configuration>/install-config.yaml \
108+
--to=<path_to_directory_for_credentials_requests>
99109
----
100-
<1> The `--included` parameter includes only the manifests that your specific cluster configuration requires.
101-
<2> Specify the location of the `install-config.yaml` file.
102-
<3> Specify the path to the directory where you want to store the `CredentialsRequest` objects. If the specified directory does not exist, this command creates it.
110+
* `--included`: Includes only the manifests that your specific cluster configuration requires.
111+
* `<path_to_directory_with_installation_configuration>`: Specify the location of the `install-config.yaml` file.
112+
* `<path_to_directory_for_credentials_requests>`: Specify the path to the directory where you want to store the `CredentialsRequest` objects. If the specified directory does not exist, this command creates it.
103113
+
104114
This command creates a YAML file for each `CredentialsRequest` object.
105115
+
@@ -143,22 +153,22 @@ This command creates a YAML file for each `CredentialsRequest` object.
143153
[source,terminal]
144154
----
145155
$ ccoctl ibmcloud create-service-id \
146-
--credentials-requests-dir=<path_to_credential_requests_directory> \// <1>
147-
--name=<cluster_name> \// <2>
148-
--output-dir=<installation_directory> \// <3>
149-
--resource-group-name=<resource_group_name> <4>
150-
----
151-
<1> Specify the directory containing the files for the component `CredentialsRequest` objects.
152-
<2> Specify the name of the {product-title} cluster.
153-
<3> Optional: Specify the directory in which you want the `ccoctl` utility to create objects. By default, the utility creates objects in the directory in which the commands are run.
154-
<4> Optional: Specify the name of the resource group used for scoping the access policies.
156+
--credentials-requests-dir=<path_to_credential_requests_directory> \
157+
--name=<cluster_name> \
158+
--output-dir=<installation_directory> \
159+
--resource-group-name=<resource_group_name>
160+
----
161+
* `<path_to_credential_requests_directory>`: Specify the directory containing the files for the `CredentialsRequest` objects.
162+
* `<cluster_name>`: Specify the name of the {product-title} cluster.
163+
* `<installation_directory>`: Optional parameter. Specify the directory in which you want the `ccoctl` utility to create objects. By default, the utility creates objects in the directory in which you run the commands.
164+
* `<resource_group_name>`: Optional parameter. Specify the name of the resource group used for scoping the access policies.
155165
+
156166
--
157167
[NOTE]
158168
====
159-
If your cluster uses Technology Preview features that are enabled by the `TechPreviewNoUpgrade` feature set, you must include the `--enable-tech-preview` parameter.
169+
If you enabled Technology Preview features by using the `TechPreviewNoUpgrade` feature set for your cluster, you must include the `--enable-tech-preview` parameter in the configuration for the `CredentialsRequest` object.
160170
161-
If an incorrect resource group name is provided, the installation fails during the bootstrap phase. To find the correct resource group name, run the following command:
171+
If you provided a wrong resource group name, the installation fails during the bootstrap phase. To find the correct resource group name, run the following command:
162172

163173
ifdef::ibm-vpc[]
164174
[source,terminal]
@@ -177,7 +187,7 @@ endif::ibm-power-vs[]
177187

178188
.Verification
179189

180-
* Ensure that the appropriate secrets were generated in your cluster's `manifests` directory.
190+
* Check that the appropriate secrets exist in the `manifests` directory of your cluster.
181191
182192
ifeval::["{context}" == "installing-ibm-cloud-customizations"]
183193
:!ibm-vpc:

modules/minimum-required-permissions-ipi-gcp-xpn.adoc

Lines changed: 26 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,51 +6,59 @@
66
[id="minimum-required-permissions-ipi-gcp-xpn_{context}"]
77
= Required {gcp-short} permissions for shared VPC installations
88

9-
When you are installing a cluster to a link:https://cloud.google.com/vpc/docs/shared-vpc[shared VPC], you must configure the service account for both the host project and the service project. If you are not installing to a shared VPC, you can skip this section.
9+
When you are installing a cluster to a link:https://cloud.google.com/vpc/docs/shared-vpc[shared VPC], you must configure the service account for both the host project and the service project.
1010

11-
You must apply the minimum roles required for a standard installation as listed above, to the service project.
11+
[IMPORTANT]
12+
====
13+
You can use granular permissions for a Cloud Credential Operator that operates in either Manual or Mint credentials mode. For more information about the minimum permissions required for a standard installation that is configured with either of these credentials modes, see "Required Google Cloud permissions for installer-provisioned infrastructure".
14+
15+
You cannot use granular permissions in Passthrough credentials mode. For more information about the minimum roles required, see "Required Google Cloud roles".
16+
====
17+
18+
If you are not installing to a shared Virtual Private Cloud (VPC), you can skip the procedure.
1219

1320
[IMPORTANT]
1421
====
15-
You can use granular permissions for a Cloud Credential Operator that operates in either manual or mint credentials mode. You cannot use granular permissions in passthrough credentials mode.
22+
When installing a cluster on shared Virtual Private Cloud (VPC) infrastructure and you want to manually create credentials, grant the `compute.subnetworks.use` permission on the host project to the credentials that the Machine API Operator uses.
1623
====
1724

1825
Ensure that the host project applies one of the following configurations to the service account:
1926

2027
.Required permissions for creating firewalls in the host project
21-
[%collapsible]
22-
====
28+
[source,text]
29+
----
2330
* `projects/<host-project>/roles/dns.networks.bindPrivateDNSZone`
2431
* `roles/compute.networkAdmin`
2532
* `roles/compute.securityAdmin`
26-
====
33+
----
2734

2835
.Required permissions for deleting firewalls in the host project
29-
[%collapsible]
30-
====
36+
[source,text]
37+
----
3138
* `compute.firewalls.delete`
3239
* `compute.networks.updatePolicy`
33-
====
40+
----
3441

3542
.Required minimal permissions
36-
[%collapsible]
37-
====
43+
[source,text]
44+
----
3845
* `projects/<host-project>/roles/dns.networks.bindPrivateDNSZone`
3946
* `roles/compute.networkUser`
40-
====
47+
----
4148

42-
If you do not supply a service account for control plane nodes in the `install-config.yaml` file, please grant the following permissions to the service account in the host project. If you do not supply a service account for compute nodes in the `install-config.yaml` file, please grant the following permissions to the service account in the host project for cluster destruction. If you do supply service accounts for control plane and compute nodes, you do not need to grant the following permissions.
49+
If you do not supply a service account for control plane nodes in the `install-config.yaml` file, grant the following permissions to the service account in the host project. If you do not supply a service account for compute nodes in the `install-config.yaml` file, grant the following permissions to the service account in the host project for cluster destruction. If you do supply service accounts for control plane and compute nodes, you do not need to grant the following permissions.
4350

44-
[%collapsible]
45-
====
51+
[source,text]
52+
----
4653
* `resourcemanager.projects.getIamPolicy`
4754
* `resourcemanager.projects.setIamPolicy`
48-
====
55+
----
4956

5057
The following permissions are required when you select a separate project for the location of the DNS zone or zones. These permissions are also required when the DNS zone or zones are located in a third project.
5158

5259
.Required minimal permissions for provisioning DNS resources in a separate project
53-
====
60+
[source,text]
61+
----
5462
* `dns.changes.create`
5563
* `dns.changes.get`
5664
* `dns.managedZones.create`
@@ -61,4 +69,4 @@ The following permissions are required when you select a separate project for th
6169
* `dns.resourceRecordSets.create`
6270
* `dns.resourceRecordSets.delete`
6371
* `dns.resourceRecordSets.list`
64-
====
72+
----

0 commit comments

Comments
 (0)