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.

184 lines
6.8 KiB

6 years ago
  1. ---
  2. # change to 0.0.0.0 to enable insecure access from anywhere (not recommended)
  3. kube_apiserver_insecure_bind_address: 127.0.0.1
  4. # advertised host IP for kubelet. This affects network plugin config. Take caution
  5. kubelet_address: "{{ ip | default(fallback_ips[inventory_hostname]) }}"
  6. # bind address for kubelet. Set to 0.0.0.0 to listen on all interfaces
  7. kubelet_bind_address: "{{ ip | default('0.0.0.0') }}"
  8. # resolv.conf to base dns config
  9. kube_resolv_conf: "/etc/resolv.conf"
  10. # Set to empty to avoid cgroup creation
  11. kubelet_enforce_node_allocatable: "\"\""
  12. # Set runtime cgroups
  13. kubelet_runtime_cgroups: "/systemd/system.slice"
  14. # Set kubelet cgroups
  15. kubelet_kubelet_cgroups: "/systemd/system.slice"
  16. ### fail with swap on (default true)
  17. kubelet_fail_swap_on: true
  18. # Reserve this space for kube resources
  19. kube_memory_reserved: 256Mi
  20. kube_cpu_reserved: 100m
  21. # Reservation for master hosts
  22. kube_master_memory_reserved: 512Mi
  23. kube_master_cpu_reserved: 200m
  24. # Set to true to reserve resources for system daemons
  25. system_reserved: false
  26. system_memory_reserved: 512Mi
  27. system_cpu_reserved: 500m
  28. # Reservation for master hosts
  29. system_master_memory_reserved: 256Mi
  30. system_master_cpu_reserved: 250m
  31. kubelet_status_update_frequency: 10s
  32. # Requests for load balancer app
  33. loadbalancer_apiserver_memory_requests: 32M
  34. loadbalancer_apiserver_cpu_requests: 25m
  35. loadbalancer_apiserver_keepalive_timeout: 5m
  36. # Uncomment if you need to enable deprecated runtimes
  37. # kube_api_runtime_config:
  38. # - apps/v1beta1=true
  39. # - apps/v1beta2=true
  40. # - extensions/v1beta1/daemonsets=true
  41. # - extensions/v1beta1/deployments=true
  42. # - extensions/v1beta1/replicasets=true
  43. # - extensions/v1beta1/networkpolicies=true
  44. # - extensions/v1beta1/podsecuritypolicies=true
  45. # A port range to reserve for services with NodePort visibility.
  46. # Inclusive at both ends of the range.
  47. kube_apiserver_node_port_range: "30000-32767"
  48. # Configure the amount of pods able to run on single node
  49. # default is equal to application default
  50. kubelet_max_pods: 110
  51. ## Support parameters to be passed to kubelet via kubelet-config.yaml
  52. kubelet_config_extra_args: {}
  53. ## Support parameters to be passed to kubelet via kubelet-config.yaml only on nodes, not masters
  54. kubelet_node_config_extra_args: {}
  55. # Maximum number of container log files that can be present for a container.
  56. kubelet_logfiles_max_nr: 5
  57. # Maximum size of the container log file before it is rotated
  58. kubelet_logfiles_max_size: 10Mi
  59. ## Support custom flags to be passed to kubelet
  60. kubelet_custom_flags: []
  61. ## Support custom flags to be passed to kubelet only on nodes, not masters
  62. kubelet_node_custom_flags: []
  63. # If non-empty, will use this string as identification instead of the actual hostname
  64. kube_override_hostname: >-
  65. {%- if cloud_provider is defined and cloud_provider in [ 'aws' ] -%}
  66. {%- else -%}
  67. {{ inventory_hostname }}
  68. {%- endif -%}
  69. # The read-only port for the Kubelet to serve on with no authentication/authorization.
  70. kube_read_only_port: 0
  71. # Port for healthz for Kubelet
  72. kubelet_healthz_port: 10248
  73. # Bind address for healthz for Kubelet
  74. kubelet_healthz_bind_address: 127.0.0.1
  75. # sysctl_file_path to add sysctl conf to
  76. sysctl_file_path: "/etc/sysctl.d/99-sysctl.conf"
  77. # For the openstack integration kubelet will need credentials to access
  78. # openstack apis like nova and cinder. Per default this values will be
  79. # read from the environment.
  80. openstack_auth_url: "{{ lookup('env','OS_AUTH_URL') }}"
  81. openstack_username: "{{ lookup('env','OS_USERNAME') }}"
  82. openstack_password: "{{ lookup('env','OS_PASSWORD') }}"
  83. openstack_region: "{{ lookup('env','OS_REGION_NAME') }}"
  84. openstack_tenant_id: "{{ lookup('env','OS_TENANT_ID')| default(lookup('env','OS_PROJECT_ID')|default(lookup('env','OS_PROJECT_NAME'),true),true) }}"
  85. openstack_tenant_name: "{{ lookup('env','OS_TENANT_NAME') }}"
  86. openstack_domain_name: "{{ lookup('env','OS_USER_DOMAIN_NAME') }}"
  87. openstack_domain_id: "{{ lookup('env','OS_USER_DOMAIN_ID') }}"
  88. # For the vsphere integration, kubelet will need credentials to access
  89. # vsphere apis
  90. # Documentation regarding these values can be found
  91. # https://github.com/kubernetes/kubernetes/blob/master/pkg/cloudprovider/providers/vsphere/vsphere.go#L105
  92. vsphere_vcenter_ip: "{{ lookup('env', 'VSPHERE_VCENTER') }}"
  93. vsphere_vcenter_port: "{{ lookup('env', 'VSPHERE_VCENTER_PORT') }}"
  94. vsphere_user: "{{ lookup('env', 'VSPHERE_USER') }}"
  95. vsphere_password: "{{ lookup('env', 'VSPHERE_PASSWORD') }}"
  96. vsphere_datacenter: "{{ lookup('env', 'VSPHERE_DATACENTER') }}"
  97. vsphere_datastore: "{{ lookup('env', 'VSPHERE_DATASTORE') }}"
  98. vsphere_working_dir: "{{ lookup('env', 'VSPHERE_WORKING_DIR') }}"
  99. vsphere_insecure: "{{ lookup('env', 'VSPHERE_INSECURE') }}"
  100. vsphere_resource_pool: "{{ lookup('env', 'VSPHERE_RESOURCE_POOL') }}"
  101. vsphere_scsi_controller_type: pvscsi
  102. # vsphere_public_network is name of the network the VMs are joined to
  103. vsphere_public_network: "{{ lookup('env', 'VSPHERE_PUBLIC_NETWORK')|default('') }}"
  104. ## When azure is used, you need to also set the following variables.
  105. ## see docs/azure.md for details on how to get these values
  106. # azure_tenant_id:
  107. # azure_subscription_id:
  108. # azure_aad_client_id:
  109. # azure_aad_client_secret:
  110. # azure_resource_group:
  111. # azure_location:
  112. # azure_subnet_name:
  113. # azure_security_group_name:
  114. # azure_vnet_name:
  115. # azure_route_table_name:
  116. # supported values are 'standard' or 'vmss'
  117. # azure_vmtype: standard
  118. # Sku of Load Balancer and Public IP. Candidate values are: basic and standard.
  119. azure_loadbalancer_sku: basic
  120. # excludes master nodes from standard load balancer.
  121. azure_exclude_master_from_standard_lb: true
  122. # disables the outbound SNAT for public load balancer rules
  123. azure_disable_outbound_snat: false
  124. # use instance metadata service where possible
  125. azure_use_instance_metadata: true
  126. # use specific Azure API endpoints
  127. azure_cloud: AzurePublicCloud
  128. ## Support tls min version, Possible values: VersionTLS10, VersionTLS11, VersionTLS12, VersionTLS13.
  129. # tls_min_version: ""
  130. ## Support tls cipher suites.
  131. # tls_cipher_suites:
  132. # - TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
  133. # - TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
  134. # - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
  135. # - TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
  136. # - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
  137. # - TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305
  138. # - TLS_ECDHE_ECDSA_WITH_RC4_128_SHA
  139. # - TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA
  140. # - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
  141. # - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
  142. # - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
  143. # - TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
  144. # - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  145. # - TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305
  146. # - TLS_ECDHE_RSA_WITH_RC4_128_SHA
  147. # - TLS_RSA_WITH_3DES_EDE_CBC_SHA
  148. # - TLS_RSA_WITH_AES_128_CBC_SHA
  149. # - TLS_RSA_WITH_AES_128_CBC_SHA256
  150. # - TLS_RSA_WITH_AES_128_GCM_SHA256
  151. # - TLS_RSA_WITH_AES_256_CBC_SHA
  152. # - TLS_RSA_WITH_AES_256_GCM_SHA384
  153. # - TLS_RSA_WITH_RC4_128_SHA