Skip to content
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
7 changes: 5 additions & 2 deletions modules/hcp-proxy-addl-network.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@

:_mod-docs-content-type: CONCEPT
[id="hcp-proxy-addl-network_{context}"]
= Management cluster that uses a proxy and a hosted cluster with a secondary network and no default pod network
= Management cluster with a proxy and a hosted cluster with a secondary network and no default pod network

If a management cluster uses a proxy configuration and you are configuring a hosted cluster with a secondary network but are not attaching the default pod network, add the CIDR of the secondary network to the proxy configuration. Specifically, you need to add the CIDR of the secondary network to the `noProxy` section of the proxy configuration for the management cluster. Otherwise, the Kubernetes API server will route some API requests through the proxy. In the hosted cluster configuration, the CIDR of the secondary network is automatically added to the `noProxy` section.
[role="_abstract"]
If a management cluster uses a proxy configuration and you are configuring a hosted cluster with a secondary network but are not attaching the default pod network, add the CIDR of the secondary network to the proxy configuration.

Specifically, you need to add the CIDR of the secondary network to the `noProxy` section of the proxy configuration for the management cluster. Otherwise, the Kubernetes API server will route some API requests through the proxy. In the hosted cluster configuration, the CIDR of the secondary network is automatically added to the `noProxy` section.
12 changes: 9 additions & 3 deletions modules/hcp-proxy-api.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,16 @@
//
// * hosted_control_planes/hcp-networking.adoc

:_mod-docs-content-type: CONCEPT
:_mod-docs-content-type: REFERENCE
[id="hcp-proxy-api_{context}"]
= Compute nodes that need to access the API server

This use case is relevant to self-managed {hcp}, not to {product-rosa} with {hcp}.
[role="_abstract"]
For communication with the control plane, {hcp} uses a local proxy in every compute node that listens on IP address 172.20.0.1 and forwards traffic to the API server. If an external proxy is required to access the API server, that local proxy needs to use the external proxy to send traffic out.

For communication with the control plane, {hcp} uses a local proxy in every compute node that listens on IP address 172.20.0.1 and forwards traffic to the API server. If an external proxy is required to access the API server, that local proxy needs to use the external proxy to send traffic out. When a proxy is not needed, {hcp} uses `haproxy` for the local proxy, which only forwards packets via TCP. When a proxy is needed, {hcp} uses a custom proxy, `control-plane-operator-kubernetes-default-proxy`, to send traffic through the external proxy.
When a proxy is not needed, {hcp} uses `haproxy` for the local proxy, which only forwards packets via TCP. When a proxy is needed, {hcp} uses a custom proxy, `control-plane-operator-kubernetes-default-proxy`, to send traffic through the external proxy.

[NOTE]
====
This use case is relevant to self-managed {hcp}, not to {product-rosa}.
====
5 changes: 4 additions & 1 deletion modules/hcp-proxy-cp-workloads.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,10 @@
[id="hcp-proxy-cp-workloads_{context}"]
= Control plane workloads that need to access external services

Operators that run in the control plane need to access external services through the proxy that is configured for the hosted cluster. The proxy is usually accessible only through the data plane. The control plane workloads are as follows:
[role="_abstract"]
Operators that run in the control plane need to access external services through the proxy that is configured for the hosted cluster. The proxy is usually accessible only through the data plane.

The control plane workloads are as follows:

* The Control Plane Operator needs to validate and obtain endpoints from certain identity providers when it creates the OAuth server configuration.

Expand Down
11 changes: 7 additions & 4 deletions modules/hcp-proxy-ignition.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,18 @@
//
// * hosted_control_planes/hcp-networking.adoc

:_mod-docs-content-type: CONCEPT
:_mod-docs-content-type: REFERENCE
[id="hcp-proxy-ignition_{context}"]
= Compute nodes that need to access an ignition endpoint

When compute nodes need a proxy to access the ignition endpoint, you must configure the proxy in the user-data stub that is configured on the compute node when it is created. For cases where machines need a proxy to access the ignition URL, the proxy configuration is included in the stub.
[role="_abstract"]
When compute nodes need a proxy to access the ignition endpoint, you must configure the proxy in the user-data stub that is configured on the compute node when it is created.

For cases where machines need a proxy to access the ignition URL, the proxy configuration is included in the stub.

The stub resembles the following example:

[source,terminal]
---
----
{"ignition":{"config":{"merge":[{"httpHeaders":[{"name":"Authorization","value":"Bearer ..."},{"name":"TargetConfigVersionHash","value":"a4c1b0dd"}],"source":"https://ignition.controlplanehost.example.com/ignition","verification":{}}],"replace":{"verification":{}}},"proxy":{"httpProxy":"http://proxy.example.org:3128", "httpsProxy":"https://proxy.example.org:3129", "noProxy":"host.example.org"},"security":{"tls":{"certificateAuthorities":[{"source":"...","verification":{}}]}},"timeouts":{},"version":"3.2.0"},"passwd":{},"storage":{},"systemd":{}}
---
----
5 changes: 4 additions & 1 deletion modules/hcp-proxy-mgmt-cluster.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,7 @@
[id="hcp-proxy-mgmt-cluster_{context}"]
= Management clusters that need external access

The HyperShift Operator has a controller that monitors the OpenShift global proxy configuration of the management cluster and sets the proxy environment variables on its own deployment. Control plane deployments that need external access are configured with the proxy environment variables of the management cluster.
[role="_abstract"]
The HyperShift Operator has a controller that monitors the OpenShift global proxy configuration of the management cluster and sets the proxy environment variables on its own deployment.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

🤖 [error] RedHat.TermsErrors: Use 'hosted control planes' rather than 'HyperShift'. For more information, see RedHat.TermsErrors.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Ignoring - this use of HyperShift is correct because it is referring to the HyperShift Operator.


Control plane deployments that need external access are configured with the proxy environment variables of the management cluster.