Sample Quarkus architecture with the following dependencies:
- Microprofile metrics
- Microprofile health
- Opentracing
- Open API and Swagger
- GELF with ELK
- Fault tolerance
Create a Kubernetes local cluster with:
kind create cluster --config kind/kind-ingress-config.yaml
Note: Use --image kindest/node:<target_version>
if you want to choose different version of k8s.
Use ingress/ingress.yaml
file with:
kubectl apply -f k8s/ingress.yaml
Create a Multi-node Kubernetes local cluster with:
kind create cluster --config kind/kind-ha-ingress-config.yaml
Finally, just follow the instruction above to set up Project Contour and NGINX Ingress Controller.
Deploy the application with:
kubectl apply -f k8s
Then open the following URL localhost/ in a browser to access to the Web application.
Open the following URLs in a browser:
-
Access to grafana's dashboard with:
http://localhost/grafana
-
Access to kibana's dashboard with:
http://localhost/kibana
-
Access to jaeger's dashboard with:
http://localhost/jaeger
-
Access to prometheus' dashboard with:
http://localhost/prometheus
-
Access to swagger's dashboard:
- Employee: localhost/employee/swagger-ui
- Department: localhost/department/swagger-ui
- Human Resources: localhost/hr/swagger-ui