freehck.k8s_join

freehck.k8s_join

ノードをKubernetesクラスタに参加させる

説明

この役割はすべてのノードとKubernetesマスターに適用されます。マスターのホストはk8s_join_is_mastertrueに設定している必要があります。

役割変数

k8s_join_command_filename: 認証トークン/コマンドを保存するファイル名で、デフォルトはk8s-join-commandです。

k8s_join_is_master: このブールフラグは、Kubernetesクラスタ内の特定のホスト(マスター)に対してのみtrueに設定する必要があります。デフォルトはfalseです。

インベントリ
k8s-node-0 ansible_host=10.118.19.10 k8s_is_master=true
k8s-node-1 ansible_host=10.118.19.11
k8s-node-2 ansible_host=10.118.19.12

[k8s_cluster]
k8s-node-0
k8s-node-1
k8s-node-2
playbook.yml
- hosts: k8s_cluster
  become: true
  vars:
    # 共通パラメータ
    k8s_ver: "1.16.2-00"
    k8s_node_ip: "{{ ansible_host }}"
    # k8s_baseは暗黙の依存関係
    k8s_base_node_ip: "{{ k8s_node_ip }}"
    k8s_base_ver: "{{ k8s_ver }}"
    # k8s_initは暗黙の依存関係
    k8s_init_cidr: "192.168.0.0/16"
    k8s_init_node_ip: "{{ ansible_host }}"
    k8s_init_node_name: "{{ inventory_hostname }}"
    # この役割の設定
    k8s_join_is_master: "{{ k8s_is_master | default('false') }}"
  roles:
    - role: freehck.k8s_base
    - role: freehck.k8s_init
      when: k8s_join_is_master
    - role: freehck.k8s_join

注意

例に示されているように、この役割はKubernetesマスターとノードの両方に適用されるように設計されています。マスターでは、この役割が認証トークンを生成し、それをAnsibleコントローラーのファイルに保存します。このファイルはコミットしないでください!しばらくすると期限切れになります。その後、ノードはこのトークンを使用してクラスタに参加します。

インストール

この役割はAnsible Galaxyからインストールできます:

ansible-galaxy install freehck.k8s_join

ライセンス

MIT

著者情報

Dmitrii Kashin, freehck@freehck.ru

プロジェクトについて

join nodes to kubernetes cluster

インストール
ansible-galaxy install freehck.k8s_join
ライセンス
Unknown
ダウンロード
235
所有者