Skip to content
Merged
Show file tree
Hide file tree
Changes from 9 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
4 changes: 4 additions & 0 deletions docs/enterprise/installing-embedded-air-gap.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,10 @@ To install with Embedded Cluster in an air gap environment:
sudo ./APP_SLUG install --license license.yaml --airgap-bundle APP_SLUG.airgap
```
Where `APP_SLUG` is the unique application slug.

:::note
Embedded Cluster supports installation options such as installing behind proxy and changing the data directory used by Embedded Cluster. For the list of flags supported with the Embedded Cluster `install` command, see [Embedded Cluster Install Command Options](/reference/embedded-cluster-install).
:::

1. When prompted, enter a password for accessing the KOTS Admin Console.

Expand Down
4 changes: 4 additions & 0 deletions docs/enterprise/installing-embedded.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,10 @@ To install an application with Embedded Cluster:
Where:
* `APP_SLUG` is the unique slug for the application.
* `LICENSE_FILE` is the customer license.
<br/>
:::note
Embedded Cluster supports installation options such as installing behind proxy and changing the data directory used by Embedded Cluster. For the list of flags supported with the Embedded Cluster `install` command, see [Embedded Cluster Install Command Options](/reference/embedded-cluster-install).
:::

1. When prompted, enter a password for accessing the KOTS Admin Console.

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
**Limitations:**

* If any of your [Helm extensions](/reference/embedded-config#extensions) make requests to the internet, the given charts need to be manually configured so that those requests are made to the user-supplied proxy server instead. Typically, this requires updating the Helm values to set HTTP proxy, HTTPS proxy, and no proxy. Note that this limitation applies only to network requests made by your Helm extensions. The proxy settings supplied to the install command are used to pull the containers required to run your Helm extensions.

* Proxy settings cannot be changed after installation or during upgrade.
1 change: 1 addition & 0 deletions docs/partials/embedded-cluster/_proxy-install-reqs.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
**Requirement:** Proxy installations require Embedded Cluster 1.5.1 or later with Kubernetes 1.29 or later.
137 changes: 137 additions & 0 deletions docs/reference/embedded-cluster-install.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
import ProxyLimitations from "../partials/embedded-cluster/_proxy-install-limitations.mdx"
import ProxyRequirements from "../partials/embedded-cluster/_proxy-install-reqs.mdx"


# Embedded Cluster Install Command Options

This topic describes the options available with the Embedded Cluster install command. For more information about how to install with Embedded Cluster, see [Online Installation with Embedded Cluster](/enterprise/installing-embedded) or [Air Gap Installation with Embedded Cluster](/enterprise/installing-embedded).

## Usage

```bash
sudo ./APP_SLUG install --license LICENSE_FILE [flags]
```
* `APP_SLUG` is the unique application slug
* `LICENSE_FILE` is the customer's license

## Flags

<table>
<tr>
<th width="35%">Flag</th>
<th width="65%">Description</th>
</tr>
<tr>
<td>`--admin-console-port`</td>
<td>
<p>Port on which to run the KOTS Admin Console. **Default**: By default, the Admin Console runs on port 30000.</p>
<p>**Limitation:** It is not possible to change the port for the Admin Console during a restore with Embedded Cluster. For more information, see [Disaster Recovery for Embedded Cluster (Alpha)](/vendor/embedded-disaster-recovery).</p>
</td>
</tr>
<tr>
<td>`--airgap-bundle`</td>
<td>The Embedded Cluster air gap bundle used for installations in air-gapped environments with no outbound internet access. For information about how to install in an air-gapped environment, see [Air Gap Installation with Embedded Cluster](/enterprise/installing-embedded-air-gap).</td>
</tr>
<tr>
<td>`--data-dir`</td>
<td>
<p>The data directory used by Embedded Cluster. **Default**: `/var/lib/embedded-cluster`</p>
<p>**Limitations:**</p>
<ul>
<li>The data directory for Embedded Cluster cannot be changed after the cluster is installed.</li>
<li>If you use the `--data-dir` flag to change the data directory during installation, then you must use the same location when restoring in a disaster recovery scenario. For more information about disaster recovery with Embedded Cluster, see [Disaster Recovery for Embedded Cluster](/vendor/embedded-disaster-recovery).</li>
<li>Replicated does not support using symlinks for the Embedded Cluster data directory. Use the `--data-dir` flag instead of symlinking `/var/lib/embedded-cluster`.</li>
</ul>
</td>
</tr>
<tr>
<td>`--http-proxy`</td>
<td>
<p>Proxy server to use for HTTP.</p>
<ProxyRequirements/>
<ProxyLimitations/>
</td>
</tr>
<tr>
<td>`--https-proxy`</td>
<td>
<p>Proxy server to use for HTTPS.</p>
<ProxyRequirements/>
<ProxyLimitations/>
</td>
</tr>
<tr>
<td>`--local-artifact-mirror-port`</td>
<td>
<p>Port on which to run the Local Artifact Mirror (LAM). **Default**: By default, the LAM runs on port 50000.</p>
</td>
</tr>
<tr>
<td>`--no-proxy`</td>
<td>
<p>Comma-separated list of hosts for which not to use a proxy.</p>
<p>For single-node installations, pass the IP address of the node where you are installing. For multi-node installations, when deploying the first node, pass the list of IP addresses for all nodes in the cluster (typically in CIDR notation).</p>
<p>The following are never proxied:</p>
<ul>
<li>Internal cluster communication (`localhost`, `127.0.0.1`, `.cluster.local`, `.svc`)</li>
<li>The CIDRs used for assigning IPs to Kubernetes Pods and Services. By default, the Pod CIDR is `10.244.0.0/16` and the Service CIDR `10.96.0.0/12`. For information about how to change these defaults, see [Set IP Address Ranges for Pods and Services](#set-ip-address-ranges-for-pods-and-services).</li>
</ul>
<p>To ensure your app's internal cluster communication is not proxied, use fully qualified domain names like `my-service.my-namespace.svc` or `my-service.my-namespace.svc.cluster.local`.</p>
<ProxyRequirements/>
<ProxyLimitations/>
</td>
</tr>
<tr>
<td>`--pod-cidr`</td>
<td>
<p>The range of IP addresses that can be assigned to Pods, in CIDR notation. **Default:** By default, the Pod CIDR is `10.244.0.0/16`.</p>
<p>**Limitation:** The `--pod-cidr` flag is not supported on Red Hat Enterprise Linux (RHEL) 9 operating systems.</p>
</td>
</tr>
<tr>
<td>`--service-cidr`</td>
<td>
<p>The range of IP addresses that can be assigned to Services, in CIDR notation. **Default:** By default, the Service CIDR is `10.96.0.0/12`.</p>
<p>**Limitation:** The `--service-cidr` flags is not supported on Red Hat Enterprise Linux (RHEL) 9 operating systems.</p>
</td>
</tr>
</table>

## Examples

### Air Gap Install

```bash
sudo ./myapp install --license license.yaml --airgap-bundle myapp.airgap
```

### Change the Admin Console and LAM Ports

```bash
install --admin-console-port=20000 --local-artifact-mirror-port=40000
```

### Change the Data Directory

```bash
sudo ./my-app install --license license.yaml --data-dir /data/embedded-cluster
```

### Install Behind a Proxy

```bash
sudo ./APP_SLUG install --license LICENSE_FILE \
--http-proxy=HOST:PORT \
--https-proxy=HOST:PORT \
--no-proxy=LIST_OF_HOSTS
```
Where:

* `HOST:PORT` is the host and port of the proxy server
* `LIST_OF_HOSTS` is the list of hosts to not proxy. For example, the IP address of the node where you are installing. Or, for multi-node clusters, the list of IP addresses for all nodes in the cluster, typically in CIDR notation.

### Set IP Address Range for Pods

```bash
sudo ./my-app install --license license.yaml --pod-cidr 172.16.136.0/16
```
1 change: 1 addition & 0 deletions sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -348,6 +348,7 @@ const sidebars = {
items: [
'enterprise/installing-embedded',
'enterprise/installing-embedded-air-gap',
'reference/embedded-cluster-install',
],
},
{
Expand Down