CDSLでは,これまで仮想マシンで踏み台サーバを運用していました.踏み台サーバの役割はアクセス境界での認証のみです.今回,この踏み台サーバをコンテナ化しました.
研究室内に構築したKubernetes上に以下の構成ファイルでデプロイしました.
cdsl-research/container-jumpsv: 踏み台サーバー(コンテナ)
以下の図は,アーキテクチャの全体像です.ESXi上のVMで構成されたKubernetesクラスタ上では,sshdが動作する踏み台コンテナが動作しています.踏み台コンテナは外部からのアクセスをNodePortにより実現しています.コンテナのログはrsyslogによりログサーバ(Fluentd)へ転送されます.踏み台の認証にはSTNSにより構築したID管理サーバにより実現しています.
![](https://ja.tak-cslab.org/wp-content/uploads/2021/08/CDSL-System-Architecture.png)
外部からのアクセスは,RouterからポートフォワードでKubernetesクラスタのNodePortにポート転送しています.
以下は実際にsshコマンドでログインした直後の様子です.sshdの設定でBannerを仕込んでいます.シェルにはrbashを使ってコマンドを制限してあります.
![](https://ja.tak-cslab.org/wp-content/uploads/2021/08/002-1024x702.jpg)
以下はKubernetes上でコンテナが動作している様子を kubectl で確認しています.Deploymentでレプリカ数=3としたsshdを含むPodが起動しています.
![](https://ja.tak-cslab.org/wp-content/uploads/2021/08/001-1024x717.jpg)
CDSLでは今後もこうしたコンテナ化を通じて,クラウドネイティブなITインフラを実現していきます.
クラウドネイティブやコンテナに興味ある方はぜひご連絡ください.