Skip to content
Merged
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
2 changes: 1 addition & 1 deletion app/_how-tos/operator-get-started-hybrid-create-route.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ content_type: how_to
permalink: /operator/dataplanes/get-started/hybrid/create-route/
series:
id: operator-get-started-hybrid
position: 3
position: 4

breadcrumbs:
- /operator/
Expand Down
50 changes: 5 additions & 45 deletions app/_how-tos/operator-get-started-hybrid-deploy-dataplane.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
---
title: Deploy a DataPlane
description: "Deploy a DataPlane using {{ site.operator_product_name }}."
title: Deploy a data plane
description: "Deploy a data plane using {{ site.operator_product_name }}."
content_type: how_to

permalink: /operator/dataplanes/get-started/hybrid/deploy-dataplane/
series:
id: operator-get-started-hybrid
position: 2
position: 3

breadcrumbs:
- /operator/
Expand All @@ -25,55 +25,15 @@ works_on:
entities: []

tldr:
q: How can I deploy a DataPlane with {{ site.operator_product_name }}?
q: How can I deploy a data plane with {{ site.operator_product_name }}?
a: Create a `DataPlane` object and use the `KonnectExtension` reference.

prereqs:
show_works_on: true
skip_product: true
operator:
konnect:
auth: true
control_plane: true
konnectextension: true

---

{:data-deployment-topology='konnect'}
## Create the DataPlane

Configure a Kong `DataPlane` by using your `KonnectExtension` reference:

```bash
echo '
apiVersion: gateway-operator.konghq.com/v1beta1
kind: DataPlane
metadata:
name: dataplane-example
namespace: kong
spec:
extensions:
- kind: KonnectExtension
name: my-konnect-config
group: konnect.konghq.com
deployment:
podTemplateSpec:
spec:
containers:
- name: proxy
image: kong/kong-gateway:{{ site.data.gateway_latest.release }}
' | kubectl apply -f -
```

## Check the Ready status

<!-- vale off -->
{% validation kubernetes-resource %}
kind: DataPlane
name: dataplane-example
conditionType: Ready
reason: Ready
{% endvalidation %}
<!-- vale on -->

If the `DataPlane` has `Ready` condition set to `True` then you can visit {{site.konnect_short_name}} and see the dataplane in the list of connected Data Planes for your Control Plane.
{% include /how-tos/steps/operator-hybrid-data-plane.md %}
21 changes: 4 additions & 17 deletions app/_how-tos/operator-get-started-hybrid-install.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Install {{ site.operator_product_name }} in {{ site.konnect_short_name }} hybrid mode
description: "Learn how to install {{ site.operator_product_name }} in Konnect hybrid mode using Helm"
description: "Learn how to install {{ site.operator_product_name }} in {{ site.konnect_short_name }} hybrid mode using Helm"
content_type: how_to

permalink: /operator/dataplanes/get-started/hybrid/install/
Expand All @@ -23,7 +23,7 @@ works_on:
- konnect

min_version:
kgo: '1.6.1'
operator: '1.6.1'


entities: []
Expand All @@ -41,19 +41,7 @@ tags:
- helm
---

{% assign gwapi_version = "1.3.0" %}

## Deploying Data Planes

{{ site.operator_product_name }} can deploy and manage Data Planes attached to a {{ site.konnect_short_name }} Control Plane. All the Services, Routes, and plugins are configured in {{ site.konnect_short_name }} and sent to the Data Planes automatically.

## Install CRDs

If you want to use Gateway API resources, run this command:

```shell
kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v{{ gwapi_version }}/standard-install.yaml
```
{{ site.operator_product_name }} can deploy and manage data planes attached to a {{ site.konnect_short_name }} control plane. All the Services, Routes, and plugins are configured in {{ site.konnect_short_name }} and sent to the data planes automatically.

## Install {{ site.operator_product_name }}

Expand All @@ -65,5 +53,4 @@ Wait for {{ site.operator_product_name }} to be ready

{% include prereqs/products/operator-validate-deployment.md %}

Once the `kong-operator-kong-operator-controller-manager` deployment is ready, you can deploy a `DataPlane` resource that is attached to a {{ site.konnect_short_name }} Gateway Control Plane.
You can use [this guide](/operator/dataplanes/konnectextension/#konnect-control-plane-reference) to learn more about how to do this.
Once the `kong-operator-kong-operator-controller-manager` deployment is ready, you can deploy a `DataPlane` resource that is attached to a {{ site.konnect_short_name }} Gateway control plane.
18 changes: 14 additions & 4 deletions app/_how-tos/operator-konnect-control-plane.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Create a Control Plane
description: "Create a Hybrid mode Control Plane in {{ site.konnect_short_name }}"
title: Create a control plane
description: "Create a Hybrid mode control plane in {{ site.konnect_short_name }}"
content_type: how_to

permalink: /operator/konnect/crd/control-planes/hybrid/
Expand All @@ -12,6 +12,10 @@ breadcrumbs:
group: Konnect
section: "Konnect CRDs: Control Planes"

series:
id: operator-get-started-hybrid
position: 2

products:
- operator

Expand All @@ -24,10 +28,12 @@ tags:
- konnect-crd

tldr:
q: How do I create a Hybrid mode Control Plane in {{ site.konnect_short_name }}?
q: How do I create a Hybrid mode control plane in {{ site.konnect_short_name }}?
a: Create a `KonnectGatewayControlPlane` object and add {{ site.konnect_short_name }} authentication.

prereqs:
show_works_on: true
skip_product: true
operator:
konnect:
auth: true
Expand All @@ -53,7 +59,11 @@ spec:
{% endkonnect_crd %}
<!-- vale on -->

## Validation

{:.info}
> Make sure that the `KonnectGatewayControlPlane` resource is in the same namespace as the `KonnectAPIAuthConfiguration` resource.

## Validate

<!-- vale off -->
{% validation kubernetes-resource %}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ entities: []

prereqs:
skip_product: true
show_works_on: true

---

Expand Down
27 changes: 14 additions & 13 deletions app/_how-tos/operator-konnect-getstarted-controlplane.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Create a Control Plane
description: Define a Konnect Gateway Control Plane and bind it to your cluster using a `KonnectExtension`.
title: Create a control plane
description: Define a {{site.konnect_short_name}} Gateway control plane and bind it to your cluster using a `KonnectExtension`.
content_type: how_to
permalink: /operator/konnect/get-started/control-plane/
breadcrumbs:
Expand All @@ -16,31 +16,29 @@ series:
position: 3

tldr:
q: How do I create a Control Plane
q: How do I create a control plane?
a: |
Define a `KonnectGatewayControlPlane` to point to your Konnect instance, and a `KonnectExtension` to bind your Data Plane or Gateway to it.
Define a `KonnectGatewayControlPlane` to point to your {{site.konnect_short_name}} instance, and a `KonnectExtension` to bind your Data Plane or Gateway to it.

products:
- operator

works_on:
- konnect

entities: []

related_resources:
- text: Deploy a DataPlane
- text: Deploy a data plane
url: /operator/dataplanes/get-started/hybrid/deploy-dataplane/

---

## Create a `KonnectGatewayControlPlane`

Use the `KonnectGatewayControlPlane` resource to define the {{site.konnect_short_name}} Control Plane that your CRDs will target. This enables your cluster to send configuration to Konnect.
Use the `KonnectGatewayControlPlane` resource to define the {{site.konnect_short_name}} Control Plane that your CRDs will target. This enables your cluster to send configuration to {{site.konnect_short_name}}.

A `KonnectAPIAuthConfiguration` must already exist to authenticate with the Konnect API. If you haven’t created one yet, see [Create API Authentication](/operator/konnect/get-started/authentication/).
A `KonnectAPIAuthConfiguration` must already exist to authenticate with the {{site.konnect_short_name}} API. If you haven’t created one yet, see [Create API Authentication](/operator/konnect/get-started/authentication/).

Apply the following configuration to define a Control Plane named `gateway-control-plane`:
Apply the following configuration to define a control plane named `gateway-control-plane`:


<!-- vale off -->
Expand All @@ -58,12 +56,15 @@ spec:
{% endkonnect_crd %}
<!-- vale on -->

This resource links your cluster to a specific Control Plane instance in {{site.konnect_short_name}} using the credentials provided in `konnect-api-auth`.
This resource links your cluster to a specific control plane instance in {{site.konnect_short_name}} using the credentials provided in `konnect-api-auth`.

{:.info}
> Make sure that the `KonnectGatewayControlPlane` resource is in the same namespace as the `KonnectAPIAuthConfiguration` resource.


## Bind the Control Plane using a `KonnectExtension`
## Bind the control plane using a `KonnectExtension`

To finalize the connection between your cluster and the {{site.konnect_short_name}} control plane, create a `KonnectExtension` object. This resource binds your local Gateway or Data Plane to the {{site.konnect_short_name}} control plane you've defined.
To finalize the connection between your cluster and the {{site.konnect_short_name}} control plane, create a `KonnectExtension` object. This resource binds your local Gateway or data plane to the {{site.konnect_short_name}} control plane you've defined.

<!-- vale off -->
{% konnect_crd %}
Expand Down
35 changes: 35 additions & 0 deletions app/_how-tos/operator-konnect-getstarted-dataplane.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
title: Deploy a data plane
description: "Deploy a data plane using {{ site.operator_product_name }}."
content_type: how_to

permalink: /operator/konnect/get-started/data-plane/
series:
id: operator-konnectcrds-get-started
position: 4

breadcrumbs:
- /operator/
- index: operator
group: Gateway Deployment
- index: operator
group: Gateway Deployment
section: "Get Started"

products:
- operator

works_on:
- konnect

entities: []

tldr:
q: How can I deploy a data plane with {{ site.operator_product_name }}?
a: Create a `DataPlane` object and use the `KonnectExtension` reference.

prereqs:
skip_product: true
---

{% include /how-tos/steps/operator-hybrid-data-plane.md %}
16 changes: 5 additions & 11 deletions app/_how-tos/operator-konnect-getstarted-install.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,6 @@ products:
works_on:
- konnect

entities: []

prereqs:
skip_product: true

Expand All @@ -35,9 +33,7 @@ tags:
- helm
---

## Install {{site.operator_product_name}}

The {{site.operator_product_name}} can deploy and manage Data Planes connected to a {{ site.konnect_short_name }} Control Plane. Configuration for services, routes, and plugins is managed entirely through {{site.konnect_short_name}} and propagated automatically to Data Planes.
{{site.operator_product_name}} can deploy and manage data planes connected to a {{ site.konnect_short_name }} control plane. Configuration for Services, Routes, and plugins is managed entirely through {{site.konnect_short_name}} and propagated automatically to data planes.

## Create the `kong` namespace

Expand All @@ -47,16 +43,14 @@ Create the `kong` namespace in your Kubernetes cluster, which is where the Getti
kubectl create namespace kong
```

## Install the Operator

{% include prereqs/products/operator.md raw=true v_maj=1 %}
## Install {{site.operator_product_name}}

{% include k8s/cert-manager.md %}
{% include prereqs/products/operator.md raw=true v_maj=2 %}

### Wait for readiness

Wait for the {{site.operator_product_name}}'s controller deployment to become available before proceeding, ensuring it’s ready to manage resources:
Wait for {{site.operator_product_name}}'s controller deployment to become available before proceeding, ensuring it’s ready to manage resources:

{% include prereqs/products/operator-validate-deployment.md %}

Once the {{site.operator_product_name}} is ready, you can begin provisioning Gateway Control Planes and Data Planes using {{site.konnect_short_name}} CRDs.
Once the {{site.operator_product_name}} is ready, you can begin provisioning Gateway control planes and data planes using {{site.konnect_short_name}} CRDs.
34 changes: 17 additions & 17 deletions app/_how-tos/operator-konnect-getstarted-key-auth.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: Key Authentication
title: Enable Key Authentication
description: Secure an API using the `key-auth` plugin and credentials from a `KongConsumer`.
content_type: how_to
permalink: /operator/konnect/get-started/key-authentication/
Expand All @@ -13,7 +13,7 @@ breadcrumbs:

series:
id: operator-konnectcrds-get-started
position: 7
position: 8

tldr:
q: How do I secure an API with key authentication using {{site.konnect_short_name}} CRDs?
Expand All @@ -29,7 +29,6 @@ tools:
works_on:
- konnect

entities: []
next_steps:
- text: See the Custom resource definitions (CRDs) reference
url: /operator/reference/custom-resources/
Expand Down Expand Up @@ -83,19 +82,20 @@ Keys are stored as Kubernetes `Secrets` and Consumers are managed with the `Kong

1. Create a new `Secret` labeled to use `key-auth` credential type:

```bash
echo '
apiVersion: v1
kind: Secret
metadata:
name: alex-key-auth
namespace: kong
labels:
konghq.com/credential: key-auth
stringData:
key: hello_world
' | kubectl apply -f -
```
```bash
echo '
apiVersion: v1
kind: Secret
metadata:
name: alex-key-auth
namespace: kong
labels:
konghq.com/credential: key-auth
konghq.com/secret: "true"
stringData:
key: hello_world
' | kubectl apply -f -
```

1. Create a new Consumer and attach the credential:

Expand Down Expand Up @@ -125,4 +125,4 @@ konnect_url: $PROXY_IP
on_prem_url: $PROXY_IP
{% endvalidation %}

The results will return successfully.
The request should be successful.
Loading
Loading