-
サーバ構築のデージーネットTOP
-
OSS情報
-
一押しOSS
-
Kubernetes〜コンテナ管理の課題を解決するOSS〜
-
Kubernetesのアーキテクチャ
-
サーバ構築のデージーネットTOP
-
OSS情報
-
コンテナ型仮想化
-
Kubernetes〜コンテナ管理の課題を解決するOSS〜
-
Kubernetesのアーキテクチャ
Kubernetesのアーキテクチャ
Kubernetesは、マスターサーバとノードサーバからなるクラスタとして動作します。
Kubernetes マスターサーバのコンポーネント
Kubernetesでは、マスターサーバは、ノードサーバ上で動作するDockerコンテナの管理をする役割を持っています。ノード上で動作するDockerコンテナを監視し、必要に応じてレプリカセットをデプロイメントしたりするなどの制御を行います。kube-apiserver、etcd、kube-scheduler、kube-controller-manager、clound-controller-managerなどのコンポーネントからできています。
kubectl
Kubernetesに対して指示を行うためのコマンドです。すべての指示はkube-api-serverを中継して行われます。
kube-api-server
kube-api-serverは、Kubernetesのリソースを管理し、Kubernetes APIを外部へ公開する役割を担います。Kubernetesに対するすべての操作は、kube-api-serverを経由して行われます。kube-api-server以外のマスターサーバのコンポーネントは、kube-api-serverを介してリソースにアクセスします。
etcd
etcdは、Kubernetesの設定情報を格納するデータストアです。etcdは、キーバリューストア(KVS)型のデータベースです。リソースの種類に応じて、複数のetcdを利用することもできます。
kube-scheduler
Podを、どのノードで実行するのかを制御するコンポーネントです。Podの監視も行います。
kube-controller-manager
ノードコントローラ、レプリケーションコントローラ、サービスアカウント・トークンコントローラの3つのコントローラを管理するコンポーネントです。ノードコントローラは、ノードを監視し、ノードダウンを検知します。レプリケーションコントローラは、レプリカセットに含まれるPodの数を監視し、Pod数を維持する役目を持っています。サービスアカウント・トークンコントローラは、Kubernetes内のアカウントとAPIで利用するアクセストークンの生成を行います。
cloud-controller-manager
Kubernetesの基盤となっているクラブドプロバイダと対話するコントローラを管理します。
Kubernetes ノードサーバのコンポーネント
ノードサーバは、実際にDockerコンテナを動作させるコンポーネントです。kubeletがDockerコンテナの管理を行います。kube-proxyがDockerコンテナへの通信の中継を行います。
kubelet
Kubernetesクラスタの各ノードで実行されるエージェントです。kube-api-serverからの指示に基づき、Podの起動や管理を行います。
kube-proxy
kube-proxyは、ホスト上でのネットワークルールを管理します。kube-proxyは、サービスにつけられた仮想的IPアドレスを管理し、仮想IPアドレスへのリクエストを、適切なPodへ中継します。複数のPodが利用できる場合には、ラウンドロビンで負荷分散を行います。
デモのお申込み
もっと使い方が知りたい方へ
Kubernetesの操作方法や操作性をデモにてご確認いただけます。使い方のイメージを把握したい、使えるか判断したい場合にご活用下さい。Kubernetesのデモをご希望の方は、下記よりお申込みいただけます。
OSS情報「Kubernetes」