Bring in kubernetes scenario
[fuel.git] / mcp / reclass / classes / cluster / mcp-k8s-calico-noha / kubernetes / init.yml.j2
1 ##############################################################################
2 # Copyright (c) 2019 Mirantis Inc., Enea AB and others.
3 # All rights reserved. This program and the accompanying materials
4 # are made available under the terms of the Apache License, Version 2.0
5 # which accompanies this distribution, and is available at
6 # http://www.apache.org/licenses/LICENSE-2.0
7 ##############################################################################
8 {%- import 'net_map.j2' as nm with context %}
9 ---
10 parameters:
11   _param:
12     salt_minion_ca_authority: salt_master_ca
13
14     # kubelet
15     kubelet_fail_on_swap: true
16
17     # kubernetes settings
18     kubernetes_admin_user: admin
19     kubernetes_admin_password: sbPfel23ZigJF3Bm
20     kubernetes_admin_token: PpP6Mm3pAoPVqcKOKUu0x1dh7b1959Fi
21     kubernetes_kubelet_token: JJ2PKHxjiU6EYvIt18BqwdSK1HvWh8pt
22     kubernetes_kube-proxy_token: jT0hJk9L6cIw5UpYDNhsRwcj3Z2n62B6
23     kubernetes_scheduler_token: VgkUHfrW07zNxrb0ucFyX7NBnSJN9Xp6
24     kubernetes_controller-manager_token: uXrdZ1YKF6qlYm3sHje2iEXMGAGDWOIU
25     kubernetes_dns_token: 0S1I4iJeFjq5fopPwwCwTp3xFpEZfeUl
26     etcd_initial_token: IN7KaRMSo3xkGxkjAAPtkRkAgqN4ZNRq
27     kubernetes_netchecker_agent_probeurls: "http://ipinfo.io"
28
29     # addresses and hostnames
30     kubernetes_internal_api_address: 10.254.0.1
31     kubernetes_internal_dns_address: 10.254.0.10
32     kubernetes_control_hostname: ctl
33     kubernetes_control_node01_hostname: ctl01
34     kubernetes_compute01_hostname: cmp001
35     kubernetes_compute02_hostname: cmp002
36     kubernetes_control_node01_address: ${_param:openstack_control_address}
37     kubernetes_control_address: ${_param:kubernetes_control_node01_address}
38     master_address: ${_param:kubernetes_control_node01_address}
39     cluster_local_address: ${_param:single_address}
40
41     # cert
42     control_address: ${_param:kubernetes_control_node01_address}
43
44     # etcd stuff
45     node_hostname: ${_param:kubernetes_control_node01_hostname}
46     node_address: ${_param:kubernetes_control_node01_address}
47     node_port: 4001
48
49     # calico
50     calico_private_network: 192.168.0.0
51     calico_private_netmask: 16
52
53     # coredns
54     kubernetes_externaldns_provider: coredns
55     kubernetes_metallb_addresses_pool: 172.16.10.70-172.16.10.95
56
57     # switches of addons
58     kubernetes_kubedns_enabled: false
59     kubernetes_externaldns_enabled: false
60     kubernetes_coredns_enabled: true
61     kubernetes_dashboard: false
62     kubernetes_virtlet_enabled: false
63     kubernetes_flannel_enabled: false
64     kubernetes_genie_enabled: false
65     kubernetes_calico_enabled: true
66     kubernetes_opencontrail_enabled: false
67     kubernetes_contrail_network_controller_enabled: false
68     kubernetes_metallb_enabled: false
69     kubernetes_ingressnginx_enabled: false
70     kubernetes_rbd_enabled: false
71     kubernetes_helm_enabled: false
72     kubernetes_netchecker_enabled: true
73     kubernetes_calico_policy_enabled: false
74     kubernetes_metrics_server_enabled: false
75
76     kubernetes_ingressnginx_controller_replicas: 1
77     kubernetes_virtlet_use_apparmor: false
78
79     kubernetes_addon_namespace: kube-system
80
81
82     # Cloud providers parameters
83     kubernetes_cloudprovider_enabled: false
84     kubernetes_cloudprovider_type: 'openstack'
85
86   linux:
87     system:
88       kernel:
89         sysctl:
90           net.ipv4.tcp_congestion_control: yeah
91           net.ipv4.tcp_slow_start_after_idle: 0
92           net.ipv4.tcp_fin_timeout: 30
93     network:
94       host:
95         ctl01:
96           address: ${_param:kubernetes_control_node01_address}
97           names:
98             - ctl01
99             - ctl01.${_param:cluster_domain}
100 {%- for cmp in range(1, nm.cmp_nodes + 1) %}
101   {%- set h = 'cmp%03d' | format(cmp) %}
102   {%- set mgmt = nm.net_mgmt_hosts | length + nm.start_ip[nm.net_mgmt] + loop.index %}
103         {{ h }}:
104           address: {{ nm.net_mgmt | ipnet_hostaddr(mgmt) }}
105           names:
106             - {{ h }}
107             - {{ h }}.${_param:cluster_domain}
108 {%- endfor %}