大規模な物理サーバー (24 コア) に kubernetes をデプロイしたいと考えていますが、多くの点で確信が持てません。
ベアメタル以外で k8s クラスター用の仮想マシンを作成することの長所と短所は何ですか。
次の考慮事項があります。
- VM を作成すると、ワークロードの分離が可能になります。実験用の新しい VM を作成して開発者に割り当てることができます。
- 一方、ベアメタルで実行される k8s では、各開発者が実験用に新しい NAMESPACE を作成し、そこでコードを実行できます。結局、コードは docker コンテナで実行する必要があります。
安全:
- VM を使用すると、将来のメンテナーに与えられるアクセスの量が制限され、実行できる損害の量が制限されます。一方、将来のメンテナーの主なタスクはノードの追加/削除であり、そのためにはベア メタル アクセスが必要になります。
認証:
- 現時点では、開発者は、コードが CI パイプラインを介して実行され、実行中のデプロイが展開されている場合にのみ、サーバーにアクセスします。しかし、ログの表示についてはどうでしょうか。階層化された kubectl 認証をセットアップして、割り当てられている名前空間にのみ開発者がアクセスできるようにすることはできますか (これは、k8s 名前空間認証プラグインで可能になるはずです)。
サーバーにはすでに多数の VM が存在します。これは問題になるでしょうか?