Launch and scale Apache Ignite application with different frameworks: Consul, Mesos, Kubernetes, Heroku and so on. And extra: dynamic configuration with Spring Config Server, logging with ELK, monitoring with Prometheus... or
Build docker image with application
make build
Start (docker-compose in general or something. It depends.)
make up
Shutdown ( ... this stuff)
make down
Deploy grid instance (Marathon app for instance)
make deploy
Cleanup
make clean
- Dashboard http://data-grid.127.0.0.1.xip.io/hystrix
- Stream(internal link!) http://localhost:8080/hystrix.stream
- The SpringBoot health http://data-grid.127.0.0.1.xip.io/health.json
- Consul dashboard http://consul-admin.infra.127.0.0.1.xip.io
- Scale service
docker-compose scale ignite=3
- Services on the Consul
curl http://consul-admin.infra.127.0.0.1.xip.io/v1/agent/services | jq
- Scale service
- HAProxy dashboard http://proxy-admin.infra.127.0.0.1.xip.io
- Check services:
- curl
curl -XGET dg.127.0.0.1.xip.io/services/execution-id
- ab
ab -n1000 -c100 dg.127.0.0.1.xip.io/services/execution-id
- curl
- Check services:
- Exhibitor/ZK UI http://localhost:8080/exhibitor/v1/ui/index.html
- Mesos dashboard http://mesos.127.0.0.1.xip.io:5050/#/
- Marathon dashboard marathon.127.0.0.1.xip.io:8081/#/
- Marathon-LB (HAProxy on steroids)
- Kibana (ELK) http://kb.127.0.0.1.xip.io:5601
Warm up load-balancer
ab -n200 -c60 http://dg.127.0.0.1.xip.io/quest/1
With none driver and after
sudo minikube start --vm-driver=none
sudo chown -R $USER:$USER ~/.minikube
sudo chown -R $USER:$USER ~/.kube
minikube dashboard
TODO
heroku create && git push heroku master && heroku ps:scale web=1 && curl https://pure-plateau-77452.herokuapp.com/health | jq
or
make deploy-on-heroku
TODO
- Prometheus http://prometheus.127.0.0.1.xip.io:9090
- Grafana http://grafana.127.0.0.1.xip.io:3000