parameters:
  _param:
    salt_minion_ca_host: ${_param:infra_config_hostname}.${_param:cluster_domain}
    salt_minion_ca_authority: salt_master_ca

    # kubelet
    kubelet_fail_on_swap: True

    # kubernetes settings
    kubernetes_admin_user: admin
    kubernetes_admin_password: sbPfel23ZigJF3Bm
    kubernetes_admin_token: PpP6Mm3pAoPVqcKOKUu0x1dh7b1959Fi
    kubernetes_kubelet_token: JJ2PKHxjiU6EYvIt18BqwdSK1HvWh8pt
    kubernetes_kube-proxy_token: jT0hJk9L6cIw5UpYDNhsRwcj3Z2n62B6
    kubernetes_scheduler_token: VgkUHfrW07zNxrb0ucFyX7NBnSJN9Xp6
    kubernetes_controller-manager_token: uXrdZ1YKF6qlYm3sHje2iEXMGAGDWOIU
    kubernetes_dns_token: 0S1I4iJeFjq5fopPwwCwTp3xFpEZfeUl
    etcd_initial_token: IN7KaRMSo3xkGxkjAAPtkRkAgqN4ZNRq

    # docker package version
    kubernetes_docker_package: docker-engine=1.13.1-0~ubuntu-xenial

    # component docker images
    kubernetes_hyperkube_image: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/hyperkube-amd64:v1.10.4-4
    kubernetes_pause_image: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/pause-amd64:v1.10.4-4
    kubernetes_netchecker_agent_probeurls: "http://ipinfo.io"
    kubernetes_virtlet_image: mirantis/virtlet:v1.1.2
    kubernetes_criproxy_version: v0.11.0
    kubernetes_criproxy_checksum: md5=115bbb0c27518db6b0b3bc8cdc5fc897
    kubernetes_dashboard_image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.8.3
    kubernetes_kubedns_image: gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.5
    kubernetes_dnsmasq_image: gcr.io/google_containers/k8s-dns-dnsmasq-amd64:1.14.5
    kubernetes_sidecar_image: gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.5
    kubernetes_dns_autoscaler_image: gcr.io/google_containers/cluster-proportional-autoscaler-amd64:1.0.0

    # switches of addons
    kubernetes_addon_namespace: kube-system
    kubernetes_dns: true
    kubernetes_dashboard: true
    kubernetes_helm_enabled: false
    kubernetes_netchecker_enabled: true
    kubernetes_calico_policy_enabled: false
    kubernetes_virtlet_enabled: false

    # addresses and hostnames
    kubernetes_internal_api_address: 10.254.0.1
    kubernetes_control_hostname: ctl
    kubernetes_control_address: 192.168.10.253
    kubernetes_control_node01_hostname: ctl01
    kubernetes_control_node02_hostname: ctl02
    kubernetes_control_node03_hostname: ctl03
    kubernetes_compute_node01_hostname: cmp01
    kubernetes_compute_node02_hostname: cmp02
    kubernetes_control_node01_address: 172.16.10.101
    kubernetes_control_node02_address: 172.16.10.102
    kubernetes_control_node03_address: 172.16.10.103
    kubernetes_compute_node01_address: 172.16.10.105
    kubernetes_compute_node02_address: 172.16.10.106
    kubernetes_control_node01_deploy_address: 192.168.10.101
    kubernetes_control_node02_deploy_address: 192.168.10.102
    kubernetes_control_node03_deploy_address: 192.168.10.103
    kubernetes_compute_node01_deploy_address: 192.168.10.105
    kubernetes_compute_node02_deploy_address: 192.168.10.106
    kubernetes_proxy_node01_hostname: prx01
    kubernetes_proxy_node01_address: 172.16.10.121

    cluster_vip_address: ${_param:kubernetes_control_address}
    cluster_local_address: ${_param:deploy_address}

    # etcd stuff
    cluster_node01_hostname: ${_param:kubernetes_control_node01_hostname}
    cluster_node01_address: ${_param:kubernetes_control_node01_deploy_address}
    cluster_node01_port: 4001
    cluster_node02_hostname: ${_param:kubernetes_control_node02_hostname}
    cluster_node02_address: ${_param:kubernetes_control_node02_deploy_address}
    cluster_node02_port: 4001
    cluster_node03_hostname: ${_param:kubernetes_control_node03_hostname}
    cluster_node03_address: ${_param:kubernetes_control_node03_deploy_address}
    cluster_node03_port: 4001

    # calico
    calico_private_network: 192.168.0.0
    calico_private_netmask: 16

    # component docker images
    kubernetes_externaldns_image: mirantis/external-dns:latest
    kubernetes_externaldns_provider: coredns

    kubernetes_metallb_addresses_pool: 172.16.10.60-172.16.10.80

    # switches of addons
    kubernetes_coredns_enabled: false
    kubernetes_externaldns_enabled: false
    kubernetes_metallb_enabled: false

  linux:
    network:
      resolv:
        domain: virtual-mcp11-k8s-calico.local
        options:
          - ndots:5
          - timeout:2
          - attempts:2
      purge_hosts: true
      host:
        ctl:
          address: ${_param:kubernetes_control_address}
          names:
          - ${_param:kubernetes_control_hostname}
          - ${_param:kubernetes_control_hostname}.${_param:cluster_domain}
        ctl01:
          address: ${_param:kubernetes_control_node01_address}
          names:
          - ${_param:kubernetes_control_node01_hostname}
          - ${_param:kubernetes_control_node01_hostname}.${_param:cluster_domain}
        ctl02:
          address: ${_param:kubernetes_control_node02_address}
          names:
          - ${_param:kubernetes_control_node02_hostname}
          - ${_param:kubernetes_control_node02_hostname}.${_param:cluster_domain}
        ctl03:
          address: ${_param:kubernetes_control_node03_address}
          names:
          - ${_param:kubernetes_control_node03_hostname}
          - ${_param:kubernetes_control_node03_hostname}.${_param:cluster_domain}
        cmp01:
          address: ${_param:kubernetes_compute_node01_address}
          names:
          - ${_param:kubernetes_compute_node01_hostname}
          - ${_param:kubernetes_compute_node01_hostname}.${_param:cluster_domain}
        cmp02:
          address: ${_param:kubernetes_compute_node02_address}
          names:
          - ${_param:kubernetes_compute_node02_hostname}
          - ${_param:kubernetes_compute_node02_hostname}.${_param:cluster_domain}
        prx01:
          address: ${_param:kubernetes_proxy_node01_address}
          names:
          - ${_param:kubernetes_proxy_node01_hostname}
          - ${_param:kubernetes_proxy_node01_hostname}.${_param:cluster_domain}
    system:
      user:
        root:
          name: root
          password: false
      rc:
        local: |
          #!/bin/sh -e
          #
          # rc.local
          #
          ######### This file is managed by Salt! ##########
          # This script is executed at the end of each multiuser runlevel.
          # Make sure that the script will "exit 0" on success or any other
          # value on error.
          #
          ip r a 10.254.0.0/16 dev ens4
          exit 0
