Please see release notes for current and planned features.
A Vagrant deployment of halcyon-kubernetes -- Ansible playbooks for a kubadm-based kubernetes deployment, supporting any cloud and any kubeadm-enabled OS.
brew install gnu-sed
Please see /docs/README.md for more information about SDN providers, plugins, and other useful information. Pull requests are welcome!
To use this project, simply use vagrant to bring up your environment:
$ git clone https://github.com/att-comdev/halcyon-vagrant-kubernetes.git
$ cd halcyon-vagrant-kubernetes
$ git submodule init
$ git submodule update
$ cd halcyon-kubernetes; make; source venv/bin/activate; cd -
$ vagrant up
A helper script is provided to set up basic common configuration options, it can be used to change the guest OS and Kubernetes version. It also supports changing between the default halcyon-kubernetes config and one optimized for OpenStack Kolla-Kubernetes development. For example, to setup a Kolla development environment running CentOS and Kubernetes v1.4.6 can simply be achieved by running:
$ ./setup-halcyon.sh --guest-os centos --k8s-config kolla --k8s-version v1.4.6
When you want to use Openstack, edit the options in ./config.rb
to match your Openstack project, and deploy with the --provider=openstack
flag:
$ vagrant up --provider=openstack
If you would like to use libvirt rather than virtualbox, install the follow vagrant plugin and deploy with the --provider=libvirt
flag:
$ vagrant plugin install vagrant-libvirt
$ vagrant up --provider=libvirt
NOTE: Please look over the options in config.rb
for modifying number of nodes, subnet, and other information and if you want to make any modifications to the Ansible deployment, make changes to the ./kube-deploy/group_vars/all.yml
file.
To access the deployed cluster either log in to the node kube1
:
$ vagrant ssh kube1
or if kubectl is installed locally on the development host, you can alternatively use the provided helper-script to access the cluster:
$ ./get-k8s-creds.sh
If you are deploying project on a Ubuntu 16.04+ host, you may need to install the following dependencies to ensure that the Vagrant plugins get installed properly:
sudo apt-get install ruby-dev zlib1g-dev libgmp-dev libxml2-dev libssl-dev openssl libffi-dev
NOTE: On Ubuntu 16.10, you may have to install libvirt-dev package to ensure the vagrant-libvirt plugin installs properly:
sudo apt-get install libvirt-dev