dodas.kubernetes

Kubernetesロール

このAnsibleロールは、Kubernetesクラスターをインストールします。

ロール変数

このロールに渡すことができる変数とその簡単な説明は以下のとおりです:

# インストールするバージョンまたは最新
kube_version: 1.28.7
# ノードのタイプ(frontまたはwn)
kube_type_of_node: front
# KubeフロントノードのIPアドレスまたは名前
kube_server: "{{ ansible_default_ipv4.address }}"
# セキュリティトークン
kube_token: "kube01.{{ lookup('password', '/tmp/tokenpass chars=ascii_lowercase,digits length=16') }}"
# トークンのTTL期間(0は期限切れなし)
kube_token_ttl: 0
# PODネットワークCIDR
kube_pod_network_cidr: 10.244.0.0/16
# Kubeletの追加引数
kubelet_extra_args: ''
# HELMをインストールするフラグ
kube_install_helm: true
# trueの場合、Kubernetesのetcdをramdiskで実行
etcd_in_RAM: true
# ダッシュボードをデプロイ
kube_deploy_dashboard: true
# kubeadm init --apiserver-advertise-addressオプションに渡す値
kube_api_server: 0.0.0.0
# クラスターに適用するgitリポジトリとパスのセット。次の形式に従ってください:
# kube_apply_repos: [{repo: "https://github.com/kubernetes-incubator/metrics-server", version: "master", path: "deploy/1.8+/"}]
kube_apply_repos: []
# Metrics-Serverをインストールするフラグ
kube_install_metrics: false
# GPUサポートを有効にするフラグ
enable_gpu: false
# `enable_gpu == true`のときに含めるAnsibleロールの名前(とバージョン)
gpu_support_role: git+https://baltig.infn.it/infn-cloud/ansible-role-gpu-support,vX.Y.Z

依存関係

  • ansible-role-gpu-support(enable_gpu == trueの場合)
  • ansible-role-containerd(geerlingguyによる)

RAM内のETCD

要件

クラスターはcontainerdをコンテナランタイムとして使用する必要があり、etcdはKubernetesクラスター内のポッドとして実行されている必要があります。これはkubeadmクラスターセットアップを利用することを意味します。

既存クラスターの手動セットアップ

まず、こちらからnerdctlをダウンロードし、実行可能ファイルを/usr/local/binに移動します。次に、files_etcdRAMフォルダーの内容を以下のようにコピーします:

files_etcdRAM/usr/lib/systemd/system/kubelet.service.d ---> /usr/lib/systemd/system/kubelet.service.d
files_etcdRAM/etc/cron.d ---> /etc/cron.d
files_etcdRAM/opt/etcdRAM/bin ---> /opt/etcdRAM/bin

daemonを再起動し、crontabを更新します:

systemctl daemon-reload
crontab /etc/cron.d/etcdRAM-etcd

ストレージディレクトリ/var/lib/etcdをramdiskとしてマウントするには、/etc/fstabに1行を追加する必要があります:

tmpfs                       /var/lib/etcd        tmpfs   defaults,noatime,size=2g  0 0

最後に、/var/lib/etcdディレクトリ内のすべての内容を削除し、ramdiskをマウントします:

rm -rf /var/lib/etcd/*
mount -a

クレジット

詳しくは、こちらの投稿や、元のリポジトリを参照してください。

プロジェクトについて

Install Kubernetes cluster

インストール
ansible-galaxy install dodas.kubernetes
ライセンス
apache-2.0
ダウンロード
1.5k
所有者
Dynamic On Demand Analysis Service DODAS is a Platform as a Service tool built combining several solutions and products