Skip to content

Commit 8ceaf63

Browse files
authored
Update README.md
Modified format for readability and added K3s as one of the tested K8s distros.
1 parent ba2909d commit 8ceaf63

1 file changed

Lines changed: 14 additions & 6 deletions

File tree

ast-on-k8s/README.md

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,17 @@ git checkout
1212
```
1313

1414
You will also need to modify the following files, at minimum.
15-
- env-configmap.yaml:
15+
- env-configmap.yaml
16+
1617
Update the Grafana credentials to the desired credentials and the SENSOR_ID/SENSOR_SECRET_TOKEN if using the global AST dashboard.
17-
- env-device-secrets-configmap.yaml:
18+
- env-device-secrets-configmap.yaml
19+
1820
Update the BIGIP_PASSWORD_1 value to the password of your BIG-IPs. If there are multiple BIG-IP passwords, also update BIGIP_PASSWORD_2, BIGIP_PASSWORD_3, BIGIP_PASSWORD_4, etc. (TODO: This needs to be changed so these passwords are stored as Kubernetes secrets.)
19-
- otel-collector-deployment.yaml:
21+
- otel-collector-deployment.yaml
22+
2023
This file has two environment variables that represent BIG-IP passwords, BIGIP_PASSWORD_1 and BIGIP_PASSWORD_2. If you have more than two BIG-IP passwords, you will need to add them here.
21-
- rec-pipe-configmap.yaml:
24+
- rec-pipe-configmap.yaml
25+
2226
This is the equivalent of the services/otel_collector/receivers.yaml file. You will need to list all BIG-IPs to be monitored, along with their settings, in this file. You will also need to reference the BIG-IPs (i.e., "bigip/1", "bigip/2", etc.) in the receivers subsection under pipelines.yaml section (also in this file).
2327

2428
Other files in this directory can also be modified for additional customization. See the original repo (https://github.com/f5devcentral/application-study-tool) for specific customization guidance.
@@ -38,12 +42,15 @@ NAME READY STATUS RESTARTS AGE
3842
grafana-54c8bbb46b-kf8fv 1/1 Running 0 2m14s
3943
otel-collector-5b87d546b6-rnkml 1/1 Running 0 2m13s
4044
prometheus-69cbc96779-vcrhz 1/1 Running 0 2m13s
45+
46+
(other pods may be listed here as well)
4147
```
4248

43-
You are now running the Application Study Tool in a Kubernetes environment. This collection also creates [NodePort](https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport) services for Grafana and Prometheus for external access. NodePorts use high port numbers (30000 and up) which may be sufficient, depending on your connection to the cluster and connectivity requirements. However, most Internet-facing applications use more robust ingress solutions, such as cloud loadbalancers and F5 BIG-IPs with the [Container Ingress Services](https://clouddocs.f5.com/containers/latest/) (CIS) plugin.
49+
Make sure the three AST pods, with names beginning with grafana, otel-collector, and prometheus, have a STATUS of "Running". If so, the Application Study Tool is now running in a Kubernetes environment. This collection also creates [NodePort](https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport) services for Grafana and Prometheus for external access. NodePorts use high port numbers (30000 and up) which may be sufficient, depending on your connection to the cluster and connectivity requirements. However, most Internet-facing applications use more robust ingress solutions, such as cloud loadbalancers and F5 BIG-IPs with the [Container Ingress Services](https://clouddocs.f5.com/containers/latest/) (CIS) plugin. These solutions are also able to expose the application to the more common ports, 80 (HTTP) and 443 (HTTPS).
50+
4451
The ./extras directory contains example manifest files for a loadbalancer config in AKS.
4552

46-
In the meantime, you can test that everything is running correctly by accessing Grafana though the NodePort service. You will need connectivity between your web browser and one of the worker nodes.
53+
In the meantime, you can verify that everything is working correctly by accessing Grafana though the NodePort service. You will need connectivity between your web browser and one of the worker nodes.
4754
To access this service, first get the NodePort port number using the following command:
4855
```
4956
kubectl get svc
@@ -67,5 +74,6 @@ As of this writing, this deployment has been tested on the following platforms:
6774
- Azure Kubernetes Services (AKS)
6875
- F5 Distributed Cloud vK8s (with some additional configuration - docs coming soon).
6976
- RedHat OpenShift
77+
- K3s
7078

7179
This collection was created by first leveraging [Kompose](https://kompose.io/) to generate the initial YAML files from the Application Study Tool Docker Compose file, followed by a series of changes needed to get it to work in a production-grade Kubernetes cluster. (More information on that coming soon.)

0 commit comments

Comments
 (0)