Skip to content

Commit c955e2c

Browse files
feat: add rancher integration for airgapped environment (#694)
Signed-off-by: PoAn Yang <[email protected]> Co-authored-by: Jillian Maroket <[email protected]>
1 parent d583151 commit c955e2c

File tree

3 files changed

+60
-6
lines changed

3 files changed

+60
-6
lines changed

docs/airgap.md

+21-3
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,30 @@ When the nodes in the cluster do not use a proxy to communicate with each other,
4949

5050
## Guest Cluster Images
5151

52-
All necessary images to install and run Harvester are conveniently packaged into the ISO, eliminating the need to pre-load images on bare-metal nodes. A Harvester cluster manages them independently and effectively behind the scenes.
52+
All necessary images to install and run Harvester are conveniently packaged into the ISO, eliminating the need to pre-load images on bare-metal nodes. A Harvester cluster manages them independently and effectively behind the scenes.
5353

54-
However, it's essential to understand a guest K8s cluster (e.g., RKE2 cluster) created by the [Harvester node driver](./rancher/node/node-driver.md) is a distinct entity from a Harvester cluster. A guest cluster operates within VMs and requires pulling images either from the internet or a [private registry](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/global-default-private-registry#configure-a-private-registry-with-credentials-when-creating-a-cluster).
54+
However, it's essential to understand a guest K8s cluster (e.g., RKE2 cluster) created by the [Harvester node driver](./rancher/node/node-driver.md) is a distinct entity from a Harvester cluster. A guest cluster operates within VMs and requires pulling images either from the internet or a [private registry](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/global-default-private-registry#configure-a-private-registry-with-credentials-when-creating-a-cluster).
5555

5656
If the **Cloud Provider** option is configured to **Harvester** in a guest K8s cluster, it deploys the Harvester cloud provider and Container Storage Interface (CSI) driver.
5757

5858
![cluster-registry](/img/v1.2/cluster-registry.png)
5959

60-
As a result, we recommend monitoring each [RKE2 release](https://github.com/rancher/rke2/releases) in your air gapped environment and pulling the required images into your private registry. Please refer to the **Harvester CCM & CSI Driver** with RKE2 Releases section on the [Harvester support matrix page](https://www.suse.com/suse-harvester/support-matrix/all-supported-versions/harvester-v1-1-2/) for the best Harvester cloud provider and CSI driver capability support.
60+
As a result, we recommend monitoring each [RKE2 release](https://github.com/rancher/rke2/releases) in your air gapped environment and pulling the required images into your private registry. Please refer to the **Harvester CCM & CSI Driver** with RKE2 Releases section on the [Harvester support matrix page](https://www.suse.com/suse-harvester/support-matrix/all-supported-versions/harvester-v1-1-2/) for the best Harvester cloud provider and CSI driver capability support.
61+
62+
## Integrate with an External Rancher
63+
64+
Rancher determines the `rancher-agent` image to be used whenever a Harvester cluster is imported. If the image is not included in the Harvester ISO, it must be pulled from the internet and loaded on each node, or pushed to the Harvester cluster's registry.
65+
66+
```bash
67+
# Run the following commands on a computer that can access both the internet and the Harvester cluster.
68+
docker pull rancher/rancher-agent:<version>
69+
docker save rancher/rancher-agent:<version> -o rancher-agent-<version>.tar
70+
71+
# Copy the image TAR file to the air-gapped environment.
72+
scp rancher-agent-<version>.tar rancher@<harvester-node-ip>:/tmp
73+
74+
# Use SSH to connect to the Harvester node, and then load the image.
75+
ssh rancher@<harvester-node-ip>
76+
sudo -i
77+
docker load -i /tmp/rancher-agent-<version>.tar
78+
```

versioned_docs/version-v1.3/airgap.md

+21-3
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,30 @@ When the nodes in the cluster do not use a proxy to communicate with each other,
4949

5050
## Guest Cluster Images
5151

52-
All necessary images to install and run Harvester are conveniently packaged into the ISO, eliminating the need to pre-load images on bare-metal nodes. A Harvester cluster manages them independently and effectively behind the scenes.
52+
All necessary images to install and run Harvester are conveniently packaged into the ISO, eliminating the need to pre-load images on bare-metal nodes. A Harvester cluster manages them independently and effectively behind the scenes.
5353

54-
However, it's essential to understand a guest K8s cluster (e.g., RKE2 cluster) created by the [Harvester node driver](./rancher/node/node-driver.md) is a distinct entity from a Harvester cluster. A guest cluster operates within VMs and requires pulling images either from the internet or a [private registry](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/global-default-private-registry#configure-a-private-registry-with-credentials-when-creating-a-cluster).
54+
However, it's essential to understand a guest K8s cluster (e.g., RKE2 cluster) created by the [Harvester node driver](./rancher/node/node-driver.md) is a distinct entity from a Harvester cluster. A guest cluster operates within VMs and requires pulling images either from the internet or a [private registry](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/global-default-private-registry#configure-a-private-registry-with-credentials-when-creating-a-cluster).
5555

5656
If the **Cloud Provider** option is configured to **Harvester** in a guest K8s cluster, it deploys the Harvester cloud provider and Container Storage Interface (CSI) driver.
5757

5858
![cluster-registry](/img/v1.2/cluster-registry.png)
5959

60-
As a result, we recommend monitoring each [RKE2 release](https://github.com/rancher/rke2/releases) in your air gapped environment and pulling the required images into your private registry. Please refer to the **Harvester CCM & CSI Driver** with RKE2 Releases section on the [Harvester support matrix page](https://www.suse.com/suse-harvester/support-matrix/all-supported-versions/harvester-v1-1-2/) for the best Harvester cloud provider and CSI driver capability support.
60+
As a result, we recommend monitoring each [RKE2 release](https://github.com/rancher/rke2/releases) in your air gapped environment and pulling the required images into your private registry. Please refer to the **Harvester CCM & CSI Driver** with RKE2 Releases section on the [Harvester support matrix page](https://www.suse.com/suse-harvester/support-matrix/all-supported-versions/harvester-v1-1-2/) for the best Harvester cloud provider and CSI driver capability support.
61+
62+
## Integrate with External Rancher
63+
64+
Rancher determines the `rancher-agent` image to be used whenever a Harvester cluster is imported. If the image is not included in the Harvester ISO, it must be pulled from the internet and loaded on each node, or pushed to the Harvester cluster's registry.
65+
66+
```bash
67+
# Run the following commands on a computer that can access both the internet and the Harvester cluster.
68+
docker pull rancher/rancher-agent:<version>
69+
docker save rancher/rancher-agent:<version> -o rancher-agent-<version>.tar
70+
71+
# Copy the image TAR file to the air-gapped environment.
72+
scp rancher-agent-<version>.tar rancher@<harvester-node-ip>:/tmp
73+
74+
# Use SSH to connect to the Harvester node, and then load the image.
75+
ssh rancher@<harvester-node-ip>
76+
sudo -i
77+
docker load -i /tmp/rancher-agent-<version>.tar
78+
```

versioned_docs/version-v1.4/airgap.md

+18
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,24 @@ If the **Cloud Provider** option is configured to **Harvester** in a guest K8s c
5959

6060
As a result, we recommend monitoring each [RKE2 release](https://github.com/rancher/rke2/releases) in your air gapped environment and pulling the required images into your private registry. Please refer to the **Harvester CCM & CSI Driver** with RKE2 Releases section on the [Harvester support matrix page](https://www.suse.com/suse-harvester/support-matrix/all-supported-versions/harvester-v1-1-2/) for the best Harvester cloud provider and CSI driver capability support.
6161

62+
## Integrate with External Rancher
63+
64+
Rancher determines the `rancher-agent` image to be used whenever a Harvester cluster is imported. If the image is not included in the Harvester ISO, it must be pulled from the internet and loaded on each node, or pushed to the Harvester cluster's registry.
65+
66+
```bash
67+
# Run the following commands on a computer that can access both the internet and the Harvester cluster.
68+
docker pull rancher/rancher-agent:<version>
69+
docker save rancher/rancher-agent:<version> -o rancher-agent-<version>.tar
70+
71+
# Copy the image TAR file to the air-gapped environment.
72+
scp rancher-agent-<version>.tar rancher@<harvester-node-ip>:/tmp
73+
74+
# Use SSH to connect to the Harvester node, and then load the image.
75+
ssh rancher@<harvester-node-ip>
76+
sudo -i
77+
docker load -i /tmp/rancher-agent-<version>.tar
78+
```
79+
6280
## Known issues
6381

6482
---

0 commit comments

Comments
 (0)