The vagrant-devstack-Kuryr-Kubernetes 'Vagrant Options available' in the README stated that the default VAGRANT_KURYR_VM_MEMORY is 4096, this change updates it to 6144. And mentions that for a lighter devstack installation ovn and ovn-octavia driver can be used. This change also updates the url for atlas. Change-Id: Idb20cc2c89043a2aaf13335aec44acced283baf4 Closes-Bug: 1901558
vagrant-devstack-Kuryr-Kubernetes
Getting started
A Vagrant based kuryr,neutron,keystone,docker and kubernetes system.
Steps to try vagrant image:
- Install Vagrant on your local machine. Install one of the current providers supported: VirtualBox, Libvirt or Vagrant
- Git clone kuryr-kubernetes repository.
- Run
cd kuryr-kubernetes/contrib/vagrant
- Run
vagrant up
It will take from 10 to 60 minutes, depending on your internet speed. Vagrant-cachier can speed up the process [1]. vagrant ssh
At this point you should have experimental kubernetes (etcdv3, k8s-apiserver, k8s-controller-manager, k8s-scheduler, kubelet and kuryr-controller), docker, kuryr, neutron, keystone, placement, nova, octavia all up, running and pointing to each other. Pods and services orchestrated by kubernetes will be backed by kuryr+neutron and Octavia. The architecture of the setup can be seen at [2].
References: [1] http://fgrehm.viewdocs.io/vagrant-cachier/ [2] https://docs.openstack.org/developer/kuryr-kubernetes/devref/kuryr_kubernetes_design.html
Vagrant Options available
You can set the following environment variables before running vagrant up
to modify
the definition of the Virtual Machine spawned:
-
VAGRANT_KURYR_VM_BOX: To change the Vagrant Box used. Should be available in atlas.
export VAGRANT_KURYR_VM_BOX=centos/7
Could be an example of a rpm-based option.
-
VAGRANT_KURYR_VM_MEMORY: To modify the RAM of the VM. Defaulted to: 6144. If you mean to create multiple Kubernetes services on the setup and the Octavia driver used is Amphora, you should increase this setting.
-
VAGRANT_KURYR_VM_CPU: To modify the cpus of the VM. Defaulted to: 2.
-
VAGRANT_KURYR_RUN_DEVSTACK: Whether
vagrant up
should run devstack to have an environment ready to use. Set it to 'false' if you want to editlocal.conf
before run ./stack.sh manually in the VM. Defaulted to: true. See below for additional options for editing local.conf.
For a lighter devstack installation, you can use the "local.conf"[1] that uses ovn and ovn-octavia, no VM will be created for each load-balancer as is done by the default Octavia provider (Amphora).
References: [1] https://github.com/openstack/kuryr-kubernetes/blob/master/devstack/local.conf.ovn.sample
Additional devstack configuration
To add additional configuration to local.conf before the VM is provisioned, you can create a file called "user_local.conf" in the contrib/vagrant directory of networking-kuryr. This file will be appended to the "local.conf" created during the Vagrant provisioning.
For example, to use OVN as the Neutron plugin with Kuryr, you can create a "user_local.conf" with the following configuration:
enable_plugin networking-ovn https://opendev.org/openstack/networking-ovn
enable_service ovn-northd
enable_service ovn-controller
disable_service q-agt
disable_service q-l3
disable_service q-dhcp