- Signup for 14 day trial http://cloud.weave.sh Referal link to http://profitbricks.com
- Login to DCD
- Create a new datacenter
- Setup cluster
- Setup Node
- Assemble storage and network
- Provision datacenter (receive credentials via email)
- Login to ubuntu bootstrap to build CoreOS volume
- Change root password
- apt-get update
- configure default ssh public key
export DEFAULT_SSH_PUBKEY="ssh-rsa AAAAB3NzaC1yc2EA..." - setup hostname
export DEFAULT_HOSTNAME=node00
- Pull ProfitBricks awk templates
curl https://gist.githubusercontent.com/ambled/a4fc74af3f3fb15d9d07/raw/de25cfd7c5d84b6e23fa73413d6d9656030e4556/cloud-config-template.awk > cloud-config-template.awk
curl https://gist.githubusercontent.com/ambled/a4fc74af3f3fb15d9d07/raw/4527592fee20f8944858c0a73192e5c3b629a267/mknetwork.awk > mknetwork.awk-
Get ProfitBricks Setup.sh
curl https://gist.githubusercontent.com/ambled/a4fc74af3f3fb15d9d07/raw/6bf19a61b3a15448957d169c0139f22b6978df39/setup.sh > setup.sh -
Generate cloud-config.yaml template
/bin/bash setup.sh > cloud-config.yaml -
Edit cloud-config.yaml for any additional changes per CoreOS docs (example uncomment #hostname, set etcd/fleet ip addresses based on network config settings, etc)
-
Get coreos-install script
curl https://raw.githubusercontent.com/coreos/init/master/bin/coreos-install > coreos-install.sh -
Build CoreOS Image
/bin/bash coreos-install.sh -d /dev/vdb -C stable -c ~/cloud-config.yaml -
logout
- Using DCD, change boot partition to CoreOS
- Disconnect/reuse bootstrap OS volume
- Apply changes (Provision Data Center)
- When provisioning is finished, attach to remote console.
- When CoreOS is finished booting, notice only IPv6 detected on boot (however network config scripts are now ready)
- Select "Send Key"->"Control+Alt+Del" or use the DCD to reboot
- Can also connect from an existing node on the same private network using ipv6
ssh -A user@tunnelhost
ping6 -I eth1 fe80::...:1234
(from tunnelhost) ssh core@fe80::....:1234%eth1-
connect to node
-
launch a sample container
docker run --name hello_nginx -d -p 80:80 nginx -
browse to public ip address
-
stop sample container
docker stop hello_nginx