Full featured Mesos sandbox
###Objectives
- The easiest way to learn, rollout and maintain mesos platform
- No closed artifacts, track everything from source code.
- Cross cloud / cross region cluster
- Run all workloads on single pool resources ( no static partitioning )
###Implemented Features
- Easy for modification and development, since everything, including infrastructure is immutable and managed via the same repository.
- Security applied starting from DEV
- Scallability and HA out of the box
- Mesosphere DCOS cli compatible
- Automatic OpenVPN tunnel provisioning during cluster bootstrap
###Build blocks
- Packer same templates to build any server
- Terraform for real infrastructure as a code
- CoreOS as a minimalistic basement of any host
- Docker for anything else
- Mesos a distribuited cluster kernel
- Marathon a distribuited cluster kernel
###To be implemented
- Live cross region cluster modification and worload migrations
- DCOS frameworks compatible
- [Vault] (http://vaultproject.io) for managing secrets
- More registered
###Prerequesits:
- Vagrant
- VirtualBox
- Tunnelblick
- DCOScli (optional)
###Get the code:
git clone [email protected]:nixlike/ecore.git
- Add vagrant box and start
$vagrant box add nixlike/ecoreallinone
$cd envtype/vagrant/ && vagrant up
-
Wait until the instance up up
-
Add Openvpn client config:
Double click /tmp/vagrantshare/ADMIN.ovpn in Finder
-
Connect Tunnelblick to ADMIN VPN
-
Test:
$ ping master.mesos
PING master.mesos (172.17.8.101): 56 data bytes
64 bytes from 172.17.8.101: icmp_seq=0 ttl=64 time=0.380 ms
64 bytes from 172.17.8.101: icmp_seq=1 ttl=64 time=0.266 ms
Urls: http://master.mesos:8080 and http://master.mesos:5050
####If you have DCOS installed, just use ./cli script
$ cd envtype/vagrant/
$ ./cli --help
-
Run
$cd ecore/envtype/aws/ && make apply
-
Wait until the environment is up
-
Add Openvpn client config
Double click /tmp/ADMIN.ovpn in "Finder"
- Connect Tunnelblick to ADMIN VPN
$ping master.mesos
PING master.mesos (10.100.1.234): 56 data bytes
64 bytes from 10.100.1.234: icmp_seq=0 ttl=62 time=103.687 ms
64 bytes from 10.100.1.234: icmp_seq=1 ttl=62 time=86.273 ms
64 bytes from 10.100.1.234: icmp_seq=2 ttl=62 time=87.391 ms
Urls: http://master.mesos:8080 and http://master.mesos:5050
####If you have DCOS installed, just use ./cli script
$ cd ecore/envtype/aws/
$ ./cli --help
####Most Terraform template variables can be amended in vars.tf !