Skip to content

Commit 0bcade9

Browse files
committed
wip - docs
1 parent 47a885a commit 0bcade9

1 file changed

Lines changed: 47 additions & 12 deletions

File tree

docs/modules/demos/pages/argo-cd-git-ops.adoc

Lines changed: 47 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ image::argo-cd-git-ops/architecture-overview.svg[]
2424

2525
Install this demo on an existing Kubernetes cluster:
2626

27+
TODO: We need a pointer here to the last paragraph (forking repo) if people want to "interact" and not just install the demo (install command requires extra parameters)
28+
2729
[source,console]
2830
----
2931
$ stackablectl demo install argo-cd-git-ops --namespace argo-cd
@@ -38,9 +40,9 @@ NOTE: ArgoCD will be deployed in the `argo-cd` namespace by `stackablectl`. Argo
3840

3941
To run this demo, your system needs at least:
4042

41-
* 20 {k8s-cpu}[cpu units] (core/hyperthread)
42-
* 20GiB memory
43-
* 20GiB disk storage
43+
* 15 {k8s-cpu}[cpu units] (core/hyperthread)
44+
* 15 GiB memory
45+
* 5 GiB disk storage
4446
4547
== Overview
4648

@@ -74,7 +76,7 @@ This way, everything will be stored and managed in Git.
7476

7577
== ArgoCD UI
7678

77-
ArgoCD will be the first product that is deployed in this Demo. Once the pods are ready, you can port-forward the argocd-server in order to access the Web UI.
79+
ArgoCD will be the first product that is deployed in this Demo. Once the pods are ready, you can port-forward the argocd-server in order to access the web UI.
7880

7981
[source,console]
8082
----
@@ -85,7 +87,25 @@ In your browser, go to `https://localhost:8443` and login with username `admin`
8587

8688
NOTE: There will be an initial warning from the Browser, that this site is insecure due to self-signed certificates. This can be ignored in this case.
8789

88-
TODO: screenshots
90+
The ArgoCD Web UI entry page shows an overview of deployed applications and their status and other metadata as the repository or the date of the last synchronization run.
91+
92+
TODO: Screenshot - Argo UI overview
93+
94+
Single applications can be inspected closer after clicking on e.g. the `airflow` project.
95+
96+
TODO: Screenshot - Argo UI - Airflow
97+
98+
Detailed information about the cluster, the cluster status and deployed components can be accessed in the application details.
99+
Additionally, if the Git repository and the cluster state itself differ, possible applied changes can be previewed in a code diff similar to Git pull requests.
100+
101+
TODO: Screenshot - Argo UI - application details Network / List tab -> mark network tabs etc.
102+
103+
Per default in this demo, the ArgoCD `Sync Policy` is set to `auto-sync`. This means that changes to the Git repository are immediatly synced into the cluster.
104+
This is nice in the demo case, but should be disabled for production use cases.
105+
106+
TODO: Screenshot - Argo UI - applications/airflow/details
107+
108+
Now, after a quick overview of the ArgoCD web UI, the following part demonstrates how to sync and deploy Stackable operators via ArgoCD.
89109

90110
== Stackable operators
91111

@@ -95,6 +115,8 @@ using different versions and Git sources (repository & branch) as well as the po
95115

96116
NOTE: This demo does not use a multi cluster environment for the sake of simplicity.
97117

118+
TODO: Do the code snippets actually help? Maybe text is better... its about showing at least some parts of a multi cluster setup...
119+
98120
[source,yaml]
99121
----
100122
---
@@ -232,26 +254,39 @@ Now with ArgoCD deployed, the Sealed Secrets controller and Stackable operators
232254

233255
== Airflow
234256

235-
The Airflow Web UI is reachable via Nodeport or easier, using a port-forward:
257+
The Airflow web UI is reachable via Nodeport or easier, using a port-forward:
236258

237259
[source,console]
238260
----
239-
kubectl --namespace stackable-airflow port-forward service/airflow-webserver 8080
261+
kubectl --namespace stackable-airflow port-forward service/airflow-webserver 8081:8080
240262
----
241263

242264
In your browser, go to `http://localhost:8080` and login with username `admin` and password `adminadmin`.
243265

244-
TODO: Screenshots
245-
246-
TODO: Similar to the ArgoCD {argo-cd-application}[`Application`]
266+
TODO: Screenshots - start dag
247267

248268
=== Starting DAGs
249269

250270
TODO: screenshots?
251271

252-
=== Checking logs
272+
== Minio / S3 - check logs
273+
274+
Since the Airflow Kubernetes Executor will be deleted after its run, the logs are written to an S3 bucket. When accessing the logs via the Airflow webserver,
275+
the logs are fetched from S3 instead of the (already deleted) executor pods. The Minio / S3 instance can be accessed via port-forward:
276+
277+
[source,console]
278+
----
279+
kubectl --namespace minio port-forward service/minio-console 9001:9001
280+
----
281+
282+
Minio then is reachable via `https://localhost:9001` with username `admin` and password `adminadmin`. After the successful Airflow DAG run, logs should be stored in `demo/airflow-task-logs`.
283+
284+
NOTE: There will be an initial warning from the Browser, that this site is insecure due to self-signed certificates. This can be ignored in this case.
285+
286+
TODO: Screenshot - minio UI with log data
253287

254-
TODO: even important here?
288+
As a last step, in order to better interact and not just "sync" from the Git repository, the following paragraph demonstrates how to fork the demo repository and adapt the `stackablectl` install command to point to the forked repository.
289+
In this forked repository, changes can be made the code and synced into the cluster via ArgoCD.
255290

256291
== How to interact with ArgoCD and the Git repository
257292

0 commit comments

Comments
 (0)