Skip to content

Commit cc72763

Browse files
committed
Update getting started guides
1 parent 3a13639 commit cc72763

File tree

3 files changed

+47
-29
lines changed

3 files changed

+47
-29
lines changed

docs/getting-started/installation.md

Lines changed: 45 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -5,40 +5,64 @@ description: Basic installation of the platform
55

66
# Installation
77

8-
Let's discover how to install a basic version of the Kadras Engineering Platform.
8+
Let's discover how to install Kadras Engineering Platform on a local Kubernetes cluster with [kind](https://kind.sigs.k8s.io).
99

1010
## Prerequisites
1111

12-
* Kubernetes 1.24+
13-
* Carvel [`kctrl`](https://carvel.dev/kapp-controller/docs/latest/install/#installing-kapp-controller-cli-kctrl) CLI.
14-
* Sigstore [`cosign`](https://docs.sigstore.dev/cosign/installation/) CLI.
15-
* Carvel [kapp-controller](https://carvel.dev/kapp-controller) deployed in your Kubernetes cluster. You can install it with Carvel [`kapp`](https://carvel.dev/kapp/docs/latest/install) (recommended choice) or `kubectl`.
12+
Ensure you have the following tools installed in your local environment:
13+
14+
* Kubernetes [`kubectl`](https://kubectl.docs.kubernetes.io/installation/kubectl)
15+
* [kind](https://kind.sigs.k8s.io)
16+
* Carvel [`kctrl`](https://carvel.dev/kapp-controller/docs/latest/install)
17+
* Carvel [`kapp`](https://carvel.dev/kapp-controller/docs/latest/install/#installing-kapp-controller-cli-kctrl) CLI.
18+
19+
Then, create a local Kubernetes cluster with kind.
20+
21+
```shell
22+
cat <<EOF | kind create cluster --config=-
23+
kind: Cluster
24+
apiVersion: kind.x-k8s.io/v1alpha4
25+
nodes:
26+
- role: control-plane
27+
kubeadmConfigPatches:
28+
- |
29+
kind: InitConfiguration
30+
nodeRegistration:
31+
kubeletExtraArgs:
32+
node-labels: "ingress-ready=true"
33+
extraPortMappings:
34+
- containerPort: 80
35+
hostPort: 80
36+
protocol: TCP
37+
- containerPort: 443
38+
hostPort: 443
39+
protocol: TCP
40+
EOF
41+
```
1642

17-
```shell
18-
kapp deploy -a kapp-controller -y \
19-
-f https://github.com/carvel-dev/kapp-controller/releases/latest/download/release.yml
20-
```
43+
## Deploy Carvel kapp-controller
44+
45+
The platform relies on the Kubernetes-native package management capabilities offered by Carvel [kapp-controller](https://carvel.dev/kapp-controller). You can install it with Carvel [`kapp`](https://carvel.dev/kapp/docs/latest/install) (recommended choice) or `kubectl`.
46+
47+
```shell
48+
kapp deploy -a kapp-controller -y \
49+
-f https://github.com/carvel-dev/kapp-controller/releases/latest/download/release.yml
50+
```
2151

2252
## Add the Kadras Repository
2353

24-
Add the Kadras repository to make all Kadras packages available to the cluster.
54+
Add the Kadras repository to make the platform packages available to the cluster.
2555

2656
```shell
2757
kubectl create namespace kadras-packages
2858
kctrl package repository add -r kadras-packages \
29-
--url ghcr.io/kadras-io/kadras-packages \
59+
--url ghcr.io/kadras-io/kadras-packages:0.11.1 \
3060
-n kadras-packages
3161
```
3262

33-
You can check the full list of available packages as follows.
34-
35-
```shell
36-
kctrl package available list -n kadras-packages
37-
```
38-
3963
## Create a Secret for the OCI Registry
4064

41-
First, create a Secret with the credentials to access your container registry in read/write mode. It will be used by the platform to publish and consume OCI artifacts.
65+
The platform will need to interact with a container registry. Create a Secret with the credentials to access your container registry with read/write permissions. It will be used by the platform to publish and consume OCI artifacts.
4266

4367
```shell
4468
export SUPPLY_CHAIN_REGISTRY_HOSTNAME=<hostname>
@@ -77,8 +101,8 @@ workspace_provisioner:
77101
```
78102
79103
* `<domain>` is the base domain name the platform will use to configure the Ingress controller. It must be a valid DNS name. For example, `lab.thomasvitale.com`.
80-
* `<oci-server>` is the server of the OCI registry where the platform will publish and consume OCI images. It must be the same used in step 3 when creating a Secret with the OCI registry credentials. For example, `ghcr.io`, `gcr.io`, `quay.io`, `index.docker.io`.
81-
* `<oci-repository>` is the repository in the OCI registry where the platform will publish and consume OCI images. It must be the same used in step 3 when creating a Secret with the OCI registry credentials. For example, it might be your username or organization name depending on which OCI server you're using.
104+
* `<oci-server>` is the server of the OCI registry where the platform will publish and consume OCI images. It must be the same used in the previous step when creating a Secret with the OCI registry credentials. For example, `ghcr.io`, `gcr.io`, `quay.io`, `index.docker.io`.
105+
* `<oci-repository>` is the repository in the OCI registry where the platform will publish and consume OCI images. It must be the same used in the previous step when creating a Secret with the OCI registry credentials. For example, it might be your username or organization name depending on which OCI server you're using.
82106

83107
## Install the Platform
84108

@@ -87,17 +111,11 @@ Reference the `values.yml` file you created in the previous step and install the
87111
```shell
88112
kctrl package install -i engineering-platform \
89113
-p engineering-platform.packages.kadras.io \
90-
-v ${VERSION} \
114+
-v 0.9.2 \
91115
-n kadras-packages \
92116
--values-file values.yml
93117
```
94118

95-
You can find the `${VERSION}` value by retrieving the list of package versions available in the Kadras package repository installed on your cluster.
96-
97-
```shell
98-
kctrl package available list -p engineering-platform.packages.kadras.io -n kadras-packages
99-
```
100-
101119
## Verify the Installation
102120

103121
Verify that all the platform components have been installed and properly reconciled.

docs/getting-started/workload.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,4 +39,4 @@ Using the Cartographer CLI, you can inspect the status of a workload and its sup
3939
carto apps workload get band-service
4040
```
4141

42-
The application will be available at `https://band-service.default.<your-domain-name>`, where `<your-domain-name>` is the base domain used during the platform installation.
42+
The application will be available at `https://band-service.default.127.0.0.1.sslip.io`.

docs/introduction.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,4 @@ The platform provides several capabilities based on open-source projects, includ
2121
* GitOps support with Flux, ArgoCD and Carvel
2222
* Air-gapped support with Carvel.
2323

24-
Get started with Kadras by [installing the platform](/docs/getting-started/installation) and [creating your first workload](/docs/getting-started/workload).
24+
Get started with Kadras by [installing the platform](/docs/getting-started/installation) and [creating your first workload](/docs/getting-started/workload) on a local environment.

0 commit comments

Comments
 (0)