You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

130 lines
4.9 KiB

  1. # Directory where the binaries will be installed
  2. bin_dir: /usr/local/bin
  3. # Where the binaries will be downloaded.
  4. # Note: ensure that you've enough disk space (about 1G)
  5. local_release_dir: "/tmp/releases"
  6. # Uncomment this line for CoreOS only.
  7. # Directory where python binary is installed
  8. # ansible_python_interpreter: "/opt/bin/python"
  9. # This is the group that the cert creation scripts chgrp the
  10. # cert files to. Not really changable...
  11. kube_cert_group: kube-cert
  12. # Cluster Loglevel configuration
  13. kube_log_level: 2
  14. # Users to create for basic auth in Kubernetes API via HTTP
  15. kube_api_pwd: "changeme"
  16. kube_users:
  17. kube:
  18. pass: "{{kube_api_pwd}}"
  19. role: admin
  20. root:
  21. pass: "changeme"
  22. role: admin
  23. # Kubernetes cluster name, also will be used as DNS domain
  24. cluster_name: cluster.local
  25. # For some environments, each node has a pubilcally accessible
  26. # address and an address it should bind services to. These are
  27. # really inventory level variables, but described here for consistency.
  28. #
  29. # When advertising access, the access_ip will be used, but will defer to
  30. # ip and then the default ansible ip when unspecified.
  31. #
  32. # When binding to restrict access, the ip variable will be used, but will
  33. # defer to the default ansible ip when unspecified.
  34. #
  35. # The ip variable is used for specific address binding, e.g. listen address
  36. # for etcd. This is use to help with environments like Vagrant or multi-nic
  37. # systems where one address should be preferred over another.
  38. # ip: 10.2.2.2
  39. #
  40. # The access_ip variable is used to define how other nodes should access
  41. # the node. This is used in flannel to allow other flannel nodes to see
  42. # this node for example. The access_ip is really useful AWS and Google
  43. # environments where the nodes are accessed remotely by the "public" ip,
  44. # but don't know about that address themselves.
  45. # access_ip: 1.1.1.1
  46. # Choose network plugin (calico, weave or flannel)
  47. kube_network_plugin: flannel
  48. # Kubernetes internal network for services, unused block of space.
  49. kube_service_addresses: 10.233.0.0/18
  50. # internal network. When used, it will assign IP
  51. # addresses from this range to individual pods.
  52. # This network must be unused in your network infrastructure!
  53. kube_pods_subnet: 10.233.64.0/18
  54. # internal network total size (optional). This is the prefix of the
  55. # entire network. Must be unused in your environment.
  56. # kube_network_prefix: 18
  57. # internal network node size allocation (optional). This is the size allocated
  58. # to each node on your network. With these defaults you should have
  59. # room for 4096 nodes with 254 pods per node.
  60. kube_network_node_prefix: 24
  61. # With calico it is possible to distributed routes with border routers of the datacenter.
  62. peer_with_router: false
  63. # Warning : enabling router peering will disable calico's default behavior ('node mesh').
  64. # The subnets of each nodes will be distributed by the datacenter router
  65. # The port the API Server will be listening on.
  66. kube_apiserver_ip: "{{ kube_service_addresses|ipaddr('net')|ipaddr(1)|ipaddr('address') }}"
  67. kube_apiserver_port: 443 # (https)
  68. kube_apiserver_insecure_port: 8080 # (http)
  69. # Internal DNS configuration.
  70. # Kubernetes can create and mainatain its own DNS server to resolve service names
  71. # into appropriate IP addresses. It's highly advisable to run such DNS server,
  72. # as it greatly simplifies configuration of your applications - you can use
  73. # service names instead of magic environment variables.
  74. # You still must manually configure all your containers to use this DNS server,
  75. # Kubernetes won't do this for you (yet).
  76. # Upstream dns servers used by dnsmasq
  77. upstream_dns_servers:
  78. - 8.8.8.8
  79. - 4.4.8.8
  80. #
  81. # # Use dns server : https://github.com/ansibl8s/k8s-skydns/blob/master/skydns-README.md
  82. dns_setup: true
  83. dns_domain: "{{ cluster_name }}"
  84. #
  85. # # Ip address of the kubernetes skydns service
  86. skydns_server: "{{ kube_service_addresses|ipaddr('net')|ipaddr(3)|ipaddr('address') }}"
  87. dns_server: "{{ kube_service_addresses|ipaddr('net')|ipaddr(2)|ipaddr('address') }}"
  88. # There are some changes specific to the cloud providers
  89. # for instance we need to encapsulate packets with some network plugins
  90. # If set the possible values are either 'gce', 'aws' or 'openstack'
  91. # When openstack is used make sure to source in the openstack credentials
  92. # like you would do when using nova-client before starting the playbook.
  93. # cloud_provider:
  94. # For multi masters architecture:
  95. # kube-proxy doesn't support multiple apiservers for the time being so you'll need to configure your own loadbalancer
  96. # This domain name will be inserted into the /etc/hosts file of all servers
  97. # configuration example with haproxy :
  98. # listen kubernetes-apiserver-https
  99. # bind 10.99.0.21:8383
  100. # option ssl-hello-chk
  101. # mode tcp
  102. # timeout client 3h
  103. # timeout server 3h
  104. # server master1 10.99.0.26:443
  105. # server master2 10.99.0.27:443
  106. # balance roundrobin
  107. # apiserver_loadbalancer_domain_name: "lb-apiserver.kubernetes.local"
  108. ##Set these proxy values in order to update docker daemon to use proxies
  109. #http_proxy: ""
  110. #https_proxy: ""
  111. #no_proxy: ""