Skip to content

Commit

Permalink
feat: breakout the routes into independent files
Browse files Browse the repository at this point in the history
This change documents all of our example custom routes.

Signed-off-by: Kevin Carter <[email protected]>
  • Loading branch information
cloudnull committed Aug 12, 2024
1 parent 7f98ae2 commit c4708aa
Show file tree
Hide file tree
Showing 26 changed files with 701 additions and 319 deletions.
16 changes: 10 additions & 6 deletions docs/infrastructure-gateway-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -185,21 +185,25 @@ kubectl patch -n nginx-gateway gateway flex-gateway \
Another example with most of the OpenStack services is located at `/etc/genestack/gateway-api/gateway-routes.yaml`. Similarly, you must modify
and apply them as shown below, or apply your own.

??? example "An example routes file you can modify to include your own domain name can be found at `/etc/genestack/gateway-api/gateway-routes.yaml`"
??? example "Example routes file"

``` yaml
--8<-- "etc/gateway-api/gateway-routes.yaml"
--8<-- "etc/gateway-api/routes/http-wildcard-listener.yaml"
```

!!! example "Example modifying the Gateway routes"
All routes can be found at `/etc/genestack/gateway-api/routes`.

!!! example "Example modifying all available Gateway routes with `your.domain.tld`"

``` shell
mkdir -p /etc/genestack/gateway-api
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' /opt/genestack/etc/gateway-api/gateway-routes.yaml > /etc/genestack/gateway-api/gateway-routes.yaml
mkdir -p /etc/genestack/gateway-api/routes
for route in $(ls -1 /opt/genestack/etc/gateway-api/routes); do
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' /opt/genestack/etc/gateway-api/routes/$route > /etc/genestack/gateway-api/routes/$route
done
```

``` shell
kubectl apply -f /etc/genestack/gateway-api/gateway-routes.yaml
kubectl apply -f /etc/genestack/gateway-api/routes
```

## Patch Gateway with Let's Encrypt Cluster Issuer
Expand Down
30 changes: 30 additions & 0 deletions docs/openstack-barbican.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,3 +50,33 @@ helm upgrade --install barbican ./barbican \

You may need to provide custom values to configure your openstack services, for a simple single region or lab deployment you can supply an additional overrides flag using the example found at `base-helm-configs/aio-example-openstack-overrides.yaml`.
In other cases such as a multi-region deployment you may want to view the [Multi-Region Support](multi-region-support.md) guide to for a workflow solution.

### Custom Routes

!!! note "This step is not needed if all routes were applied when the Gateway API was deployed"

A custom gateway route can be used when setting up the service. The custom route make it possible to for a domain like `your.domain.tld` to be used for the service.

??? example "Example routes file found in `/opt/genestack/etc/gateway-api/routes`"

``` yaml
--8<-- "etc/gateway-api/routes/custom-barbican-gateway-route.yaml"
```

#### Modify the Route

This example changes the placeholder domain to `<YOUR_DOMAIN>`. Review the [gateway route documentation](https://gateway-api.sigs.k8s.io/api-types/httproute)
for more information on route types.

``` shell
mkdir -p /etc/genestack/gateway-api/routes
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' \
/opt/genestack/etc/gateway-api/routes/custom-barbican-gateway-route.yaml \
> /etc/genestack/gateway-api/routes/custom-barbican-gateway-route.yaml
```

### Apply the Route

``` shell
kubectl --namespace openstack apply -f /etc/gateway-api/routes/custom-barbican-gateway-route.yaml
```
32 changes: 32 additions & 0 deletions docs/openstack-cinder.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,38 @@ helm upgrade --install cinder ./cinder \
You may need to provide custom values to configure your openstack services, for a simple single region or lab deployment you can supply an additional overrides flag using the example found at `base-helm-configs/aio-example-openstack-overrides.yaml`.
In other cases such as a multi-region deployment you may want to view the [Multi-Region Support](multi-region-support.md) guide to for a workflow solution.

### Custom Routes

!!! note "This step is not needed if all routes were applied when the Gateway API was deployed"

A custom gateway route can be used when setting up the service. The custom route make it possible to for a domain like `your.domain.tld` to be used for the service.

??? example "Example routes file found in `/opt/genestack/etc/gateway-api/routes`"

``` yaml
--8<-- "etc/gateway-api/routes/custom-cinder-gateway-route.yaml"
```

#### Modify the Route

This example changes the placeholder domain to `<YOUR_DOMAIN>`. Review the [gateway route documentation](https://gateway-api.sigs.k8s.io/api-types/httproute)
for more information on route types.

``` shell
mkdir -p /etc/genestack/gateway-api/routes
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' \
/opt/genestack/etc/gateway-api/routes/custom-cinder-gateway-route.yaml \
> /etc/genestack/gateway-api/routes/custom-cinder-gateway-route.yaml
```

### Apply the Route

``` shell
kubectl --namespace openstack apply -f /etc/gateway-api/routes/custom-cinder-gateway-route.yaml
```

## Post Deployment

Once the helm deployment is complete cinder and all of it's API services will be online. However, using this setup there will be
no volume node at this point. The reason volume deployments have been disabled is because we didn't expose ceph to the openstack
environment and OSH makes a lot of ceph related assumptions. For testing purposes we're wanting to run with the logical volume
Expand Down
122 changes: 122 additions & 0 deletions docs/openstack-compute-kit.md
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,36 @@ helm upgrade --install placement ./placement --namespace=openstack \
--post-renderer-args placement/base
```

### Custom Placement Routes

!!! note "This step is not needed if all routes were applied when the Gateway API was deployed"

A custom gateway route can be used when setting up the service. The custom route make it possible to for a domain like `your.domain.tld` to be used for the service.

??? example "Example routes file found in `/opt/genestack/etc/gateway-api/routes`"

``` yaml
--8<-- "etc/gateway-api/routes/custom-placement-gateway-route.yaml"
```

#### Modify the Placement Route

This example changes the placeholder domain to `<YOUR_DOMAIN>`. Review the [gateway route documentation](https://gateway-api.sigs.k8s.io/api-types/httproute)
for more information on route types.

``` shell
mkdir -p /etc/genestack/gateway-api/routes
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' \
/opt/genestack/etc/gateway-api/routes/custom-placement-gateway-route.yaml \
> /etc/genestack/gateway-api/routes/custom-placement-gateway-route.yaml
```

### Apply the Placement Route

``` shell
kubectl --namespace openstack apply -f /etc/gateway-api/routes/custom-placement-gateway-route.yaml
```

## Deploy Nova

``` shell
Expand Down Expand Up @@ -173,6 +203,68 @@ If running in an environment that doesn't have hardware virtualization extension
You may need to provide custom values to configure your openstack services, for a simple single region or lab deployment you can supply an additional overrides flag using the example found at `base-helm-configs/aio-example-openstack-overrides.yaml`.
In other cases such as a multi-region deployment you may want to view the [Multi-Region Support](multi-region-support.md) guide to for a workflow solution.

### Custom Nova Routes

!!! note "This step is not needed if all routes were applied when the Gateway API was deployed"

A custom gateway route can be used when setting up the service. The custom route make it possible to for a domain like `your.domain.tld` to be used for the service.

??? example "Example routes file found in `/opt/genestack/etc/gateway-api/routes`"

``` yaml
--8<-- "etc/gateway-api/routes/custom-nova-gateway-route.yaml"
```

#### Modify the Nova Routes

This example changes the placeholder domain to `<YOUR_DOMAIN>`. Review the [gateway route documentation](https://gateway-api.sigs.k8s.io/api-types/httproute)
for more information on route types.

##### Nova Route

``` shell
mkdir -p /etc/genestack/gateway-api/routes
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' \
/opt/genestack/etc/gateway-api/routes/custom-nova-gateway-route.yaml \
> /etc/genestack/gateway-api/routes/custom-nova-gateway-route.yaml
```

##### Novnc Route

``` shell
mkdir -p /etc/genestack/gateway-api/routes
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' \
/opt/genestack/etc/gateway-api/routes/custom-novnc-gateway-route.yaml \
> /etc/genestack/gateway-api/routes/custom-novnc-gateway-route.yaml
```

##### Metadata Route

``` shell
mkdir -p /etc/genestack/gateway-api/routes
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' \
/opt/genestack/etc/gateway-api/routes/custom-metadata-gateway-route.yaml \
> /etc/genestack/gateway-api/routes/custom-metadata-gateway-route.yaml
```

#### Apply the Nova Route

``` shell
kubectl --namespace openstack apply -f /etc/gateway-api/routes/custom-nova-gateway-route.yaml
```

#### Apply the Novnc Route

``` shell
kubectl --namespace openstack apply -f /etc/gateway-api/routes/custom-novnc-gateway-route.yaml
```

#### Apply the Metadata Route

``` shell
kubectl --namespace openstack apply -f /etc/gateway-api/routes/custom-metadata-gateway-route.yaml
```

## Deploy Neutron

``` shell
Expand Down Expand Up @@ -212,6 +304,36 @@ helm upgrade --install neutron ./neutron \

The above command derives the OVN north/south bound database from our K8S environment. The insert `set` is making the assumption we're using **tcp** to connect.

### Custom Neutron Routes

!!! note "This step is not needed if all routes were applied when the Gateway API was deployed"

A custom gateway route can be used when setting up the service. The custom route make it possible to for a domain like `your.domain.tld` to be used for the service.

??? example "Example routes file found in `/opt/genestack/etc/gateway-api/routes`"

``` yaml
--8<-- "etc/gateway-api/routes/custom-neutron-gateway-route.yaml"
```

#### Modify the Neutron Route

This example changes the placeholder domain to `<YOUR_DOMAIN>`. Review the [gateway route documentation](https://gateway-api.sigs.k8s.io/api-types/httproute)
for more information on route types.

``` shell
mkdir -p /etc/genestack/gateway-api/routes
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' \
/opt/genestack/etc/gateway-api/routes/custom-neutron-gateway-route.yaml \
> /etc/genestack/gateway-api/routes/custom-neutron-gateway-route.yaml
```

### Apply the Neutron Route

``` shell
kubectl --namespace openstack apply -f /etc/gateway-api/routes/custom-neutron-gateway-route.yaml
```

## Demo

[![asciicast](https://asciinema.org/a/629813.svg)](https://asciinema.org/a/629813)
30 changes: 30 additions & 0 deletions docs/openstack-glance.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,36 @@ helm upgrade --install glance ./glance \
kubectl --namespace openstack exec -ti openstack-admin-client -- openstack image list
```

### Custom Routes

!!! note "This step is not needed if all routes were applied when the Gateway API was deployed"

A custom gateway route can be used when setting up the service. The custom route make it possible to for a domain like `your.domain.tld` to be used for the service.

??? example "Example routes file found in `/opt/genestack/etc/gateway-api/routes`"

``` yaml
--8<-- "etc/gateway-api/routes/custom-glance-gateway-route.yaml"
```

#### Modify the Route

This example changes the placeholder domain to `<YOUR_DOMAIN>`. Review the [gateway route documentation](https://gateway-api.sigs.k8s.io/api-types/httproute)
for more information on route types.

``` shell
mkdir -p /etc/genestack/gateway-api/routes
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' \
/opt/genestack/etc/gateway-api/routes/custom-glance-gateway-route.yaml \
> /etc/genestack/gateway-api/routes/custom-glance-gateway-route.yaml
```

### Apply the Route

``` shell
kubectl --namespace openstack apply -f /etc/gateway-api/routes/custom-glance-gateway-route.yaml
```

## Demo

[![asciicast](https://asciinema.org/a/629806.svg)](https://asciinema.org/a/629806)
47 changes: 47 additions & 0 deletions docs/openstack-heat.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,53 @@ helm upgrade --install heat ./heat \
kubectl --namespace openstack exec -ti openstack-admin-client -- openstack --os-interface internal orchestration service list
```

### Custom Routes

!!! note "This step is not needed if all routes were applied when the Gateway API was deployed"

A custom gateway route can be used when setting up the service. The custom route make it possible to for a domain like `your.domain.tld` to be used for the service.

??? example "Example routes file found in `/opt/genestack/etc/gateway-api/routes`"

``` yaml
--8<-- "etc/gateway-api/routes/custom-heat-gateway-route.yaml"
```

#### Modify the Route

This example changes the placeholder domain to `<YOUR_DOMAIN>`. Review the [gateway route documentation](https://gateway-api.sigs.k8s.io/api-types/httproute)
for more information on route types.

##### Heat Route

``` shell
mkdir -p /etc/genestack/gateway-api/routes
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' \
/opt/genestack/etc/gateway-api/routes/custom-heat-gateway-route.yaml \
> /etc/genestack/gateway-api/routes/custom-heat-gateway-route.yaml
```

##### Cloudformation Route

``` shell
mkdir -p /etc/genestack/gateway-api/routes
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' \
/opt/genestack/etc/gateway-api/routes/custom-cloudformation-gateway-route.yaml \
> /etc/genestack/gateway-api/routes/custom-cloudformation-gateway-route.yaml
```

#### Apply the Heat Route

``` shell
kubectl --namespace openstack apply -f /etc/gateway-api/routes/custom-heat-gateway-route.yaml
```

#### Apply the Cloudformation Route

``` shell
kubectl --namespace openstack apply -f /etc/gateway-api/routes/custom-cloudformation-gateway-route.yaml
```

## Demo

[![asciicast](https://asciinema.org/a/629807.svg)](https://asciinema.org/a/629807)
30 changes: 30 additions & 0 deletions docs/openstack-keystone.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,36 @@ kubectl --namespace openstack apply -f /opt/genestack/manifests/utils/utils-open
kubectl --namespace openstack exec -ti openstack-admin-client -- openstack user list
```

### Custom Routes

!!! note "This step is not needed if all routes were applied when the Gateway API was deployed"

A custom gateway route can be used when setting up the service. The custom route make it possible to for a domain like `your.domain.tld` to be used for the service.

??? example "Example routes file found in `/opt/genestack/etc/gateway-api/routes`"

``` yaml
--8<-- "etc/gateway-api/routes/custom-keystone-gateway-route.yaml"
```

#### Modify the Route

This example changes the placeholder domain to `<YOUR_DOMAIN>`. Review the [gateway route documentation](https://gateway-api.sigs.k8s.io/api-types/httproute)
for more information on route types.

``` shell
mkdir -p /etc/genestack/gateway-api/routes
sed 's/your.domain.tld/<YOUR_DOMAIN>/g' \
/opt/genestack/etc/gateway-api/routes/custom-keystone-gateway-route.yaml \
> /etc/genestack/gateway-api/routes/custom-keystone-gateway-route.yaml
```

### Apply the Route

``` shell
kubectl --namespace openstack apply -f /etc/gateway-api/routes/custom-keystone-gateway-route.yaml
```

## Demo

[![asciicast](https://asciinema.org/a/629802.svg)](https://asciinema.org/a/629802)
Loading

0 comments on commit c4708aa

Please sign in to comment.