I'm working on building a my own Cloud Platform based on Docker and CoreOS. Howerver my underlying infrastrucutre is VMware vCloud which is not exactly straight forward in comparison to Amazon EC2 or Digital Ocean when installing CoreOS.
VMWare has a really nice CoreOS tutorial but it is lacking the CoreOS network configurations. So this small tutuorial will help you get get static networking running in no time. But most of the details can be found in the CoreOS Tutorial.
Where to find a CoreOS OVA File
So after much searching I finally found a link to the current builds of CoreOS which also include OVF files -http://stable.release.core-os.net/amd64-usr/current/
Do a quick search for OVA on this website and it will take you right to the VMware OVA image of CoreOS - coreos_production_vmware_ova.ova. Download this OVA file.
Configure CoreOS Network, Gateway and DNS servers
By this point the CoreOS should now be running inside of VMware. So far no black magic has been used. Yet.. Since CoreOS doesn't support VMware tools it uses Open VM Tools. This gives us basic funtionality but the network settings are not automatically configured inside of CoreOS.
Once you open the console on your newly created CoreOS VM (Refer to the tutorial if you cannot login). We now need to configure the network settings so we can ssh into the server from outside.
- Navigate to the /etc/systemd/network directoy
- Create the file static.network - $sudo vi static.network
Inside the static.network file add the following information in order to setup static networking.
[Match] MACAddress=00:55:56:57:58:59 [Network] Address=192.168.10.10/24 Gateway=192.168.10.1 DNS=126.96.36.199```
After configuring your network settings reboot CoreOS. The reason I say reboot as for whatever reason the systemctl restart was not reading the network settings and only a reboot reread the static.network file.
After the reboot you should be able to ping Google's DNS 188.8.131.52 and google.com which should enable you to continue either building your CoreOS cluster or using another service.