1. inajob

    No comment

    inajob
Changes in body
Source | HTML | Preview
@@ -1,17 +1,17 @@
# これはなに?
https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/addon-manager
-Kubernetesクラスタでデフォルトで動いておく必要のあるmanifestを自動的にデプロイするソフトウェア。GKEやminikubeでも利用されてい
-LeaderElectionの機能があり、クラスタ内で複数動作させることでHAを実現でき
-実態はこのシェルスクリプト https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/addon-manager/kube-addons.sh
+Kubernetesクラスタでデフォルトで動いておく必要のあるmanifestを自動的にデプロイするソフトウェア。GKEやminikubeでも利用されています
+LeaderElectionの機能があり、クラスタ内で複数動作させることでHAを実現できます
+実態はこのシェルスクリプトです https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/addon-manager/kube-addons.sh
k8sクラスタにあらかじめ特定のPodを稼働させておく場合などに使えそうなので、詳細を調べてみました。
# addonの管理方法
addon-managerは `$ADDON_PATH`(デフォルトは `/etc/kubernetes/addons/` )にあるマニフェストテンプレートを管理します。
-2種類の管理方法があり、これらをラベルで指定する
+2種類の管理方法があり、これらをラベルで指定します。
- `addonmanager.kubernetes.io/mode=Reconcile`
- もしリソースが消されていれば作り直す
- もしテンプレートがが変更されていたら反映し直す
- もしテンプレートが消されていたらリソースを消す
@@ -30,15 +30,15 @@
要するにaddon-managerというのは、あるディレクトリにあるマニフェストをapplyし続けるデーモンのようなアプリケーションなのです。
# リーダー選出はどうやっているのか?
-addon-managerは、HAでマスターを構成している場合に、kube-controller-managerのリーダー選出を借りて自身のリーダー選出に利用してい
+addon-managerは、HAでマスターを構成している場合に、kube-controller-managerのリーダー選出を借りて自身のリーダー選出に利用しています
(HAでのクラスタの構成はこちらを参照 https://kubernetes.io/docs/admin/high-availability/ )
-下記でkube-controller-managerがどのホストで動いているかを知ることができ
+下記でkube-controller-managerがどのホストで動いているかを知ることができます。
```
$ kubectl get ep -n kube-system kube-controller-manager -o yaml
apiVersion: v1
kind: Endpoints
@@ -52,13 +52,13 @@
selfLink: /api/v1/namespaces/kube-system/endpoints/kube-controller-manager
uid: 45ac6cb7-b878-11e7-bc9c-fa163e6b368e
subsets: null
```
-addon-managerはmaster nodeで動くことを想定しており、上記コマンドで取得した現在のリーダーのホスト名と、自身のホスト名が同じであれば動作するようになっている。 ( https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/addon-manager/kube-addons.sh#L156 )
+addon-managerはmaster nodeで動くことを想定しており、上記コマンドで取得した現在のリーダーのホスト名と、自身のホスト名が同じであれば動作するようになってます。 ( https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/addon-manager/kube-addons.sh#L156 )
-ちょっとトリッキーな方法だが簡単にHAが実現できる方法である
+ちょっとトリッキーな方法だが簡単にHAが実現できる方法で
# addon-managerをどうやってデプロイするか?
addon-managerはコンテナとして提供されています ( https://console.cloud.google.com/gcr/images/google-containers/GLOBAL/kube-addon-manager ) これをデプロイするにはいくつかの方法が考えられます。