Antoine Legrand
6 years ago
11 changed files with 248 additions and 246 deletions
Split View
Diff Options
-
155inventory/sample/group_vars/all.yml
-
86inventory/sample/group_vars/all/all.yml
-
14inventory/sample/group_vars/all/azure.yml
-
2inventory/sample/group_vars/all/coreos.yml
-
35inventory/sample/group_vars/all/docker.yml
-
15inventory/sample/group_vars/all/oci.yml
-
15inventory/sample/group_vars/all/openstack.yml
-
18inventory/sample/group_vars/etcd.yml
-
54inventory/sample/group_vars/k8s-cluster/addons.yml
-
94inventory/sample/group_vars/k8s-cluster/k8s-cluster.yml
-
6inventory/sample/hosts.ini
@ -1,155 +0,0 @@ |
|||
# Valid bootstrap options (required): ubuntu, coreos, centos, none |
|||
bootstrap_os: none |
|||
|
|||
#Directory where etcd data stored |
|||
etcd_data_dir: /var/lib/etcd |
|||
|
|||
# Directory where the binaries will be installed |
|||
bin_dir: /usr/local/bin |
|||
|
|||
## The access_ip variable is used to define how other nodes should access |
|||
## the node. This is used in flannel to allow other flannel nodes to see |
|||
## this node for example. The access_ip is really useful AWS and Google |
|||
## environments where the nodes are accessed remotely by the "public" ip, |
|||
## but don't know about that address themselves. |
|||
#access_ip: 1.1.1.1 |
|||
|
|||
### ETCD: disable peer client cert authentication. |
|||
# This affects ETCD_PEER_CLIENT_CERT_AUTH variable |
|||
#etcd_peer_client_auth: true |
|||
|
|||
## External LB example config |
|||
## apiserver_loadbalancer_domain_name: "elb.some.domain" |
|||
#loadbalancer_apiserver: |
|||
# address: 1.2.3.4 |
|||
# port: 1234 |
|||
|
|||
## Internal loadbalancers for apiservers |
|||
#loadbalancer_apiserver_localhost: true |
|||
|
|||
## Local loadbalancer should use this port instead, if defined. |
|||
## Defaults to kube_apiserver_port (6443) |
|||
#nginx_kube_apiserver_port: 8443 |
|||
|
|||
### OTHER OPTIONAL VARIABLES |
|||
## For some things, kubelet needs to load kernel modules. For example, dynamic kernel services are needed |
|||
## for mounting persistent volumes into containers. These may not be loaded by preinstall kubernetes |
|||
## processes. For example, ceph and rbd backed volumes. Set to true to allow kubelet to load kernel |
|||
## modules. |
|||
#kubelet_load_modules: false |
|||
|
|||
## Internal network total size. This is the prefix of the |
|||
## entire network. Must be unused in your environment. |
|||
#kube_network_prefix: 18 |
|||
|
|||
## With calico it is possible to distributed routes with border routers of the datacenter. |
|||
## Warning : enabling router peering will disable calico's default behavior ('node mesh'). |
|||
## The subnets of each nodes will be distributed by the datacenter router |
|||
#peer_with_router: false |
|||
|
|||
## Upstream dns servers used by dnsmasq |
|||
#upstream_dns_servers: |
|||
# - 8.8.8.8 |
|||
# - 8.8.4.4 |
|||
|
|||
## There are some changes specific to the cloud providers |
|||
## for instance we need to encapsulate packets with some network plugins |
|||
## If set the possible values are either 'gce', 'aws', 'azure', 'openstack', 'vsphere', 'oci', or 'external' |
|||
## When openstack is used make sure to source in the openstack credentials |
|||
## like you would do when using nova-client before starting the playbook. |
|||
#cloud_provider: |
|||
|
|||
## When azure is used, you need to also set the following variables. |
|||
## see docs/azure.md for details on how to get these values |
|||
#azure_tenant_id: |
|||
#azure_subscription_id: |
|||
#azure_aad_client_id: |
|||
#azure_aad_client_secret: |
|||
#azure_resource_group: |
|||
#azure_location: |
|||
#azure_subnet_name: |
|||
#azure_security_group_name: |
|||
#azure_vnet_name: |
|||
#azure_vnet_resource_group: |
|||
#azure_route_table_name: |
|||
|
|||
## When OpenStack is used, Cinder version can be explicitly specified if autodetection fails (Fixed in 1.9: https://github.com/kubernetes/kubernetes/issues/50461) |
|||
#openstack_blockstorage_version: "v1/v2/auto (default)" |
|||
## When OpenStack is used, if LBaaSv2 is available you can enable it with the following 2 variables. |
|||
#openstack_lbaas_enabled: True |
|||
#openstack_lbaas_subnet_id: "Neutron subnet ID (not network ID) to create LBaaS VIP" |
|||
## To enable automatic floating ip provisioning, specify a subnet. |
|||
#openstack_lbaas_floating_network_id: "Neutron network ID (not subnet ID) to get floating IP from, disabled by default" |
|||
## Override default LBaaS behavior |
|||
#openstack_lbaas_use_octavia: False |
|||
#openstack_lbaas_method: "ROUND_ROBIN" |
|||
#openstack_lbaas_provider: "haproxy" |
|||
#openstack_lbaas_create_monitor: "yes" |
|||
#openstack_lbaas_monitor_delay: "1m" |
|||
#openstack_lbaas_monitor_timeout: "30s" |
|||
#openstack_lbaas_monitor_max_retries: "3" |
|||
|
|||
## When Oracle Cloud Infrastructure is used, set these variables |
|||
#oci_private_key: |
|||
#oci_region_id: |
|||
#oci_tenancy_id: |
|||
#oci_user_id: |
|||
#oci_user_fingerprint: |
|||
#oci_compartment_id: |
|||
#oci_vnc_id: |
|||
#oci_subnet1_id: |
|||
#oci_subnet2_id: |
|||
## Overide these default behaviors if you wish |
|||
#oci_security_list_management: All |
|||
# If oci_use_instance_principals is true, you do not need to set the region, tenancy, user, key, passphrase, or fingerprint |
|||
#oci_use_instance_principals: false |
|||
#oci_cloud_controller_version: 0.5.0 |
|||
|
|||
## Uncomment to enable experimental kubeadm deployment mode |
|||
#kubeadm_enabled: false |
|||
## Set these proxy values in order to update package manager and docker daemon to use proxies |
|||
#http_proxy: "" |
|||
#https_proxy: "" |
|||
## Refer to roles/kubespray-defaults/defaults/main.yml before modifying no_proxy |
|||
#no_proxy: "" |
|||
|
|||
## Uncomment this if you want to force overlay/overlay2 as docker storage driver |
|||
## Please note that overlay2 is only supported on newer kernels |
|||
#docker_storage_options: -s overlay2 |
|||
|
|||
# Uncomment this if you have more than 3 nameservers, then we'll only use the first 3. |
|||
#docker_dns_servers_strict: false |
|||
|
|||
## Certificate Management |
|||
## This setting determines whether certs are generated via scripts or whether a |
|||
## cluster of Hashicorp's Vault is started to issue certificates (using etcd |
|||
## as a backend). Options are "script" or "vault" |
|||
#cert_management: script |
|||
|
|||
# Set to true to allow pre-checks to fail and continue deployment |
|||
#ignore_assert_errors: false |
|||
|
|||
## Etcd auto compaction retention for mvcc key value store in hour |
|||
#etcd_compaction_retention: 0 |
|||
|
|||
## Set level of detail for etcd exported metrics, specify 'extensive' to include histogram metrics. |
|||
#etcd_metrics: basic |
|||
|
|||
## Etcd is restricted by default to 512M on systems under 4GB RAM, 512MB is not enough for much more than testing. |
|||
## Set this if your etcd nodes have less than 4GB but you want more RAM for etcd. Set to 0 for unrestricted RAM. |
|||
#etcd_memory_limit: "512M" |
|||
|
|||
## Etcd has a default of 2G for its space quota. If you put a value in etcd_memory_limit which is less than |
|||
## etcd_quota_backend_bytes, you may encounter out of memory terminations of the etcd cluster. Please check |
|||
## etcd documentation for more information. |
|||
#etcd_quota_backend_bytes: "2G" |
|||
|
|||
# The read-only port for the Kubelet to serve on with no authentication/authorization. Uncomment to enable. |
|||
#kube_read_only_port: 10255 |
|||
|
|||
# Does coreos need auto upgrade, default is true |
|||
#coreos_auto_upgrade: true |
|||
|
|||
# Set true to download and cache container |
|||
#download_container: true |
|||
|
@ -0,0 +1,86 @@ |
|||
## Valid bootstrap options (required): ubuntu, coreos, centos, none |
|||
## If the OS is not listed here, it means it doesn't require extra/bootstrap steps. |
|||
## In example, python is not available on 'coreos' so it must be installed before |
|||
## anything else. In the opposite, Debian has already all its dependencies fullfiled, then bootstrap_os should be set to `none`. |
|||
bootstrap_os: none |
|||
|
|||
## Directory where etcd data stored |
|||
etcd_data_dir: /var/lib/etcd |
|||
|
|||
## Directory where the binaries will be installed |
|||
bin_dir: /usr/local/bin |
|||
|
|||
## The access_ip variable is used to define how other nodes should access |
|||
## the node. This is used in flannel to allow other flannel nodes to see |
|||
## this node for example. The access_ip is really useful AWS and Google |
|||
## environments where the nodes are accessed remotely by the "public" ip, |
|||
## but don't know about that address themselves. |
|||
#access_ip: 1.1.1.1 |
|||
|
|||
|
|||
## External LB example config |
|||
## apiserver_loadbalancer_domain_name: "elb.some.domain" |
|||
#loadbalancer_apiserver: |
|||
# address: 1.2.3.4 |
|||
# port: 1234 |
|||
|
|||
## Internal loadbalancers for apiservers |
|||
#loadbalancer_apiserver_localhost: true |
|||
|
|||
## Local loadbalancer should use this port instead, if defined. |
|||
## Defaults to kube_apiserver_port (6443) |
|||
#nginx_kube_apiserver_port: 8443 |
|||
|
|||
### OTHER OPTIONAL VARIABLES |
|||
## For some things, kubelet needs to load kernel modules. For example, dynamic kernel services are needed |
|||
## for mounting persistent volumes into containers. These may not be loaded by preinstall kubernetes |
|||
## processes. For example, ceph and rbd backed volumes. Set to true to allow kubelet to load kernel |
|||
## modules. |
|||
#kubelet_load_modules: false |
|||
|
|||
## Internal network total size. This is the prefix of the |
|||
## entire network. Must be unused in your environment. |
|||
#kube_network_prefix: 18 |
|||
|
|||
## With calico it is possible to distributed routes with border routers of the datacenter. |
|||
## Warning : enabling router peering will disable calico's default behavior ('node mesh'). |
|||
## The subnets of each nodes will be distributed by the datacenter router |
|||
#peer_with_router: false |
|||
|
|||
## Upstream dns servers used by dnsmasq |
|||
#upstream_dns_servers: |
|||
# - 8.8.8.8 |
|||
# - 8.8.4.4 |
|||
|
|||
## There are some changes specific to the cloud providers |
|||
## for instance we need to encapsulate packets with some network plugins |
|||
## If set the possible values are either 'gce', 'aws', 'azure', 'openstack', 'vsphere', 'oci', or 'external' |
|||
## When openstack is used make sure to source in the openstack credentials |
|||
## like you would do when using nova-client before starting the playbook. |
|||
#cloud_provider: |
|||
|
|||
|
|||
## Uncomment to enable experimental kubeadm deployment mode |
|||
#kubeadm_enabled: false |
|||
|
|||
## Set these proxy values in order to update package manager and docker daemon to use proxies |
|||
#http_proxy: "" |
|||
#https_proxy: "" |
|||
|
|||
## Refer to roles/kubespray-defaults/defaults/main.yml before modifying no_proxy |
|||
#no_proxy: "" |
|||
|
|||
## Certificate Management |
|||
## This setting determines whether certs are generated via scripts or whether a |
|||
## cluster of Hashicorp's Vault is started to issue certificates (using etcd |
|||
## as a backend). Options are "script" or "vault" |
|||
#cert_management: script |
|||
|
|||
## Set to true to allow pre-checks to fail and continue deployment |
|||
#ignore_assert_errors: false |
|||
|
|||
## The read-only port for the Kubelet to serve on with no authentication/authorization. Uncomment to enable. |
|||
#kube_read_only_port: 10255 |
|||
|
|||
## Set true to download and cache container |
|||
#download_container: true |
@ -0,0 +1,14 @@ |
|||
## When azure is used, you need to also set the following variables. |
|||
## see docs/azure.md for details on how to get these values |
|||
|
|||
#azure_tenant_id: |
|||
#azure_subscription_id: |
|||
#azure_aad_client_id: |
|||
#azure_aad_client_secret: |
|||
#azure_resource_group: |
|||
#azure_location: |
|||
#azure_subnet_name: |
|||
#azure_security_group_name: |
|||
#azure_vnet_name: |
|||
#azure_vnet_resource_group: |
|||
#azure_route_table_name: |
@ -0,0 +1,2 @@ |
|||
## Does coreos need auto upgrade, default is true |
|||
#coreos_auto_upgrade: true |
@ -0,0 +1,35 @@ |
|||
## Uncomment this if you want to force overlay/overlay2 as docker storage driver |
|||
## Please note that overlay2 is only supported on newer kernels |
|||
|
|||
#docker_storage_options: -s overlay2 |
|||
|
|||
## Uncomment this if you have more than 3 nameservers, then we'll only use the first 3. |
|||
|
|||
#docker_dns_servers_strict: false |
|||
|
|||
# Path used to store Docker data |
|||
docker_daemon_graph: "/var/lib/docker" |
|||
|
|||
## Used to set docker daemon iptables options to true |
|||
#docker_iptables_enabled: "true" |
|||
|
|||
## A string of extra options to pass to the docker daemon. |
|||
## This string should be exactly as you wish it to appear. |
|||
## An obvious use case is allowing insecure-registry access |
|||
## to self hosted registries like so: |
|||
docker_options: >- |
|||
--insecure-registry={{ kube_service_addresses }} --graph={{ docker_daemon_graph }} {{ docker_log_opts }} |
|||
{%- if ansible_architecture == "aarch64" and ansible_os_family == "RedHat" %} |
|||
--add-runtime docker-runc=/usr/libexec/docker/docker-runc-current |
|||
--default-runtime=docker-runc --exec-opt native.cgroupdriver=systemd |
|||
--userland-proxy-path=/usr/libexec/docker/docker-proxy-current --signature-verification=false |
|||
{%- endif -%} |
|||
|
|||
docker_bin_dir: "/usr/bin" |
|||
|
|||
## If non-empty will override default system MounFlags value. |
|||
## This option takes a mount propagation flag: shared, slave |
|||
## or private, which control whether mounts in the file system |
|||
## namespace set up for docker will receive or propagate mounts |
|||
## and unmounts. Leave empty for system default |
|||
docker_mount_flags: |
@ -0,0 +1,15 @@ |
|||
## When Oracle Cloud Infrastructure is used, set these variables |
|||
#oci_private_key: |
|||
#oci_region_id: |
|||
#oci_tenancy_id: |
|||
#oci_user_id: |
|||
#oci_user_fingerprint: |
|||
#oci_compartment_id: |
|||
#oci_vnc_id: |
|||
#oci_subnet1_id: |
|||
#oci_subnet2_id: |
|||
## Overide these default behaviors if you wish |
|||
#oci_security_list_management: All |
|||
# If oci_use_instance_principals is true, you do not need to set the region, tenancy, user, key, passphrase, or fingerprint |
|||
#oci_use_instance_principals: false |
|||
#oci_cloud_controller_version: 0.5.0 |
@ -0,0 +1,15 @@ |
|||
## When OpenStack is used, Cinder version can be explicitly specified if autodetection fails (Fixed in 1.9: https://github.com/kubernetes/kubernetes/issues/50461) |
|||
#openstack_blockstorage_version: "v1/v2/auto (default)" |
|||
## When OpenStack is used, if LBaaSv2 is available you can enable it with the following 2 variables. |
|||
#openstack_lbaas_enabled: True |
|||
#openstack_lbaas_subnet_id: "Neutron subnet ID (not network ID) to create LBaaS VIP" |
|||
## To enable automatic floating ip provisioning, specify a subnet. |
|||
#openstack_lbaas_floating_network_id: "Neutron network ID (not subnet ID) to get floating IP from, disabled by default" |
|||
## Override default LBaaS behavior |
|||
#openstack_lbaas_use_octavia: False |
|||
#openstack_lbaas_method: "ROUND_ROBIN" |
|||
#openstack_lbaas_provider: "haproxy" |
|||
#openstack_lbaas_create_monitor: "yes" |
|||
#openstack_lbaas_monitor_delay: "1m" |
|||
#openstack_lbaas_monitor_timeout: "30s" |
|||
#openstack_lbaas_monitor_max_retries: "3" |
@ -0,0 +1,18 @@ |
|||
## Etcd auto compaction retention for mvcc key value store in hour |
|||
#etcd_compaction_retention: 0 |
|||
|
|||
## Set level of detail for etcd exported metrics, specify 'extensive' to include histogram metrics. |
|||
#etcd_metrics: basic |
|||
|
|||
## Etcd is restricted by default to 512M on systems under 4GB RAM, 512MB is not enough for much more than testing. |
|||
## Set this if your etcd nodes have less than 4GB but you want more RAM for etcd. Set to 0 for unrestricted RAM. |
|||
#etcd_memory_limit: "512M" |
|||
|
|||
## Etcd has a default of 2G for its space quota. If you put a value in etcd_memory_limit which is less than |
|||
## etcd_quota_backend_bytes, you may encounter out of memory terminations of the etcd cluster. Please check |
|||
## etcd documentation for more information. |
|||
#etcd_quota_backend_bytes: "2G" |
|||
|
|||
### ETCD: disable peer client cert authentication. |
|||
# This affects ETCD_PEER_CLIENT_CERT_AUTH variable |
|||
#etcd_peer_client_auth: true |
@ -0,0 +1,54 @@ |
|||
# Kubernetes dashboard |
|||
# RBAC required. see docs/getting-started.md for access details. |
|||
dashboard_enabled: true |
|||
|
|||
# Monitoring apps for k8s |
|||
efk_enabled: false |
|||
|
|||
# Helm deployment |
|||
helm_enabled: false |
|||
|
|||
# Registry deployment |
|||
registry_enabled: false |
|||
# registry_namespace: "{{ system_namespace }}" |
|||
# registry_storage_class: "" |
|||
# registry_disk_size: "10Gi" |
|||
|
|||
# Local volume provisioner deployment |
|||
local_volume_provisioner_enabled: false |
|||
# local_volume_provisioner_namespace: "{{ system_namespace }}" |
|||
# local_volume_provisioner_base_dir: /mnt/disks |
|||
# local_volume_provisioner_mount_dir: /mnt/disks |
|||
# local_volume_provisioner_storage_class: local-storage |
|||
|
|||
# CephFS provisioner deployment |
|||
cephfs_provisioner_enabled: false |
|||
# cephfs_provisioner_namespace: "cephfs-provisioner" |
|||
# cephfs_provisioner_cluster: ceph |
|||
# cephfs_provisioner_monitors: "172.24.0.1:6789,172.24.0.2:6789,172.24.0.3:6789" |
|||
# cephfs_provisioner_admin_id: admin |
|||
# cephfs_provisioner_secret: secret |
|||
# cephfs_provisioner_storage_class: cephfs |
|||
# cephfs_provisioner_reclaim_policy: Delete |
|||
# cephfs_provisioner_claim_root: /volumes |
|||
# cephfs_provisioner_deterministic_names: true |
|||
|
|||
# Nginx ingress controller deployment |
|||
ingress_nginx_enabled: false |
|||
# ingress_nginx_host_network: false |
|||
# ingress_nginx_nodeselector: |
|||
# node-role.kubernetes.io/master: "true" |
|||
# ingress_nginx_namespace: "ingress-nginx" |
|||
# ingress_nginx_insecure_port: 80 |
|||
# ingress_nginx_secure_port: 443 |
|||
# ingress_nginx_configmap: |
|||
# map-hash-bucket-size: "128" |
|||
# ssl-protocols: "SSLv2" |
|||
# ingress_nginx_configmap_tcp_services: |
|||
# 9000: "default/example-go:8080" |
|||
# ingress_nginx_configmap_udp_services: |
|||
# 53: "kube-system/kube-dns:53" |
|||
|
|||
# Cert manager deployment |
|||
cert_manager_enabled: false |
|||
# cert_manager_namespace: "cert-manager" |
Write
Preview
Loading…
Cancel
Save