1
0
mirror of synced 2025-12-25 02:09:19 -05:00

self-managed docs rewrite (#32605)

This commit is contained in:
Alexandre Cuoci
2023-11-16 18:09:28 -05:00
committed by GitHub
parent b3f474c3ec
commit ddd233bcb3
9 changed files with 142 additions and 53 deletions

View File

@@ -122,41 +122,6 @@ After specifying your own configuration, run the following command:
helm install --values path/to/values.yaml %release_name% airbyte/airbyte
```
### (Early Access) Airbyte Enterprise deployment
[Airbyte Enterprise](/airbyte-enterprise) is in an early access stage for select priority users. Once you [are qualified for an Airbyte Enterprise license key](https://airbyte.com/company/talk-to-sales), you can install Airbyte Enterprise via helm by following these steps:
1. Checkout the latest revision of the [airbyte-platform repository](https://github.com/airbytehq/airbyte-platform)
2. Add your Airbyte Enterprise license key and [auth configuration details](/airbyte-enterprise#single-sign-on-sso) to a file called `airbyte.yml` in the `configs` directory of `airbyte-platform`. You can copy `airbyte.sample.yml` to use as a template:
```sh
cp configs/airbyte.sample.yml configs/airbyte.yml
```
Then, open up `airbyte.yml` in your text editor to fill in the indicated fields.
:::caution
For now, auth configurations aren't easy to modify once initially installed, so please double check them to make sure they're accurate before proceeding! This will be improved in the near future.
:::
3. Make sure your helm repository is up to date:
```text
helm repo update
```
4. Install Airbyte Enterprise on helm using the following command:
```text
./tools/bin/install_airbyte_pro_on_helm.sh
```
The default release name is `airbyte-pro`. You can change this via the `RELEASE_NAME` environment
variable.
## Migrate from old charts to new ones
Starting from `0.39.37-alpha` we've revisited helm charts structure and separated all components of airbyte into their own independent charts, thus by allowing our developers to test single component without deploying airbyte as a whole and by upgrading single component at a time.

View File

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

Before

Width:  |  Height:  |  Size: 151 KiB

After

Width:  |  Height:  |  Size: 151 KiB

View File

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

View File

@@ -0,0 +1,9 @@
# Airbyte Self-Managed
[Airbyte Self-Managed](https://airbyte.com/solutions/airbyte-enterprise) is a self-hosted version of Airbyte with additional features for enterprise customers. Airbyte Enterprise is in an early access stage for select priority users.
A valid license key is required to get started with Airbyte Enterprise. [Talk to sales](https://airbyte.com/company/talk-to-sales) to receive your license key.
The following pages outline how to:
1. [Deploy Airbyte Enterprise using Kubernetes](./implementation-guide.md)
2. [Configure Okta for Single Sign-On (SSO) with Airbyte Enterprise](./sso.md)

View File

@@ -0,0 +1,103 @@
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Implementation Guide
[Airbyte Self-Managed](./README.md) is in an early access stage for select priority users. Once you [are qualified for an Airbyte Self Managed license key](https://airbyte.com/company/talk-to-sales), you can deploy Airbyte with the following instructions.
Airbyte Self Managed must be deployed using Kubernetes. This is to enable Airbyte's best performance and scale. The core components \(api server, scheduler, etc\) run as deployments while the scheduler launches connector-related pods on different nodes.
## Prerequisites
There are three prerequisites to deploying Self-Managed: installing [helm](https://helm.sh/docs/intro/install/), a Kubernetes cluster, and having configured `kubectl` to connect to the cluster.
For production, we recommend deploying to EKS, GKE or AKS. If you are doing some local testing, follow the cluster setup instructions outlined [here](../../deploying-airbyte/on-kubernetes-via-helm.md#cluster-setup).
To install `kubectl`, please follow [these instructions](https://kubernetes.io/docs/tasks/tools/). To configure `kubectl` to connect to your cluster by using `kubectl use-context my-cluster-name`, see the following:
<details>
<summary>Configure kubectl to connect to your cluster</summary>
<Tabs>
<TabItem value="GKE" label="GKE" default>
<ol>
<li>Configure <code>gcloud</code> with <code>gcloud auth login</code>.</li>
<li>On the Google Cloud Console, the cluster page will have a "Connect" button, with a command to run locally: <code>gcloud container clusters get-credentials $CLUSTER_NAME --zone $ZONE_NAME --project $PROJECT_NAME</code></li>
<li>Use <code>kubectl config get-contexts</code> to show the contexts available.</li>
<li>Run <code>kubectl config use-context $GKE_CONTEXT</code> to access the cluster from kubectl.</li>
</ol>
</TabItem>
<TabItem value="EKS" label="EKS">
<ol>
<li><a href="https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html">Configure your AWS CLI</a> to connect to your project.</li>
<li>Install <a href="https://eksctl.io/introduction/">eksctl</a>.</li>
<li>Run <code>eksctl utils write-kubeconfig --cluster=$CLUSTER_NAME</code> to make the context available to kubectl.</li>
<li>Use <code>kubectl config get-contexts</code> to show the contexts available.</li>
<li>Run <code>kubectl config use-context $EKS_CONTEXT</code> to access the cluster with kubectl.</li>
</ol>
</TabItem>
</Tabs>
</details>
## Deploy Airbyte Self-Managed
### Add Airbyte Helm Repository
Follow these instructions to add the Airbyte helm repository:
1. Run `helm repo add airbyte https://airbytehq.github.io/helm-charts`, where `airbyte` is the name of the repository that will be indexed locally.
2. Perform the repo indexing process, and ensure your helm repository is up-to-date by running `helm repo update`.
3. You can then browse all charts uploaded to your repository by running `helm search repo airbyte`.
### Clone & Configure Airbyte
1. `git clone` the latest revision of the [airbyte-platform repository](https://github.com/airbytehq/airbyte-platform)
2. Create a new `airbyte.yml` file in the `configs` directory of the `airbyte-platform` folder. You may also copy `airbyte.sample.yml` to use as a template:
```sh
cp configs/airbyte.sample.yml configs/airbyte.yml
```
3. Add your Airbyte Enterprise license key to your `airbyte.yml`.
4. Add your [auth details](/airbyte-enterprise#single-sign-on-sso) to your `airbyte.yml`. Auth configurations aren't easy to modify after Airbyte is installed, so please double check them to make sure they're accurate before proceeding.
<details>
<summary>Configuring auth in your airbyte.yml file</summary>
To configure SSO with Okta, add the following at the end of your `airbyte.yml` file:
```
auth:
identity-providers:
- type: okta
domain: $OKTA_DOMAIN
app-name: $OKTA_APP_INTEGRATION_NAME
client-id: $OKTA_CLIENT_ID
client-secret: $OKTA_CLIENT_SECRET
```
To configure basic auth (deploy without SSO), remove the entire `auth:` section from your airbyte.yml config file. You will authenticate with the instance admin user and password included in the your `airbyte.yml`.
</details>
### Install Airbyte Self Managed
Install Airbyte Enterprise on helm using the following command:
```text
./tools/bin/install_airbyte_pro_on_helm.sh
```
The default release name is `airbyte-pro`. You can change this via the `RELEASE_NAME` environment
variable.
### Customizing your Airbyte Self Managed Deployment
In order to customize your deployment, you need to create `values.yaml` file in a local folder and populate it with default configuration override values. A `values.yaml` example can be located in [charts/airbyte](https://github.com/airbytehq/airbyte-platform/blob/main/charts/airbyte/values.yaml) folder of the Airbyte repository.
After specifying your own configuration, run the following command:
```text
./tools/bin/install_airbyte_pro_on_helm.sh --values path/to/values.yaml $RELEASE_NAME airbyte/airbyte
```

View File

@@ -1,14 +1,12 @@
# Airbyte Enterprise
# Using Single Sign-On (SSO)
[Airbyte Enterprise](https://airbyte.com/solutions/airbyte-enterprise) is a self-managed version of Airbyte with additional features for enterprise customers. Airbyte Enterprise is in an early access stage for select priority users. A valid license key is required to get started with Airbyte Enterprise. [Talk to sales](https://airbyte.com/company/talk-to-sales) to receive your license key.
Leverage your existing identity provider to enable employees to access your Airbyte instance using their corporate credentials, simplifying user provisioning. Enabling Single Sign-On extends Airbyte Self Managed to support multiple users, and multiple teams all on one instance.
The following instructions outline how to:
1. Configure Okta for Single Sign-On (SSO) with Airbyte Enterprise
2. Deploy Airbyte Enterprise using Kubernetes (License Key Required)
Airbyte Self Managed currently supports SSO via OIDC with [Okta](https://www.okta.com/) as an IdP. Support for Azure Active Directory and connecting via SAML are both coming soon. Please talk to us to learn more about upcoming [enterprise features](https://airbyte.com/company/talk-to-sales).
## Single Sign-On (SSO)
Airbyte Enterprise supports Single Sign-On, allowing an organization to manage user access to their Airbyte Enterprise instance through the configuration of an Identity Provider (IdP). Airbyte Enterprise currently supports SSO via OIDC with [Okta](https://www.okta.com/) as an IdP.
The following instructions walk you through:
1. [Setting up the Okta OIDC App Integration to be used by your Airbyte instance](#setting-up-okta-for-sso)
2. [Configuring Airbyte Self-Managed to use SSO](#deploying-airbyte-enterprise-with-okta)
### Setting up Okta for SSO
@@ -16,13 +14,13 @@ You will need to create a new Okta OIDC App Integration for your Airbyte instanc
You should create an app integration with **OIDC - OpenID Connect** as the sign-in method and **Web Application** as the application type:
![Screenshot of Okta app integration creation modal](./assets/docs/okta-create-new-app-integration.png)
![Screenshot of Okta app integration creation modal](../assets/okta-create-new-app-integration.png)
#### App integration name
Please choose a URL-friendly app integraiton name without spaces or special characters, such as `my-airbyte-app`:
![Screenshot of Okta app integration name](./assets/docs/okta-app-integration-name.png)
![Screenshot of Okta app integration name](../assets/okta-app-integration-name.png)
Spaces or special characters in this field could result in invalid redirect URIs.
@@ -42,13 +40,14 @@ Sign-out redirect URIs
<your-airbyte-domain>/auth/realms/airbyte/broker/<app-integration-name>/endpoint/logout_response
```
![Okta app integration name screenshot](./assets/docs/okta-login-redirect-uris.png)
![Okta app integration name screenshot](../assets/okta-login-redirect-uris.png)
_Example values_
`<your-airbyte-domain>` should point to where your Airbyte instance will be available, including the http/https protocol.
## Deploying Airbyte Enterprise with Okta
## Deploying Airbyte Self-Managed with Okta
Once your Okta app is set up, you're ready to deploy Airbyte with SSO. Take note of the following configuration values, as you will need them to configure Airbyte to use your new Okta SSO app integration:
@@ -57,4 +56,4 @@ Once your Okta app is set up, you're ready to deploy Airbyte with SSO. Take note
- Client ID
- Client Secret
Visit [Airbyte Enterprise deployment](/deploying-airbyte/on-kubernetes-via-helm#early-access-airbyte-enterprise-deployment) for instructions on how to deploy Airbyte Enterprise using `kubernetes`, `kubectl` and `helm`.
Visit the [implementation guide](./implementation-guide.md) for instructions on how to deploy Airbyte Enterprise using `kubernetes`, `kubectl` and `helm`.

View File

@@ -1,6 +1,8 @@
# A list of URLs that should be redirected to new pathes
- from: /airbyte-pro
to: /airbyte-enterprise
to: /enterprise-setup/self-managed/
- from: /airbyte-enterprise
to: /enterprise-setup/self-managed/
- from: /upgrading-airbyte
to: /operator-guides/upgrading-airbyte
- from: /catalog

View File

@@ -418,6 +418,19 @@ const deployAirbyte = {
],
};
const airbyteSelfManaged = {
type: "category",
label: "Airbyte Self Managed",
link: {
type: "doc",
id: "enterprise-setup/self-managed/README",
},
items: [
"enterprise-setup/self-managed/implementation-guide",
"enterprise-setup/self-managed/sso",
]
}
const operatorGuide = {
type: "category",
label: "Manage Airbyte",
@@ -518,10 +531,8 @@ module.exports = {
type: "doc",
id: "troubleshooting",
},
{
type: "doc",
id: "airbyte-enterprise",
},
sectionHeader("Enterprise Setup"),
airbyteSelfManaged,
sectionHeader("Developer Guides"),
{
type: "doc",