Ansible playbooks to deploy ovn-kubernetes
The ansible playbooks are able to deploy a kubernetes cluster with Linux and Windows minion nodes.
Minimum required ansible version is
220.127.116.11. The recommended version is
For Linux: Make sure that you are able to SSH into the target nodes without being asked for the password. You can read more here.
For Windows: Follow this guide to setup the node to be used with ansible.
Verifying the setup
To verify the setup and that ansible has been successfully configured you can run the following:
ansible -m setup all
This will connect to the target hosts and will gather host facts. If the command succeeds and everything is green, you're good to go with running the playbook.
How to use
Make sure to update first the inventory with details about the nodes.
To start the playbook, please run the following:
Currently supported Linux nodes:
- Ubuntu 16.04 and 18.04
Currently supported Windows nodes:
- Windows Server 2016 build version 1709 (OS Version 10.0.16299.0)
- Windows Server 2016 build version 1803 (OS Version 10.0.17134.0)
- Windows Server 2019 LTSC and build version 1809 (OS Version 10.0.17763.0)
Ports that have to be opened on public clouds when using the playbooks
The following ports need to be opened if we access the cluster machines via the public address.
- Kubernetes service ports (deployment specific): UDP and TCP
30000 - 32767
- Kubelet (default port): TCP
- Kubernetes API: TCP
8080for HTTP and TCP
Ansible related ports
- WinRM via HTTPS: TCP
5986(for HTTP also TCP
- SSH: TCP
OVN related ports
- OVN Northbound (NB): TCP
- OVN Southbound (SB): TCP
OVS related encapsulation ports
- GENEVE encapsulation (used by default): UDP
- STT encapsulation (optional encapsulation type, no special NIC required): TCP
Further useful ports/types
- Windows RDP Port: 3389 (TCP)
- ICMP: useful for debugging
Work in progress
Support for hybrid cluster with master/minion nodes on different cloud providers.
Different Linux versions support (currently only Ubuntu 16.04 and 18.04 supported)
- Windows containers do not support IPv6 at the moment. You can read more here