1
0
mirror of https://github.com/openshift/installer.git synced 2026-02-05 06:46:36 +01:00

23 Commits

Author SHA1 Message Date
Brent Barbachem
905b5731ea OCPBUGS-35366: Update upi references to api-internal
** Updated the UPI references in docs and scripts to use api-internal to the name to match those of the
capg and terraform resources.
2024-07-16 06:47:22 -04:00
OpenShift Merge Robot
dd432a87fb Merge pull request #4828 from rna-afk/gcp_upi_shorten_instance_group_suffix
Bug 1921627: Shorten instance group suffix to ig
2021-12-14 19:56:57 +01:00
atiratree
a7040d4004 Revert "open cluster-policy-controller ports for metrics"
This reverts commit 2636aef6cd.
2021-12-06 15:13:52 +01:00
OpenShift Merge Robot
0a7f8bc1d1 Merge pull request #5164 from rna-afk/gcp_upi_update_ignition_version
Bug 1949672: Update UPI ignition version to 3.2.0
2021-10-06 22:20:00 +02:00
atiratree
2636aef6cd open cluster-policy-controller ports for metrics 2021-09-29 17:32:51 +02:00
rna-afk
a5b5044712 GCP: Update UPI ignition version to 3.2.0
Updating ignition version from 3.1.0 to 3.2.0 for GCP UPI
templates.
2021-08-20 17:20:02 -04:00
rna-afk
2313481d99 gcp_upi: Shorten instance group suffix to ig
GCP has a size restriction of 63 for the instance group name which
is mostly taken up by the suffix -instance-group that is being added
to make sure the resources have unique name. Reducing the size
of the suffix from -instance-group to -ig would help in restricting
the size of the name and would also help in keeping the names
unique.
2021-04-07 19:49:19 -04:00
Mark Gray
618d4ef474 Bug 1916373: upi: allow IPsec ports 2021-01-14 15:31:30 -05:00
Christian Glombek
b9028eea48 *: Migrate to ignition config spec v3.1
The installer now generates spec v3.1 ignition config,
instead of v2.2 (and v2.4 for openstack) as before.

The v3.1 ignition config specification can be found at [1].
A detailed overview of the differences between specs v2 and v3 can be found at [2].

Notable differences are:
- the `Filesystem` identifier on ignition file configs no longer exists
- `Overwrite` now defaults to `false` (was `true` in spec v2), which is why
it is now set explicitly to keep the same behaviour.
- duplicate file configs are now prohibited, i.e. all contents and
all appendices must be defined in a single config.
- duplicate systemd unit configs are now prohibited, i.e. the content
and all dropins  must be defined in a single config.

This commit:
- Bumps ignition to v2.3.0 with support for config spec v3.1.
- Bumps terraform-provider-ignition to v2.1.0.
Also adds downloading of the provider binary to `images/installer/Dockerfile.upi.ci`
which is necessary because the ignition v2/spec3 version from the
`community-terraform-providers/terraform-ignition-provider` fork is not
present in the provider registry that is maintained by Hashicorp and can
therefore not be pulled in automatically by terraform.
is not present in the
- Bumps machine-config-operator to b3b074ee9156
(latest commit at the time of this writing).
- Adds "github.com/clarketm/json" dependency for marshaling Ignition configs.
This is a dropin replacement for "encoding/json" that supports zero values of
structs with omittempty annotations when marshaling.
In effect, this will exclude empty pointer struct fields from the
marshaled data instead of inserting nil values into them, which do not
pass openAPI validation on fields that are supposed to contain e.g. strings.
The same library is used by machine-config-operator and ignition itself.
- Updates the vendor dir to make commit idempotent.

[1] https://github.com/coreos/ignition/blob/master/doc/configuration-v3_1.md
[2] https://github.com/coreos/ignition/blob/master/doc/migrating-configs.md#from-version-230-to-300

Co-authored-by: Vadim Rutkovsky <vrutkovs@redhat.com>
2020-07-29 00:39:27 +02:00
Jeremiah Stuever
019262a6a9 GCP UPI: relax cluster name
This mirrors changes to GCP IPI in #3544

The infra id of the clusters on GCP was reduced to 12 in #2088 because
we couldn't handle the hostname seen by rhcos machine to be greater than
64.
More details on this are available in
https://bugzilla.redhat.com/show_bug.cgi?id=1809345

now since BZ 1809345 is fixed by openshift/machine-config-operator#1711
and openshift/cluster-api-provider-gcp#88 the installer can relax the
restriction on the infra-id to match the other platforms.

Why is it important?

On GCP all resources are prefixed with infra-id, which currently is 12
chars with 6 chars used by random bit, leaving only 6 chars from cluster
name. This causes trouble associating the cluster to jobs in CI as most
of the identifyable characters are dropped from the resource names in CI
due to this restriction.

Also because of the previous restriction, only one char are used from
pool's name, making is higly likely to collide in cases there are more.
2020-06-03 16:11:00 -07:00
Abu Kashem
3bc71bb646 Make the doc discoverable from where health checks are defined 2020-05-11 16:29:40 -04:00
Jeremiah Stuever
f158e6e181 gcp upi: add bootstrap to instance group
Previously, the bootstrap host was being added to the first master
instance group. This causes an issue if the gcp cloud provider attempts
to create internal load balancers for the cluster because it ignores the
first master's instance groupd and tries to put it into a new instance
group. If there are workers that are in a different subnet, then the
cloud provider throws an error and never creates the ingress lbs.

This change creates an instance group for the bootstrap host, and
updates the doc to utilize it. It also removes the steps of adding and
removing the bootstrap host from the external target pools, as that is
not what we are doing with ipi.
2020-03-17 20:21:48 -07:00
Jeremiah Stuever
45ccd3fe2c gcp upi: enable internal load balancers
This change adds 02_lb_int.py template to the workflow to enable
internal load balancers. The cluster will begin communicating to the api
and mcs through the internal load balancers. The external load balancer
can optionally be disabled for private clusters.

This change also updates the documentation to use the $(command) syntax
to be in line with the other platforms.

In addition, the variable definitions were all moved to immediately
after the associated resources were created. This will help make clear
where their origins are.
2020-03-14 10:53:17 -07:00
Jeremiah Stuever
998a518a17 gcp upi: split templates to simplify shared vpc workflow.
Prior to this change, users needed to edit the gcp upi python templates
in order to provision an cluster using a shared VPC. This was prone to
user error.

This change breaks up the templates so that only the yaml files need to
be modified, thus greatly simplifying the process. All of the resources
that would be provisioned in the host project are now in their own
python templates (01_vpc.py, 02_dns.py, and 03_firewall.py). These
resources can be removed from the yaml files to be run against the
service project and placed into yaml files to be run against the host
project instead.
2020-03-09 16:39:52 -07:00
Abhinav Dahiya
73eeef70fb *: add OWNERS for all platform specific directories
`<platform>-approvers` and `<platform>-reviewers` alias from `OWNER_ALIASES` should be used to maintain membership.
2019-12-10 09:55:42 -08:00
patrickdillon
92c376b13d Change GCP UPI firewall rules for network LB health check.
This is the UPI equivalent of 4c346afcde. The initial implementation of both UPI & IPI was not allowing the complete range of network load balancers. This includes the fix for UPI and also leaves the ranges for internal load balancers.
2019-10-10 10:12:43 -04:00
Jeremiah Stuever
86bdaae4b1 upi/gcp: increase the NAT ports for control plane to 7168
This change increases the minimum ports per control-plane instance to
allow much higher resiliency. It is based on #2376, which did the same
for GCP IPI.
2019-10-07 16:22:28 -07:00
Jeremiah Stuever
d51bf3c24f upi/gcp: control plane to use pd-ssd
This change updates the gcp upi templates to use pd-ssd disk types on
the control plane instances just like we do in gcp ipi.
2019-10-02 11:27:03 -07:00
Jeremiah Stuever
51f94ec53d gcp upi: allow nodePort between masters and workers
Before this change, the gcp upi firewall rules limited access to the
nodePort ports from worker to worker and master to master. Access
between worker and master was denied. However, because gcp upi produces
masters that have the 'worker' role, the nodePort services could run on
masters and need to be accessed from pods on other workers. Or pods on
masters might need access to nodePort services on workers.

This change modifies the gcp upi firewall rules to allow the nodePort
services across the entire cluster.
2019-09-30 09:36:01 -07:00
Jeremiah Stuever
eafaaa8d64 gcp: Collapse the firewall rules
Before this change, gcp used individual firewall rules for each
service/port used. This caused quota issues where multiple clusters were
provisoned to the same project.

This change collapses the firewall rules where approperiate to reduce
the number of firewall rules used.
2019-09-27 14:10:29 -07:00
Jeremiah Stuever
c3b97f931b upi/gcp: templates to use zone paramaters
Before this change, the GCP UPI workflow hard coded the zones in the
bootstrap and control-plane templates. It assumed every region had zones
$REGION-{a,b,c}. However, in some regions this is not the case.

This change adds the zone(s) as parameters to the templates and updates
the docs accordingly. The list of zones is now fetched from gcp, and
then used to populate the templates.
2019-09-24 16:44:45 -07:00
Casey Callendrello
c36fe1d31e Bug 1748162: upi/aws, gcp: Open port 6081 for GENEVE
This allows for use of the GENEVE overlay network, bringing UPI in to
parity with IPI.
2019-09-10 10:58:32 +02:00
Jeremiah Stuever
cbe6f1549d upi/gcp: initial deployment manager templates 2019-08-08 15:00:43 -07:00