Vert.x clustering on Docker, CoreOS and ETCD
date post
23-Aug-2014Category
Internet
view
822download
6
Embed Size (px)
description
This talk was held at the Vert.x Meetup Amsterdam on 30-07-2014. The subject is on how to get a Vert.X cluster running in Docker containers running on CoreOS without any manual configuration.
Transcript of Vert.x clustering on Docker, CoreOS and ETCD
- Tim Nolet tim@magnetic.io Vert.X clustering on Docker, CoreOS and ETCD =+{ }+
- So whats magne;c.io? - Next-gen e-commerce platform aimed at the enterprise market - Integrate Continuous Delivery from the ground up - Cocktail of PaaS, containers and micro services
- CoreOS - Just a Linux Distro - Run apps in containers - On the fly updating - Fast boot times - Systemd images: coreos.com
- ETCD - Distributed key/value store - Like a directory tree - JSON/REST API - Uses a Discovery URL images: coreos.com
- Docker - REALLY portable - Images/containers - JSON/REST API - Emits events! Starting cluster bootstrap... ==> info: Hazelcast port => 5701 ==> info: Vertx Eventbus port => 5702 ==> info: ETCD host => 10.0.42.1 ==> info: ETCD port => 4001 ==> info: ETCD base path => /vamp/bootstrap ==> info: Public IP => 172.17.8.103 ==> info: Physical hostname => core-03 ==> info: Container hostname => f9dc53532ff4 ==> info: Vertx module to run => vamp-agent-0.1.0 ==> info: Connecting to ETCD ==> info: Connected to ETCD at 10.0.42.1:4001 ==> info: Vamp Bootstrap will try to cluster with started remote host 172.17.8.101 ==> info: Starting Vamp Bootstrap with module vamp-agent-0.1.0 ==> info: Waiting for Vamp Bootstrap to come online... ==> info: Vamp Bootstrap was started with PID 24 and public IP 172.17.8.103
- coreos Lets boot a cluster on AWS! vamp_loadbalancer vamp_agent coreos vamp_agentvamp_agent coreos vamp_agentvamp_agent coreos vamp_agent autoscale REST coreos vamp_ controller three AV zones traffic
- and while thats running
- the good parts - Vert.x with Docker/CoreOS/ETCD is cool because: - Size: in MBs and in complexity - Event bus makes distribution easy - polyglot works nice with the idea of micro services
- the bad parts - Once it becomes complex, boilerplate rises - Actor-like maybe to coarse and without the build in reactive stuff which Akka has - Not enough control / insight over the event bus as a system
- Ques;ons? we are hiring!