Logo v1.0.0
  • GitHub
  • Katana ML
Logo v1.0.0
  • Documentation
  • Introduction
  • Skipper
  • Getting Started
  • API
  • Workflow
  • Services
  • RabbitMQ
  • Skipper Lib
  • Logger

Katana ML Skipper RabbitMQ Service

RabbitMQ is open source message broker service, it enables services communication and workflow operations. Katana ML Skipper communication service runs on top of RabbitMQ.

File Structure

.
  • Dockerfile
  • init.sh
  • rabbit-configmap.yaml
  • rabbit-rbac.yaml
  • rabbit-secret.yaml
  • rabbit-statefulset.yaml
  • README.MD

Instructions

To run all services, check instructions in Getting Started

Running RabbitMQ service locally

  1. Run Docker Compose script
  2. docker-compose up --build -d
  3. RabbitMQ dashboard
  4. http://localhost:15672 (skipper/welcome1)

Build and run Kubernetes Pod

Instructions are based on content explained by That DevOps Guy

  1. Create namespace
  2. kubectl create ns rabbits
  3. Check storage class
  4. kubectl get storageclass
  5. Define RabbitMQ role mappings
  6. kubectl apply -n rabbits -f rabbit-rbac.yaml
  7. Define RabbitMQ secret
  8. kubectl apply -n rabbits -f rabbit-secret.yaml
  9. Define RabbitMQ configs
  10. kubectl apply -n rabbits -f rabbit-configmap.yaml
  11. Create RabbitMQ cluster and pods
  12. kubectl apply -n rabbits -f rabbit-statefulset.yaml
  13. Verify pods
  14. kubectl -n rabbits get pods
  15. Verify assigned persistence volumes
  16. kubectl -n rabbits get pvc
  17. Open external access, to access RabbitMQ UI
  18. kubectl -n rabbits port-forward rabbitmq-0 15672:15672
  19. RabbitMQ UI URL
  20. http://localhost:15672/ (skipper/welcome1)
  21. Scale RabbitMQ cluster
  22. kubectl scale -n rabbits statefulsets rabbitmq --replicas=2
  23. Delete all resources
  24. kubectl delete all --all -n rabbits

License

Licensed under the Apache License, Version 2.0. Copyright 2020-2021 Katana ML, Andrej Baranovskij. Copy of the license.