--- local_release_dir: /tmp/releases download_cache_dir: /tmp/kubespray_cache # do not delete remote cache files after using them # NOTE: Setting this parameter to TRUE is only really useful when developing kubespray download_keep_remote_cache: false # Only useful when download_run_once is false: Localy cached files and images are # uploaded to kubernetes nodes. Also, images downloaded on those nodes are copied # back to the ansible runner's cache, if they are not yet preset. download_force_cache: false # Used to only evaluate vars from download role skip_downloads: false # Optionally skip kubeadm images download skip_kubeadm_images: false kubeadm_images: {} # if this is set to true will only download files once. Doesn't work # on Container Linux by CoreOS unless the download_localhost is true and localhost # is running another OS type. Default compress level is 1 (fastest). download_run_once: False download_compress: 1 # if this is set to true will download container download_container: True # if this is set to true, uses the localhost for download_run_once mode # (requires docker and sudo to access docker). You may want this option for # local caching of docker images or for Container Linux by CoreOS cluster nodes. # Otherwise, uses the first node in the kube-master group to store images # in the download_run_once mode. download_localhost: False # Always pull images if set to True. Otherwise check by the repo's tag/digest. download_always_pull: False # Some problems may occur when downloading files over https proxy due to ansible bug # https://github.com/ansible/ansible/issues/32750. Set this variable to False to disable # SSL validation of get_url module. Note that kubespray will still be performing checksum validation. download_validate_certs: True # Use the first kube-master if download_localhost is not set download_delegate: "{% if download_localhost %}localhost{% else %}{{ groups['kube-master'][0] }}{% endif %}" # Arch of Docker images and needed packages image_arch: "{{host_architecture | default('amd64')}}" # Versions kube_version: v1.16.3 kubeadm_version: "{{ kube_version }}" etcd_version: v3.3.10 # gcr and kubernetes image repo define gcr_image_repo: "gcr.io" kube_image_repo: "{{ gcr_image_repo }}/google-containers" # docker image repo define docker_image_repo: "docker.io" # quay image repo define quay_image_repo: "quay.io" # TODO(mattymo): Move calico versions to roles/network_plugins/calico/defaults # after migration to container download calico_version: "v3.7.3" calico_ctl_version: "v3.7.3" calico_cni_version: "v3.7.3" calico_policy_version: "v3.7.3" calico_rr_version: "v0.6.1" calico_typha_version: "v3.7.3" typha_enabled: false flannel_version: "v0.11.0" flannel_cni_version: "v0.3.0" cni_version: "v0.8.1" weave_version: 2.5.2 pod_infra_version: 3.1 contiv_version: 1.2.1 cilium_version: "v1.5.5" kube_ovn_version: "v0.6.0" kube_router_version: "v0.2.5" multus_version: "v3.2.1" # Get kubernetes major version (i.e. 1.15.4 => 1.15) kube_major_version: "{{ kube_version | regex_replace('^v([0-9])+\\.([0-9]+)\\.[0-9]+', 'v\\1.\\2') }}" crictl_supported_versions: v1.17: "v1.16.1" v1.16: "v1.16.1" v1.15: "v1.15.0" crictl_version: "{{ crictl_supported_versions[kube_major_version] }}" # Download URLs kubelet_download_url: "https://storage.googleapis.com/kubernetes-release/release/{{ kube_version }}/bin/linux/{{ image_arch }}/kubelet" kubectl_download_url: "https://storage.googleapis.com/kubernetes-release/release/{{ kube_version }}/bin/linux/{{ image_arch }}/kubectl" kubeadm_download_url: "https://storage.googleapis.com/kubernetes-release/release/{{ kubeadm_version }}/bin/linux/{{ image_arch }}/kubeadm" etcd_download_url: "https://github.com/coreos/etcd/releases/download/{{ etcd_version }}/etcd-{{ etcd_version }}-linux-{{ image_arch }}.tar.gz" cni_download_url: "https://github.com/containernetworking/plugins/releases/download/{{ cni_version }}/cni-plugins-linux-{{ image_arch }}-{{ cni_version }}.tgz" calicoctl_download_url: "https://github.com/projectcalico/calicoctl/releases/download/{{ calico_ctl_version }}/calicoctl-linux-{{ image_arch }}" crictl_download_url: "https://github.com/kubernetes-sigs/cri-tools/releases/download/{{ crictl_version }}/crictl-{{ crictl_version }}-{{ ansible_system | lower }}-{{ image_arch }}.tar.gz" crictl_checksums: arm: v1.16.1: 367826f3eb06c4d923f3174d23141ddacef9ffcb0c902502bd922dbad86d08dd v1.16.0: 331c49bd9196009b8230f7a36ec272924a7bcf4c1614ecddf0eb9598c787da0e v1.15.0: f31f8c3b4791608a48d030d1aa1a694a73849ae057b23a90ce4ef17e5afde9e8 arm64: v1.16.1: 62b60ab7046b788df892a1b746bd602c520a59c38232febc0580692c9805f641 v1.16.0: aa118c31d6f6fd2d24bb2de4a33598a14a5952e1d01f93d5c3267c2b5334743b v1.15.0: 785c3da7e058f6fd00b0a48de24b9199eb6bae940d13f509c44ea6dd7ad9ffcd amd64: v1.16.1: 19fed421710fccfe58f5573383bb137c19438a9056355556f1a15da8d23b3ad1 v1.16.0: a3eefa10a483c643ad85aee3d7832a720976ef7e80dde46b212eaaacd7d09512 v1.15.0: c3b71be1f363e16078b51334967348aab4f72f46ef64a61fe7754e029779d45a # Checksums kubelet_checksums: arm: v1.17.0: 75ae6ad8f4a7f2ac3988b37a01c28093f240745d17c1781135d1844057c8ae94 v1.16.3: a64dbe966aa594fcd018de1189f2b5b453ca374978d4c175fb21ecf1b955f268 v1.16.2: 3c251cd89d83bae5dbae534a7c2bfff09a8ad09e0b0eac02f93a580f471631a7 v1.16.1: 605581ba04a1e971dd90f4741495ebc6051601144d03b03c63e2f22d03556b4b v1.16.0: 3158e95f4b78b12af0225b4c54c487d7926ac61c783a4646290c0f3da0dce5df v1.15.6: 2cbe49cfd4b876493535eee6716ed52dcc2ba412109c24411e30f243e32b2b46 v1.15.5: 86bf2fb7344eea2b75da8fdd990a2c16e07ee219a7533d50681b057ca9870a14 v1.15.4: b112fa280b448e6c4f420de9744160c8a38ad8dd8d3fd6c74f15e339b13389b0 v1.15.3: f041c7e1bad2e335b958ee1968e0f807e97b3995afab938f96d3286d548308c3 v1.15.2: a114f4a6009b9642be26d0c0595429f521a5f270c22c6699990a8c628c0909d1 v1.15.1: cb97d18c61b39f0721201fedcb0219b132e521d51a2595c1f7715700626097c6 v1.15.0: 663c59fca7247ca325d4328cfc3ce77d1d4eddb251137f91ec62b8cd8823d1fc arm64: v1.17.0: b1a4a2325383854a69ec768e7dc00f69378d3ccbc554859d910bf5b582264ea2 v1.16.3: 0b937e729506c41d85980b97150dc89e4cd0b0e791c1d18d516c3f4784bf0255 v1.16.2: c155ef87b6e73661a3f5de51d1f60feab4aebbade8f30bba6cf2e66fdc5f59b0 v1.16.1: d056f403814dcbadcbb9f6be0db20295c04b7fcad6dc13c145b1a51bd1a927a4 v1.16.0: 64bc4b211f05246f8ec33318db68a59ecc1ba7f1a6716eb1db7f3e0ea3495ca2 v1.15.6: d1d86b5da04c50843e08815577a7a630c691752a78688e45332ff636f49bd753 v1.15.5: 5a20856d77617d78fb6e9c03c37373f7b712fd42b4324b2b41846836259fb911 v1.15.4: f7085ca5bc75301c0738cccdcf54b6622b4aa2c7c5ff35eddbc34b8d52833d4b v1.15.3: c0b1c4fba9cdc324b6a882cd9e0cc2e38951928697fb4b2d62e05d687c53112a v1.15.2: 96cd4f0e8785538eec2bd1423cbf8eed5ed7d7424a843f99f87a697210f236da v1.15.1: 3032531dc8ff4ea1debafcfb7b84f6c39a83e67a452a50b64d1023ba57299100 v1.15.0: a16443434eb0391991bff9a10288d83beb38be4d406954858d9fdc1063870284 amd64: v1.17.0: c2af77f501c3164e80171903028d35c632366f53dec0c8419828d4e55d86146f v1.16.3: 4e8ef215809f1b2af44408bf6039c9e57546a8a209b49720d0489e3aece66938 v1.16.2: 0c24425d7cc029bffd86bfbedcb6a63cd42c21052c3248e43918ef15d3fc03ee v1.16.1: 29a66f72ce8bf4b08eec868953cc9c179e0f2319a52480d3c1259a24a24a9eb3 v1.16.0: 77ac3f347497434b790aba46e6e06bb2e6e7a6e76b05af739d33b0441d39a263 v1.15.6: 0456b0c789c26fda218d37724dcf08f8f9deee1ab14f09184b03961cc1cf6fba v1.15.5: de590308448a62982aa6209b52da6de69ee4855e449e5508c288c8d12d074ec5 v1.15.4: 6f8e06b422e86ad5c3008ebd1ba2136620b1ba02a7f26b9d4305cdf5fb3f8755 v1.15.3: dc08c9ad350d0046bc2ec910dcd266bd30cb6e7ef1f9170bb8df455d9d083d73 v1.15.2: 5f1001608bac508ba7158704e8f762911dd52d0e16740984679f5c8263336e08 v1.15.1: d9f5c09d47c448ac12b061821c1149aba32933cf79470a85e46d8b3b338aa72b v1.15.0: f13b9a2f840e0e18b4fa92a217c95977036113c74f56bb0652efd2e7bcbfba15 kubectl_checksums: arm: v1.17.0: 594b3e2f89dca09d82b176b51bf6c8c0fa524ed209c14ec915c9b36fa876601d v1.16.3: 2cc711c92eea6ca66aeefa2dab73c553db3551a267f8ee102daa9f2fbf34ee9b v1.16.2: 3b3331502ffbdf762904395246bfd2125c12569995eb66fa8b0a08fbd969877b v1.16.1: ee975a46a67967bf008db15d70e429b62d68ce3adfc7c8ddb6ef26194d220896 v1.16.0: 86c130d211144f9665a4441f43ced8151e7df54a3af7e2874d46fbff79608e2e v1.15.6: 3d61c27ecf56e2e35dbc6dcfe6b4b7d8258a646be76192ad5db3feeb576f6636 v1.15.5: d5a125d3f67b3db0f88753f27b73eaa3213a98057ee1d8333ea4813e03626d1a v1.15.4: fb4cbcb6ea5c2f86ce6ba7cf33692fda53ee141656e533f673920a118c9e5d76 v1.15.3: 36191382af50f95bb2bbedeb57b9d89ccb89d7a73600569dd3adbdfb336596f6 v1.15.2: ac5027be37354aedd83a9768e467d82fd3e26a44f34fa4fabdc43ccf42b2fbb1 v1.15.1: 17f1ba668d98f6d57b2494273a81b49c35aecc3d13a3de36cef390e0bad60ee0 v1.15.0: 3ea07f7fa18309a630a9f317582de742befbf8efdcb22300a192941b4075c16f arm64: v1.17.0: cba12bfe0ee447b06f00813d7d4ba3fbdbf5116eccc4d3291987044f2d6f93c2 v1.16.3: ba7e98f837ba892eced9cae962c3648fe507c7fb4e9d7b1b969da8326bbc5dd9 v1.16.2: d44669ee4d137ccb3375293eedb3b585ac36d69d3e875cd3d8158292454bfac1 v1.16.1: 8366cd74910411dd9546117edd98b3248b6d33e8ea9b7e65de84168e0f162d47 v1.16.0: bdec615287163fa53b315f9d0481da3900df4063b0a41c3a412077fe765ee6c2 v1.15.6: 04aee0d812990391460588d94b768cb6aa012dab8ec03633ec2c5915332d26d9 v1.15.5: 39fe671e945f2bd38f35eeea9207c9b6d3e035606204ea3c6c943033d3babf5d v1.15.4: 910d75b86d1e937174cfd2ccb52b12195862e69ac39c50126af076ba791e9386 v1.15.3: a7a4a2c1c56d86c89a5edf3d8d78747a29cf3702d0d2df326ff940ef70048aa2 v1.15.2: 5379b504028416467bbe7bdb3c5e7d013c197a55775938675c1b940941270df5 v1.15.1: 1f5ad15f0522c5038ea014f4b6987a7a67d68585c1fb158349619b552c027a8c v1.15.0: db05f4c1799e019d5ebc51737f31132c191ffce13c516fa758e7137173abd855 amd64: v1.17.0: 6e0aaaffe5507a44ec6b1b8a0fb585285813b78cc045f8804e70a6aac9d1cb4c v1.16.3: cded1b46405741575f31024b757fd967645e815bb0ab1c5f5fcd029f25cc0f2d v1.16.2: 3ff48e12f9c768ad548e4221d805281ea28dfcda5c18b3cd1797fe37aee3012e v1.16.1: 69cfb3eeaa0b77cc4923428855acdfc9ca9786544eeaff9c21913be830869d29 v1.16.0: 4fc8a7024ef17b907820890f11ba7e59a6a578fa91ea593ce8e58b3260f7fb88 v1.15.6: 522115e0f11d83c08435a05e76120c89ea320782ccaff8e301bd14588ec50145 v1.15.5: be84cf088241f29eca6221430f8fdb3788bc80eccb79b839d721c0daa6b46244 v1.15.4: ada48ed9160f83bda949546fd2c7e443b97a5212c4f99148d66866c65ceb9dab v1.15.3: 6e805054a1fb2280abb53f75b57a1b92bf9c66ffe0d2cdcd46e81b079d93c322 v1.15.2: a737000af13f9c8c347945bc581b819659c464eae92056424bdddae735e2e888 v1.15.1: f4f4b855ab16ef295bc74f07edc77482d43e8fe81abc7cf92c476c4344788aa6 v1.15.0: ecec7fe4ffa03018ff00f14e228442af5c2284e57771e4916b977c20ba4e5b39 kubeadm_checksums: arm: v1.17.0: 5fcf1234d89bc2a364c53b76b36134fc57278b456138d93c278805f2c9b186f1 v1.16.3: ff0bdab35e6ed3784db0db1022c94efcb89c5d6da314a3d6b811af3cb1bfb06e v1.16.2: cbddf79fbcdcde7046251b51ef52a16b08ed00bd9132f25cda5be9c82fa731fd v1.16.1: 38293a03064f47c3817299475b8dc950563854aff99a87d07cf31f0ebf402015 v1.16.0: 6c666958e11b7d4513adecb3107c885c98bdc79f38d369c9f80eaaeae4ddfe66 v1.15.6: 0c6b9e3c91476b75e716c6789783c4bd0d480e94690b5e556b7d96b61fcf227e v1.15.5: 4a4ed964b61bbe99c4293c5ef0168cc8c2601d285e525d177b8b0d478960a8ab v1.15.4: 69984698052f1563fd44d78e1a68e140a552df7ed57ccd9c83bdfd82bc6103dd v1.15.3: 6c6fa56810908b5be83882094ea199844edc94b7e969160623c86512d9251c06 v1.15.2: 4b35ad0031c08a83de7c8d9f9bbed6a30d93a5c74e16ea9e6211ad2e0e12bdd1 v1.15.1: 855abd520291dcef0577a1a2ef87a70f522fd2b22603a12abcd86c2f7ec9c022 v1.15.0: 9464030a1d4e101de5f47348f3514d5a9eb95cbce2e5e31f53ada1ca485cf75e arm64: v1.17.0: 0b94d1ace240a8f9995358ca2b66ac92072e3f3cd0543275b315dcd317798546 v1.16.3: e9f8e806a4f18a6970d228e0434ce1ba976f6a0fde2690c6a3b1e2d72f23eaa0 v1.16.2: 4287d025a0c9743325c8891b7139ff718c79e4302e2004c5472a06b410a196b1 v1.16.1: 000aaffa911d3d46dad0a4af8d59408ee56eea5b8eff5cb1b9fbee9986763165 v1.16.0: 9a1d21bfb6bd15697ac010665e5917a5364b340d5b60f2f0302c179d75da0f3f v1.15.6: 79aea11d6aaf7792135cabecd7446c9725966be7daf24a441ba89d9dec918d00 v1.15.5: 26e0587398cf4b5bf4456aa65c507aa3713498025a43e3ae1654f54295f27464 v1.15.4: df6747066627f8d803033c20e1161c0cd68f3e8ffd72a972f1cfc4221c67c6e9 v1.15.3: 6f472bc8ab1ba3d76448bd45b200edef96741e5affde8dc1429300af3a4904d8 v1.15.2: d3b6ee2048b366726ca366d2db4c46b2cacc38e8ec09cc35781d16593753d930 v1.15.1: 44fbfad0f1026d249fc4f365f1e9562cd52d75360d4d1032731122ba5a4d57dc v1.15.0: fe3c79070814fe847a23209b1027672fe5c5e7e5c9611e329225058926836f96 amd64: v1.17.0: 0d8443f50fb7caab2e5e7e53f9dc56d5ffe55f021ec061f2e2bcba0481df5a48 v1.16.3: acecd15cf5471d4870959020022676e14cb6901f3c8f97019e5faee8ca956fd7 v1.16.2: 9cd4a5b087088a9053ff40113ca182f0c2f959e2e51049ed2f850785c2588e04 v1.16.1: 52ee74a9376b5b7d5296d9dab9bc54614b1c99d168003a78bdaea50f358a6886 v1.16.0: 18f30d65fb05148c73cc07c77a83f4a2427379af493ca9f60eda42239409e7ef v1.15.6: e1699c7afa090453241a009d9878fdd405a48f052e93e2ff056a8f2cf3a1cae7 v1.15.5: e64bb0b2cfdcaa1f4063879bb358848c41aa1b5cc18b75c91994d11a9bf8c136 v1.15.4: 3acf748ec5d69f316da85fb1e75945afb028f1e207ecb0b5986e23932c040194 v1.15.3: ec56a00bc8d9ec4ac2b081a3b2127d8593daf3b2c86560cf9e6cba5ada2d5a80 v1.15.2: fe2a13a1dea73249560ea44ab54c0359a9722e9c66832f6bcad86798438cba2f v1.15.1: 3d42441ae177826f1181e559cd2a729464ca8efadef196cfa0e8053a615333b5 v1.15.0: fc4aa44b96dc143d7c3062124e25fed671cab884ebb8b2446edd10abb45e88c2 etcd_binary_checksums: # Etcd does not have arm32 builds at the moment, having some dummy value is # required to avoid "no attribute" error arm: 0 arm64: 5ec97b0b872adce275b8130d19db314f7f2b803aeb24c4aae17a19e2d66853c4 amd64: 1620a59150ec0a0124a65540e23891243feb2d9a628092fb1edcc23974724a45 cni_binary_checksums: arm: ae6ddbd87c05a79aceb92e1c8c32d11e302f6fc55045f87f6a3ea7e0268b2fda arm64: acde854e3def3c776c532ae521c19d8784534918cc56449ff16945a2909bff6d amd64: e9bfc78acd3ae71be77eb8f3e890cc9078a33cc3797703b8ff2fc3077a232252 calicoctl_binary_checksums: arm: v3.6.1: 0 v3.5.4: 0 v3.4.4: 0 v3.7.3: 0 amd64: v3.6.1: 3b01336de37550e020343d62a38c96c4605d33a3ed7ddba2fe38bc172a5b42b5 v3.5.4: 197194b838cc2a9a7455c2ebd5505a5e24f8f3d994eb75c17f5dd568944100b8 v3.4.4: 93bd084e053cf1bf3b7fef369677bd6767c30fe7135e2c7e044e31693422ef61 v3.7.3: 932f68e893e80e95e10f064f1e7745e438d456f41a6ff12d11bb16ca0cab735c arm64: v3.6.1: 60fbaeb257061647bdf12b5ede7a0d4298a5ee216f6472e5a92bb14ef5c2a5d3 v3.5.4: a4481178665658658a73e4ceca9a1dff5cccded4179615c91d1c3e49fd96f237 v3.4.4: ff35d9e8b5c00e9fe47d05e8f5123ec98fd641370f8cd93f4fbb3d913da77ab6 v3.7.3: 7cfaab25c287f7ef93b2682d060b55bf39f76b668540de50376b5ed174209832 etcd_binary_checksum: "{{ etcd_binary_checksums[image_arch] }}" cni_binary_checksum: "{{ cni_binary_checksums[image_arch] }}" kubelet_binary_checksum: "{{ kubelet_checksums[image_arch][kube_version] }}" kubectl_binary_checksum: "{{ kubectl_checksums[image_arch][kube_version] }}" kubeadm_binary_checksum: "{{ kubeadm_checksums[image_arch][kubeadm_version] }}" calicoctl_binary_checksum: "{{ calicoctl_binary_checksums[image_arch][calico_ctl_version] }}" crictl_binary_checksum: "{{ crictl_checksums[image_arch][crictl_version] }}" # Containers # In some cases, we need a way to set --registry-mirror or --insecure-registry for docker, # it helps a lot for local private development or bare metal environment. # So you need define --registry-mirror or --insecure-registry, and modify the following url address. # example: # You need to deploy kubernetes cluster on local private development. # Also provide the address of your own private registry. # And use --insecure-registry options for docker kube_proxy_image_repo: "{{ kube_image_repo }}/kube-proxy" etcd_image_repo: "{{ quay_image_repo }}/coreos/etcd" etcd_image_tag: "{{ etcd_version }}{%- if image_arch != 'amd64' -%}-{{ image_arch }}{%- endif -%}" flannel_image_repo: "{{ quay_image_repo }}/coreos/flannel" flannel_image_tag: "{{ flannel_version }}" flannel_cni_image_repo: "{{ quay_image_repo }}/coreos/flannel-cni" flannel_cni_image_tag: "{{ flannel_cni_version }}" calico_node_image_repo: "{{ docker_image_repo }}/calico/node" calico_node_image_tag: "{{ calico_version }}" calico_cni_image_repo: "{{ docker_image_repo }}/calico/cni" calico_cni_image_tag: "{{ calico_cni_version }}" calico_policy_image_repo: "{{ docker_image_repo }}/calico/kube-controllers" calico_policy_image_tag: "{{ calico_policy_version }}" calico_rr_image_repo: "{{ docker_image_repo }}/calico/routereflector" calico_rr_image_tag: "{{ calico_rr_version }}" calico_typha_image_repo: "{{ docker_image_repo }}/calico/typha" calico_typha_image_tag: "{{ calico_typha_version }}" pod_infra_image_repo: "{{ gcr_image_repo }}/google_containers/pause-{{ image_arch }}" pod_infra_image_tag: "{{ pod_infra_version }}" install_socat_image_repo: "{{ docker_image_repo }}/xueshanf/install-socat" install_socat_image_tag: "latest" netcheck_version: "v1.0" netcheck_agent_image_repo: "{{ quay_image_repo }}/l23network/k8s-netchecker-agent" netcheck_agent_image_tag: "{{ netcheck_version }}" netcheck_server_image_repo: "{{ quay_image_repo }}/l23network/k8s-netchecker-server" netcheck_server_image_tag: "{{ netcheck_version }}" weave_kube_image_repo: "{{ docker_image_repo }}/weaveworks/weave-kube" weave_kube_image_tag: "{{ weave_version }}" weave_npc_image_repo: "{{ docker_image_repo }}/weaveworks/weave-npc" weave_npc_image_tag: "{{ weave_version }}" contiv_image_repo: "{{ docker_image_repo }}/contiv/netplugin" contiv_image_tag: "{{ contiv_version }}" contiv_init_image_repo: "{{ docker_image_repo }}/contiv/netplugin-init" contiv_init_image_tag: "latest" contiv_auth_proxy_image_repo: "{{ docker_image_repo }}/contiv/auth_proxy" contiv_auth_proxy_image_tag: "{{ contiv_version }}" contiv_etcd_init_image_repo: "{{ docker_image_repo }}/ferest/etcd-initer" contiv_etcd_init_image_tag: latest contiv_ovs_image_repo: "{{ docker_image_repo }}/contiv/ovs" contiv_ovs_image_tag: "latest" cilium_image_repo: "{{ docker_image_repo }}/cilium/cilium" cilium_image_tag: "{{ cilium_version }}" cilium_init_image_repo: "{{ docker_image_repo }}/cilium/cilium-init" cilium_init_image_tag: "2019-04-05" cilium_operator_image_repo: "{{ docker_image_repo }}/cilium/operator" cilium_operator_image_tag: "{{ cilium_version }}" kube_ovn_db_image_repo: "{{ docker_image_repo }}/kubeovn/kube-ovn-db" kube_ovn_node_image_repo: "{{ docker_image_repo }}/kubeovn/kube-ovn-node" kube_ovn_cni_image_repo: "{{ docker_image_repo }}/kubeovn/kube-ovn-cni" kube_ovn_controller_image_repo: "{{ docker_image_repo }}/kubeovn/kube-ovn-controller" kube_ovn_db_image_tag: "{{ kube_ovn_version }}" kube_ovn_node_image_tag: "{{ kube_ovn_version }}" kube_ovn_controller_image_tag: "{{ kube_ovn_version }}" kube_ovn_cni_image_tag: "{{ kube_ovn_version }}" kube_router_image_repo: "{{ docker_image_repo }}/cloudnativelabs/kube-router" kube_router_image_tag: "{{ kube_router_version }}" multus_image_repo: "{{ docker_image_repo }}/nfvpe/multus" multus_image_tag: "{{ multus_version }}" nginx_image_repo: "{{ docker_image_repo }}/library/nginx" nginx_image_tag: 1.17 haproxy_image_repo: "{{ docker_image_repo }}/library/haproxy" haproxy_image_tag: 1.9 coredns_version: "1.6.0" coredns_image_repo: "{{ docker_image_repo }}/coredns/coredns" coredns_image_tag: "{{ coredns_version }}" nodelocaldns_version: "1.15.5" nodelocaldns_image_repo: "{{ kube_image_repo }}/k8s-dns-node-cache" nodelocaldns_image_tag: "{{ nodelocaldns_version }}" dnsautoscaler_version: 1.6.0 dnsautoscaler_image_repo: "{{ kube_image_repo }}/cluster-proportional-autoscaler-{{ image_arch }}" dnsautoscaler_image_tag: "{{ dnsautoscaler_version }}" test_image_repo: "{{ docker_image_repo }}/library/busybox" test_image_tag: latest busybox_image_repo: "{{ docker_image_repo }}/library/busybox" busybox_image_tag: 1.29.2 helm_version: "v2.16.0" helm_image_repo: "{{ docker_image_repo }}/lachlanevenson/k8s-helm" helm_image_tag: "{{ helm_version }}" tiller_image_repo: "{{ gcr_image_repo }}/kubernetes-helm/tiller" tiller_image_tag: "{{ helm_version }}" registry_image_repo: "{{ docker_image_repo }}/library/registry" registry_image_tag: "2.6" registry_proxy_image_repo: "{{ gcr_image_repo }}/google_containers/kube-registry-proxy" registry_proxy_image_tag: "0.4" metrics_server_version: "v0.3.3" metrics_server_image_repo: "{{ gcr_image_repo }}/google_containers/metrics-server-amd64" metrics_server_image_tag: "{{ metrics_server_version }}" local_volume_provisioner_image_repo: "{{ quay_image_repo }}/external_storage/local-volume-provisioner" local_volume_provisioner_image_tag: "v2.3.2" cephfs_provisioner_image_repo: "{{ quay_image_repo }}/external_storage/cephfs-provisioner" cephfs_provisioner_image_tag: "v2.1.0-k8s1.11" rbd_provisioner_image_repo: "{{ quay_image_repo }}/external_storage/rbd-provisioner" rbd_provisioner_image_tag: "v2.1.1-k8s1.11" local_path_provisioner_image_repo: "{{ docker_image_repo }}/rancher/local-path-provisioner" local_path_provisioner_image_tag: "v0.0.2" ingress_nginx_controller_image_repo: "{{ quay_image_repo }}/kubernetes-ingress-controller/nginx-ingress-controller" ingress_nginx_controller_image_tag: "0.26.1" cert_manager_version: "v0.11.0" cert_manager_controller_image_repo: "{{ quay_image_repo }}/jetstack/cert-manager-controller" cert_manager_controller_image_tag: "{{ cert_manager_version }}" addon_resizer_version: "1.8.3" addon_resizer_image_repo: "{{ kube_image_repo }}/addon-resizer" addon_resizer_image_tag: "{{ addon_resizer_version }}" dashboard_image_repo: "{{ gcr_image_repo }}/google_containers/kubernetes-dashboard-{{ image_arch }}" dashboard_image_tag: "v1.10.1" image_pull_command: "{{ docker_bin_dir }}/docker pull" image_info_command: "{{ docker_bin_dir }}/docker images -q | xargs {{ docker_bin_dir }}/docker inspect -f \"{{ '{{' }} if .RepoTags {{ '}}' }}{{ '{{' }} (index .RepoTags 0) {{ '}}' }}{{ '{{' }} end {{ '}}' }}{{ '{{' }} if .RepoDigests {{ '}}' }},{{ '{{' }} (index .RepoDigests 0) {{ '}}' }}{{ '{{' }} end {{ '}}' }}\" | tr '\n' ','" downloads: netcheck_server: enabled: "{{ deploy_netchecker }}" container: true repo: "{{ netcheck_server_image_repo }}" tag: "{{ netcheck_server_image_tag }}" sha256: "{{ netcheck_server_digest_checksum|default(None) }}" groups: - k8s-cluster netcheck_agent: enabled: "{{ deploy_netchecker }}" container: true repo: "{{ netcheck_agent_image_repo }}" tag: "{{ netcheck_agent_image_tag }}" sha256: "{{ netcheck_agent_digest_checksum|default(None) }}" groups: - k8s-cluster etcd: container: "{{ etcd_deployment_type != 'host' }}" file: "{{ etcd_deployment_type == 'host' or etcd_kubeadm_enabled }}" enabled: true version: "{{ etcd_version }}" dest: "{{local_release_dir}}/etcd-{{ etcd_version }}-linux-amd64.tar.gz" repo: "{{ etcd_image_repo }}" tag: "{{ etcd_image_tag }}" sha256: >- {{ etcd_binary_checksum if (etcd_deployment_type == 'host' or etcd_kubeadm_enabled) else etcd_digest_checksum|d(None) }} url: "{{ etcd_download_url }}" unarchive: true owner: "root" mode: "0755" groups: - etcd cni: enabled: true file: true version: "{{ cni_version }}" dest: "{{local_release_dir}}/cni-plugins-linux-{{ image_arch }}-{{ cni_version }}.tgz" sha256: "{{ cni_binary_checksum }}" url: "{{ cni_download_url }}" unarchive: false owner: "root" mode: "0755" groups: - k8s-cluster kubeadm: enabled: true file: true version: "{{ kubeadm_version }}" dest: "{{ local_release_dir }}/kubeadm-{{ kubeadm_version }}-{{ image_arch }}" sha256: "{{ kubeadm_binary_checksum }}" url: "{{ kubeadm_download_url }}" unarchive: false owner: "root" mode: "0755" groups: - k8s-cluster kubelet: enabled: true file: true version: "{{ kube_version }}" dest: "{{ local_release_dir }}/kubelet-{{ kube_version }}-{{ image_arch }}" sha256: "{{ kubelet_binary_checksum }}" url: "{{ kubelet_download_url }}" unarchive: false owner: "root" mode: "0755" groups: - k8s-cluster kubectl: enabled: true file: true version: "{{ kube_version }}" dest: "{{ local_release_dir }}/kubectl-{{ kube_version }}-{{ image_arch }}" sha256: "{{ kubectl_binary_checksum }}" url: "{{ kubectl_download_url }}" unarchive: false owner: "root" mode: "0755" groups: - kube-master crictl: file: true enabled: "{{ container_manager in ['crio', 'cri', 'containerd'] }}" version: "{{ crictl_version }}" dest: "{{local_release_dir}}/crictl-{{ crictl_version }}-linux-{{ image_arch }}.tar.gz" sha256: "{{ crictl_binary_checksum }}" url: "{{ crictl_download_url }}" unarchive: true owner: "root" mode: "0755" groups: - k8s-cluster cilium: enabled: "{{ kube_network_plugin == 'cilium' }}" container: true repo: "{{ cilium_image_repo }}" tag: "{{ cilium_image_tag }}" sha256: "{{ cilium_digest_checksum|default(None) }}" groups: - k8s-cluster cilium_init: enabled: "{{ kube_network_plugin == 'cilium' }}" container: true repo: "{{ cilium_init_image_repo }}" tag: "{{ cilium_init_image_tag }}" sha256: "{{ cilium_init_digest_checksum|default(None) }}" groups: - k8s-cluster cilium_operator: enabled: "{{ kube_network_plugin == 'cilium' }}" container: true repo: "{{ cilium_operator_image_repo }}" tag: "{{ cilium_operator_image_tag }}" sha256: "{{ cilium_operator_digest_checksum|default(None) }}" groups: - k8s-cluster multus: enabled: "{{ kube_network_plugin_multus }}" container: true repo: "{{ multus_image_repo }}" tag: "{{ multus_image_tag }}" sha256: "{{ multus_digest_checksum|default(None) }}" groups: - k8s-cluster flannel: enabled: "{{ kube_network_plugin == 'flannel' or kube_network_plugin == 'canal' }}" container: true repo: "{{ flannel_image_repo }}" tag: "{{ flannel_image_tag }}" sha256: "{{ flannel_digest_checksum|default(None) }}" groups: - k8s-cluster flannel_cni: enabled: "{{ kube_network_plugin == 'flannel' }}" container: true repo: "{{ flannel_cni_image_repo }}" tag: "{{ flannel_cni_image_tag }}" sha256: "{{ flannel_cni_digest_checksum|default(None) }}" groups: - k8s-cluster calicoctl: enabled: "{{ kube_network_plugin == 'calico' or kube_network_plugin == 'canal' }}" file: true version: "{{ calico_ctl_version }}" dest: "{{local_release_dir}}/calicoctl" sha256: "{{ calicoctl_binary_checksum }}" url: "{{ calicoctl_download_url }}" unarchive: false owner: "root" mode: "0755" groups: - k8s-cluster calico_node: enabled: "{{ kube_network_plugin == 'calico' or kube_network_plugin == 'canal' }}" container: true repo: "{{ calico_node_image_repo }}" tag: "{{ calico_node_image_tag }}" sha256: "{{ calico_node_digest_checksum|default(None) }}" groups: - k8s-cluster calico_cni: enabled: "{{ kube_network_plugin == 'calico' or kube_network_plugin == 'canal' }}" container: true repo: "{{ calico_cni_image_repo }}" tag: "{{ calico_cni_image_tag }}" sha256: "{{ calico_cni_digest_checksum|default(None) }}" groups: - k8s-cluster calico_policy: enabled: "{{ enable_network_policy or kube_network_plugin == 'canal' }}" container: true repo: "{{ calico_policy_image_repo }}" tag: "{{ calico_policy_image_tag }}" sha256: "{{ calico_policy_digest_checksum|default(None) }}" groups: - k8s-cluster calico_rr: enabled: "{{ peer_with_calico_rr is defined and peer_with_calico_rr and kube_network_plugin == 'calico' }}" container: true repo: "{{ calico_rr_image_repo }}" tag: "{{ calico_rr_image_tag }}" sha256: "{{ calico_rr_digest_checksum|default(None) }}" groups: - calico-rr calico_typha: enabled: "{{ typha_enabled }}" container: true repo: "{{ calico_typha_image_repo }}" tag: "{{ calico_typha_image_tag }}" sha256: "{{ calico_typha_digest_checksum|default(None) }}" groups: - k8s-cluster weave_kube: enabled: "{{ kube_network_plugin == 'weave' }}" container: true repo: "{{ weave_kube_image_repo }}" tag: "{{ weave_kube_image_tag }}" sha256: "{{ weave_kube_digest_checksum|default(None) }}" groups: - k8s-cluster weave_npc: enabled: "{{ kube_network_plugin == 'weave' }}" container: true repo: "{{ weave_npc_image_repo }}" tag: "{{ weave_npc_image_tag }}" sha256: "{{ weave_npc_digest_checksum|default(None) }}" groups: - k8s-cluster contiv: enabled: "{{ kube_network_plugin == 'contiv' }}" container: true repo: "{{ contiv_image_repo }}" tag: "{{ contiv_image_tag }}" sha256: "{{ contiv_digest_checksum|default(None) }}" groups: - k8s-cluster contiv_auth_proxy: enabled: "{{ kube_network_plugin == 'contiv' }}" container: true repo: "{{ contiv_auth_proxy_image_repo }}" tag: "{{ contiv_auth_proxy_image_tag }}" sha256: "{{ contiv_auth_proxy_digest_checksum|default(None) }}" groups: - k8s-cluster contiv_etcd_init: enabled: "{{ kube_network_plugin == 'contiv' }}" container: true repo: "{{ contiv_etcd_init_image_repo }}" tag: "{{ contiv_etcd_init_image_tag }}" sha256: "{{ contiv_etcd_init_digest_checksum|default(None) }}" groups: - k8s-cluster kube_ovn_db: enabled: "{{ kube_network_plugin == 'kube-ovn' }}" container: true repo: "{{ kube_ovn_db_image_repo }}" tag: "{{ kube_ovn_db_image_tag }}" sha256: "{{ kube_ovn_digest_checksum|default(None) }}" groups: - k8s-cluster kube_ovn_node: enabled: "{{ kube_network_plugin == 'kube-ovn' }}" container: true repo: "{{ kube_ovn_node_image_repo }}" tag: "{{ kube_ovn_node_image_tag }}" sha256: "{{ kube_ovn_digest_checksum|default(None) }}" groups: - k8s-cluster kube_ovn_controller: enabled: "{{ kube_network_plugin == 'kube-ovn' }}" container: true repo: "{{ kube_ovn_controller_image_repo }}" tag: "{{ kube_ovn_controller_image_tag }}" sha256: "{{ kube_ovn_digest_checksum|default(None) }}" groups: - k8s-cluster kube_ovn_cni: enabled: "{{ kube_network_plugin == 'kube-ovn' }}" container: true repo: "{{ kube_ovn_cni_image_repo }}" tag: "{{ kube_ovn_cni_image_tag }}" sha256: "{{ kube_ovn_digest_checksum|default(None) }}" groups: - k8s-cluster kube_router: enabled: "{{ kube_network_plugin == 'kube-router' }}" container: true repo: "{{ kube_router_image_repo }}" tag: "{{ kube_router_image_tag }}" sha256: "{{ kube_router_digest_checksum|default(None) }}" groups: - k8s-cluster pod_infra: enabled: true container: true repo: "{{ pod_infra_image_repo }}" tag: "{{ pod_infra_image_tag }}" sha256: "{{ pod_infra_digest_checksum|default(None) }}" groups: - k8s-cluster install_socat: enabled: "{{ ansible_os_family in ['CoreOS', 'Container Linux by CoreOS'] }}" container: true repo: "{{ install_socat_image_repo }}" tag: "{{ install_socat_image_tag }}" sha256: "{{ install_socat_digest_checksum|default(None) }}" groups: - k8s-cluster nginx: enabled: "{{ loadbalancer_apiserver_localhost and loadbalancer_apiserver_type == 'nginx' }}" container: true repo: "{{ nginx_image_repo }}" tag: "{{ nginx_image_tag }}" sha256: "{{ nginx_digest_checksum|default(None) }}" groups: - kube-node haproxy: enabled: "{{ loadbalancer_apiserver_localhost and loadbalancer_apiserver_type == 'haproxy' }}" container: true repo: "{{ haproxy_image_repo }}" tag: "{{ haproxy_image_tag }}" sha256: "{{ haproxy_digest_checksum|default(None) }}" groups: - kube-node coredns: enabled: "{{ dns_mode in ['coredns', 'coredns_dual'] }}" container: true repo: "{{ coredns_image_repo }}" tag: "{{ coredns_image_tag }}" sha256: "{{ coredns_digest_checksum|default(None) }}" groups: - kube-master nodelocaldns: enabled: "{{ enable_nodelocaldns }}" container: true repo: "{{ nodelocaldns_image_repo }}" tag: "{{ nodelocaldns_image_tag }}" sha256: "{{ nodelocaldns_digest_checksum|default(None) }}" groups: - k8s-cluster dnsautoscaler: enabled: "{{ dns_mode in ['coredns', 'coredns_dual'] }}" container: true repo: "{{ dnsautoscaler_image_repo }}" tag: "{{ dnsautoscaler_image_tag }}" sha256: "{{ dnsautoscaler_digest_checksum|default(None) }}" groups: - kube-master busybox: enabled: "{{ kube_network_plugin in ['kube-router'] }}" container: true repo: "{{ busybox_image_repo }}" tag: "{{ busybox_image_tag }}" sha256: "{{ busybox_digest_checksum|default(None) }}" groups: - k8s-cluster testbox: enabled: false container: true repo: "{{ test_image_repo }}" tag: "{{ test_image_tag }}" sha256: "{{ testbox_digest_checksum|default(None) }}" helm: enabled: "{{ helm_enabled }}" container: true repo: "{{ helm_image_repo }}" tag: "{{ helm_image_tag }}" sha256: "{{ helm_digest_checksum|default(None) }}" groups: - kube-node tiller: enabled: "{{ helm_enabled }}" container: true repo: "{{ tiller_image_repo }}" tag: "{{ tiller_image_tag }}" sha256: "{{ tiller_digest_checksum|default(None) }}" groups: - kube-node registry: enabled: "{{ registry_enabled }}" container: true repo: "{{ registry_image_repo }}" tag: "{{ registry_image_tag }}" sha256: "{{ registry_digest_checksum|default(None) }}" groups: - kube-node registry_proxy: enabled: "{{ registry_enabled }}" container: true repo: "{{ registry_proxy_image_repo }}" tag: "{{ registry_proxy_image_tag }}" sha256: "{{ registry_proxy_digest_checksum|default(None) }}" groups: - kube-node metrics_server: enabled: "{{ metrics_server_enabled }}" container: true repo: "{{ metrics_server_image_repo }}" tag: "{{ metrics_server_image_tag }}" sha256: "{{ metrics_server_digest_checksum|default(None) }}" groups: - kube-master addon_resizer: # Currently addon_resizer is only used by metrics server enabled: "{{ metrics_server_enabled }}" container: true repo: "{{ addon_resizer_image_repo }}" tag: "{{ addon_resizer_image_tag }}" sha256: "{{ addon_resizer_digest_checksum|default(None) }}" groups: - kube-master local_volume_provisioner: enabled: "{{ local_volume_provisioner_enabled }}" container: true repo: "{{ local_volume_provisioner_image_repo }}" tag: "{{ local_volume_provisioner_image_tag }}" sha256: "{{ local_volume_provisioner_digest_checksum|default(None) }}" groups: - kube-node cephfs_provisioner: enabled: "{{ cephfs_provisioner_enabled }}" container: true repo: "{{ cephfs_provisioner_image_repo }}" tag: "{{ cephfs_provisioner_image_tag }}" sha256: "{{ cephfs_provisioner_digest_checksum|default(None) }}" groups: - kube-node rbd_provisioner: enabled: "{{ rbd_provisioner_enabled }}" container: true repo: "{{ rbd_provisioner_image_repo }}" tag: "{{ rbd_provisioner_image_tag }}" sha256: "{{ rbd_provisioner_digest_checksum|default(None) }}" groups: - kube-node local_path_provisioner: enabled: "{{ local_volume_provisioner_enabled }}" container: true repo: "{{ local_path_provisioner_image_repo }}" tag: "{{ local_path_provisioner_image_tag }}" sha256: "{{ local_path_provisioner_digest_checksum|default(None) }}" groups: - kube-node ingress_nginx_controller: enabled: "{{ ingress_nginx_enabled }}" container: true repo: "{{ ingress_nginx_controller_image_repo }}" tag: "{{ ingress_nginx_controller_image_tag }}" sha256: "{{ ingress_nginx_controller_digest_checksum|default(None) }}" groups: - kube-node cert_manager_controller: enabled: "{{ cert_manager_enabled }}" container: true repo: "{{ cert_manager_controller_image_repo }}" tag: "{{ cert_manager_controller_image_tag }}" sha256: "{{ cert_manager_controller_digest_checksum|default(None) }}" groups: - kube-node dashboard: enabled: "{{ dashboard_enabled }}" container: true repo: "{{ dashboard_image_repo }}" tag: "{{ dashboard_image_tag }}" sha256: "{{ dashboard_digest_checksum|default(None) }}" groups: - kube-master download_defaults: container: false file: false repo: None tag: None enabled: false dest: None version: None url: None unarchive: false owner: kube mode: None