1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-05 12:46:18 +01:00
Files
openshift-docs/modules/installation-initializing.adoc
2020-04-29 07:36:46 +10:00

350 lines
13 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
*installation*// Module included in the following assemblies:
//
// * installing/installing_aws/installing-aws-customizations.adoc
// * installing/installing_aws/installing-aws-network-customizations.adoc
// * installing/installing_aws/installing-aws-private.adoc
// * installing/installing_aws/installing-aws-vpc.adoc
// * installing/installing_azure/installing-azure-customizations.adoc
// * installing/installing_azure/installing-azure-network-customizations
// * installing/installing_azure/installing-azure-private.adoc
// * installing/installing_azure/installing-azure-vnet.adoc
// * installing/installing_azure/installing-azure-user-infra.adoc
// * installing/installing_gcp/installing-gcp-customizations.adoc
// * installing/installing_gcp/installing-gcp-private.adoc
// * installing/installing_gcp/installing-gcp-network-customizations.adoc
// * installing/installing_gcp/installing-gcp-vpc.adoc
// * installing/installing_gcp/installing-gcp-user-infra.adoc
// * installing/installing_gcp/installing-restricted-networks-gcp.adoc
// * installing/installing_openstack/installing-openstack-installer-custom.adoc
// * installing/installing_openstack/installing-openstack-installer-kuryr.adoc
// * installing/installing_openstack/installing-openstack-installer-user.adoc
// * installing/installing_rhv/installing-rhv-customizations.adoc
// * installing/installing_rhv/installing-rhv-default.adoc
// Consider also adding the installation-configuration-parameters.adoc module.
//YOU MUST SET AN IFEVAL FOR EACH NEW MODULE
ifeval::["{context}" == "installing-aws-customizations"]
:aws:
endif::[]
ifeval::["{context}" == "installing-aws-network-customizations"]
:aws:
endif::[]
ifeval::["{context}" == "installing-aws-vpc"]
:aws:
endif::[]
ifeval::["{context}" == "installing-azure-customizations"]
:azure:
endif::[]
ifeval::["{context}" == "installing-azure-network-customizations"]
:azure:
endif::[]
ifeval::["{context}" == "installing-azure-vnet"]
:azure:
endif::[]
ifeval::["{context}" == "installing-azure-user-infra"]
:azure:
endif::[]
ifeval::["{context}" == "installing-gcp-customizations"]
:gcp:
endif::[]
ifeval::["{context}" == "installing-gcp-vpc"]
:gcp:
endif::[]
ifeval::["{context}" == "installing-gcp-network-customizations"]
:gcp:
endif::[]
ifeval::["{context}" == "installing-gcp-user-infra"]
:gcp:
endif::[]
ifeval::["{context}" == "installing-restricted-networks-gcp"]
:gcp:
endif::[]
ifeval::["{context}" == "installing-openstack-installer-custom"]
:osp:
endif::[]
ifeval::["{context}" == "installing-openstack-installer-kuryr"]
:osp:
endif::[]
ifeval::["{context}" == "installing-openstack-user"]
:osp:
:osp-user:
endif::[]
ifeval::["{context}" == "installing-openstack-user-kuryr"]
:osp:
:osp-user:
endif::[]
ifeval::["{context}" == "installing-rhv-customizations"]
:rhv:
endif::[]
ifeval::["{context}" == "installing-rhv-default"]
:rhv:
endif::[]
[id="installation-initializing_{context}"]
= Creating the installation configuration file
You can customize the {product-title} cluster you install on
ifdef::aws[]
Amazon Web Services (AWS).
endif::aws[]
ifdef::azure[]
Microsoft Azure.
endif::azure[]
ifdef::gcp[]
Google Cloud Platform (GCP).
endif::gcp[]
ifdef::osp[]
OpenStack.
endif::osp[]
ifdef::rhv[]
{rh-virtualization-first}.
endif::rhv[]
.Prerequisites
* Download the {product-title} installation program and the pull secret for your cluster.
.Procedure
. Create the `install-config.yaml` file.
+
ifndef::rhv[]
.. Run the following command:
+
----
$ ./openshift-install create install-config --dir=<installation_directory> <1>
----
endif::rhv[]
ifdef::rhv[]
.. For {rh-virtualization-first}, run the installation program with `sudo`:
+
----
$ sudo ./openshift-install create install-config --dir=<installation_directory> <1>
----
endif::rhv[]
<1> For `<installation_directory>`, specify the directory name to store the
files that the installation program creates.
+
[IMPORTANT]
====
Specify an empty directory. Some installation assets, like bootstrap X.509
certificates have short expiration intervals, so you must not reuse an
installation directory. If you want to reuse individual files from another
cluster installation, you can copy them into your directory. However, the file
names for the installation assets might change between releases. Use caution
when copying installation files from an earlier {product-title} version.
====
ifndef::rhv[]
.. At the prompts, provide the configuration details for your cloud:
... Optional: Select an SSH key to use to access your cluster machines.
+
[NOTE]
====
For production {product-title} clusters on which you want to perform installation debugging or disaster recovery, specify an SSH key that your `ssh-agent` process uses.
====
endif::rhv[]
ifdef::aws[]
... Select *AWS* as the platform to target.
... If you do not have an Amazon Web Services (AWS) profile stored on your computer, enter the AWS
access key ID and secret access key for the user that you configured to run the
installation program.
... Select the AWS region to deploy the cluster to.
... Select the base domain for the Route53 service that you configured for your cluster.
endif::aws[]
ifdef::azure[]
... Select *azure* as the platform to target.
... If you do not have a Microsoft Azure profile stored on your computer, specify the
following Azure parameter values for your subscription and service principal:
**** *azure subscription id*: The subscription ID to use for the cluster.
Specify the `id` value in your account output.
**** *azure tenant id*: The tenant ID. Specify the `tenantId` value in your
account output.
**** *azure service principal client id*: The value of the `appId` parameter
for the service principal.
**** *azure service principal client secret*: The value of the `password`
parameter for the service principal.
... Select the region to deploy the cluster to.
... Select the base domain to deploy the cluster to. The base domain corresponds
to the Azure DNS Zone that you created for your cluster.
endif::azure[]
ifdef::gcp[]
... Select *gcp* as the platform to target.
... If you have not configured the service account key for your GCP account on
your computer, you must obtain it from GCP and paste the contents of the file
or enter the absolute path to the file.
... Select the project ID to provision the cluster in. The default value is
specified by the service account that you configured.
... Select the region to deploy the cluster to.
... Select the base domain to deploy the cluster to. The base domain corresponds
to the public DNS zone that you created for your cluster.
endif::gcp[]
ifdef::osp[]
... Select *openstack* as the platform to target.
... Specify the {rh-openstack-first} external network name to use for installing the cluster.
... Specify the floating IP address to use for external access to the OpenShift API.
... Specify a {rh-openstack} flavor with at least 16 GB RAM to use for control plane
and compute nodes.
... Select the base domain to deploy the cluster to. All DNS records will be
sub-domains of this base and will also include the cluster name.
endif::osp[]
ifndef::osp[]
ifndef::rhv[]
... Enter a descriptive name for your cluster.
endif::rhv[]
endif::osp[]
ifdef::osp[]
... Enter a name for your cluster. The name must be 14 or fewer characters long.
endif::osp[]
ifdef::azure[]
+
[IMPORTANT]
====
All Azure resources that are available through public endpoints are subject to
resource name restrictions, and you cannot create resources that use certain
terms. For a list of terms that Azure restricts, see
link:https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-reserved-resource-name[Resolve reserved resource name errors]
in the Azure documentation.
====
endif::azure[]
ifdef::gcp[]
If you provide a name that is longer
than 6 characters, only the first 6 characters will be used in the infrastructure
ID that is generated from the cluster name.
endif::gcp[]
ifdef::rhv[]
.. Respond to the installation program prompts.
... For `SSH Public Key`, select a password-less public key, such as `~/.ssh/id_rsa.pub`. This key authenticates connections with the new {product-title} cluster.
+
[NOTE]
====
For production {product-title} clusters on which you want to perform installation debugging or disaster recovery, select an SSH key that your `ssh-agent` process uses.
====
... For `Platform`, select `ovirt`.
... For `Enter oVirt's API endpoint URL`, enter the URL of the {rh-virtualization} API using this format:
+
----
https://<engine-fqdn>/ovirt-engine/api <1>
----
<1> For `<engine-fqdn>`, specify the fully qualified domain name of the {rh-virtualization} environment.
+
For example:
+
----
https://rhv-env.virtlab.example.com/ovirt-engine/api
----
+
... For `Is the installed oVirt certificate trusted?`, enter `Yes` since you have already set up a CA certificate. Otherwise, enter `No`.
... For `oVirt's CA bundle`, if you entered `Yes` for the preceding question, copy the certificate content from `/etc/pki/ca-trust/source/anchors/ca.pem` and paste it here. Then, press `Enter` twice. Otherwise, if you entered `No` for the preceding question, this question does not appear.
... For `Enter the oVirt engine username`, enter the username and profile of the {rh-virtualization} administrator using this format:
+
----
<username>@<profile> <1>
----
<1> For `<username>`, specify the username of an {rh-virtualization} administrator. For `<profile>`, specify the login profile, which you can get by going to the {rh-virtualization} Administration Portal login page and reviewing the *Profile* dropdown list. Together, the user name and profile should look similar to this example:
+
----
admin@internal
----
+
... For `Enter password`, enter the {rh-virtualization} admin password.
... For `Select the oVirt cluster`, select the cluster for installing {product-title}.
... For `Select the oVirt storage domain`, select the storage domain for installing {product-title}.
... For `Select the oVirt network`, select a virtual network that has access to the {rh-virtualization} Manager REST API.
... For `Enter the internal API Virtual IP`, enter the static IP address you set aside for the clusters REST API.
... For `Enter the internal DNS Virtual IP`, enter the static IP address you set aside for the clusters internal DNS service.
... For `Enter the ingress IP`, enter the static IP address you reserved for the wildcard apps domain.
... For `Base domain`, enter the base domain of the {product-title} cluster. If this cluster is exposed to the outside world, this must be a valid domain recognized by DNS infrastructure. For example, enter: `virtlab.example.com`
... For `Cluster name`, enter the name of the cluster. For example, `my-cluster`. Use cluster name from the externally registered/resolvable DNS entries you created for the {product-title} REST API and apps domain names. The installation program also gives this name to the cluster in the {rh-virtualization} environment.
... For `Pull secret`, copy the pull secret from the `pull-secret.txt` file you downloaded earlier and paste it here. You can also get a copy of the same pull secret from the link:https://cloud.redhat.com/openshift/install/pull-secret[Pull Secret] page on the {cloud-redhat-com} site.
endif::rhv[]
ifndef::rhv[]
... Paste the pull secret that you obtained from the
link:https://cloud.redhat.com/openshift/install/pull-secret[Pull Secret] page on the {cloud-redhat-com} site.
ifdef::openshift-origin[]
This field is optional.
endif::[]
endif::rhv[]
ifeval::["{context}" == "installing-gcp-user-infra"]
.. Optional: If you do not want the cluster to provision compute machines, empty
the compute pool by editing the resulting `install-config.yaml` file to set
`replicas` to `0` for the `compute` pool:
+
[source,yaml]
----
compute:
- hyperthreading: Enabled
name: worker
platform: {}
replicas: 0 <1>
----
<1> Set to `0`.
endif::[]
. Modify the `install-config.yaml` file. You can find more information about
the available parameters in the *Installation configuration parameters* section.
. Back up the `install-config.yaml` file so that you can use
it to install multiple clusters.
+
[IMPORTANT]
====
The `install-config.yaml` file is consumed during the installation process. If
you want to reuse the file, you must back it up now.
====
ifdef::osp-user[You now have the file `install-config.yaml` in the directory that you specified.]
ifeval::["{context}" == "installing-aws-customizations"]
:!aws:
endif::[]
ifeval::["{context}" == "installing-aws-network-customizations"]
:!aws:
endif::[]
ifeval::["{context}" == "installing-aws-vpc"]
:!aws:
endif::[]
ifeval::["{context}" == "installing-azure-customizations"]
:!azure:
endif::[]
ifeval::["{context}" == "installing-azure-network-customizations"]
:!azure:
endif::[]
ifeval::["{context}" == "installing-azure-vnet"]
:!azure:
endif::[]
ifeval::["{context}" == "installing-azure-user-infra"]
:!azure:
endif::[]
ifeval::["{context}" == "installing-gcp-customizations"]
:!gcp:
endif::[]
ifeval::["{context}" == "installing-gcp-network-customizations"]
:!gcp:
endif::[]
ifeval::["{context}" == "installing-gcp-vpc"]
:!gcp:
endif::[]
ifeval::["{context}" == "installing-gcp-user-infra"]
:!gcp:
endif::[]
ifeval::["{context}" == "installing-openstack-installer-custom"]
:!osp:
endif::[]
ifeval::["{context}" == "installing-openstack-installer-kuryr"]
:!osp:
endif::[]
ifeval::["{context}" == "installing-openstack-user"]
:!osp:
:!osp-user:
endif::[]
ifeval::["{context}" == "installing-openstack-user-kuryr"]
:!osp:
:!osp-user:
endif::[]
ifeval::["{context}" == "installing-rhv-customizations"]
:!rhv:
endif::[]
ifeval::["{context}" == "installing-rhv-default"]
:!rhv:
endif::[]