Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 
avatar of Mykhailo Skliar

Mykhailo Skliar

Mykhailo Skliar has asked 1 questions and find answers to 1 problems.

Stats

18
EtPoint
2
Vote count
1
questions
1
answers

About

My current portfolio project is a Minimal Kubernetes Cluster on AWS with Terraform, K3S, Istio Gateway, Spring Boot Microservices, Keycloak OAuth2 Authorization Server, Swagger UI and Jaeger Distributed Tracing.

This cluster hosts fully functional production-ready Swagger UI REST Client and Keycloak Authorization Server, which are ready to authenticate users, serve requests 24/7 and save data to MongoDB and MySQL database.

As a fully-working example, I exposed:

  1. Books Online Microservices Demo, with Swagger UI REST client and Keycloak Authorization Server on my registered domain: https://istio.skycomposer.net/product-composite/swagger-ui/index.html

username: test password: test

  1. Keycloak Authorization Server Admin Console for admin users: https://istio.skycomposer.net

admin login: admin@keycloak admin password: my-keycloak-password

The estimated cost of such production 24/7 environment on AWS is about 60 Euros per month:

This environment setup includes:

  1. Registered skycomposer.net domain
  2. Registered certificate for this domain to enable secure HTTPS connection
  3. K3S Kubernetes Cluster
  4. Virtual Private Cloud with public subnets
  5. AWS HTTPS Application Load Balancer and Traefik Ingress Controller exposing secured HTTPS REST API
  6. External DNS with registered DNS record for HTTPS certificate
  7. Books Online Microservices Demo, with Swagger UI REST client (see https://istio.skycomposer.net/product-composite/swagger-ui/index.html)
  8. Keycloak Authorization Server Admin Console for creation of new users and managing their OAuth2 JWT tokens (see https://istio.skycomposer.net)
  9. All Microservices are exposed with Istio Gateway and secured with HTTPS and Keycloak Authorization Server.

Swagger UI: https://istio.skycomposer.net/product-composite/swagger-ui/index.html

Keycloak Admin Console: https://istio.skycomposer.net

Jaeger Distributed Tracing: https://istio.skycomposer.net/jaeger

Kiali Management Console: https://istio.skycomposer.net/kiali

See more details in these step-by-step instructions: https://github.com/skyglass/books-online-microservices-demo

See some more details in these articles: https://www.linkedin.com/posts/michaelsklyar_jaeger-keycloak-swagger-activity-6822750568948232192-XY5w

https://www.linkedin.com/posts/michaelsklyar_keycloak-oauth2-aws-activity-6807089625245483008-zVqp

https://www.linkedin.com/posts/michaelsklyar_istio-aws-kubernetes-activity-6814366718954090496-0Lh_

https://www.linkedin.com/posts/michaelsklyar_traefik-aws-kubernetes-activity-6805656178761195520-xjDB/

https://www.linkedin.com/posts/michaelsklyar_udemy-course-completion-certificate-activity-6802683768663511040-UlD6/