Kubernetesを搭載したcSRXコンテナファイアウォール
概要
コンテナ化SRX(cSRX)コンテナファイアウォールは、CRI-OまたはPodmanコンテナをベースにした仮想セキュリティソリューションであり、俊敏で弾力性がありコストを削減するセキュリティサービスを提供し、包括的なL7セキュリティ保護を実現します。
Kubernetes(K8s)は、コンテナ化されたアプリケーションの導入、拡張、管理を自動化するためのオープンソースシステムです。アプリケーションを構成するコンテナを論理ユニットにグループ化して、管理と検出を容易にします。Kubernetesのサポートにより、cSRXは柔軟なファイアウォールサービスとして実行されるクラスターで、仮想マシンと比較してフットプリントが小さく、スケールアウトできます。
コンテナ化SRXファイアウォール(cSRX)は、もともとDockerコンテナをベースにしたKubernetesなどのコンテナオーケストレーション環境で実行するように設計されています。ただし、Kubernetesはバージョン1.22からDockerサポートを廃止するため、CRI-OやPodmanなどのKubernetesと互換性のあるコンテナランタイムを使用したcSRXのデプロイをサポートするようになりました。これらのランタイムはOpenShift 4やRHEL 8などのプラットフォームと互換性があるため、cSRXがシームレスに機能し続けることができます。また、Dockerを使用しないKubernetes環境での互換性とセキュリティ機能を維持します。
cSRXは、高度なレイヤー4からレイヤー7のセキュリティサービスをコンテナフォームファクタで提供し、Kubernetesクラスタ内でのマイクロセグメンテーション、アプリケーション保護、脅威検知を可能にします。FlannelやWeaveなどのCNIを介してKubernetesネットワークと統合し、Junos OS CLI、NETCONF、およびSecurity Directorを介して管理をサポートします。このコンテナ化されたファイアウォールは、コンパクトなフットプリント、拡張性、自動化のメリットを提供し、動的なクラウドネイティブの導入に適しています。
Kubernetesの導入では、フランネルとWeaveコンテナネットワークインターフェイス(CNI)の両方でMultusを使用できます。
KubernetesノードポートまたはイングレスコントローラーをcSRXでサポートするために、環境変数CSRX_MGMT_PORT_REORDERにより、cSRXがコンテナ管理インターフェイスを使用できるようになります。cSRXのKubernetesノードポートまたはイングレスコントローラ機能は、Flannel/Weave CNIでのみサポートされています。CSRX_MGMT_PORT_REORDERを yesに設定すると、管理ポートの動作の再設定を明示的に制御できます。例えば、Multus CNIを使用して、cSRXシェルへのアクセスや、cSRXに接続されたインターフェイスに対するSDディスカバリを制御できます。
例えば、eth0、eth1、または eth2 を CSRX_MGMT_PORT_REORDER=yes で起動cSRXした場合、eth2 を新しい管理インターフェイスとして使用できます。
この eth2 へのトラフィック転送は、明示的に定義された iptables ルールを介して実行する必要があります。
Kubernetesは、システムリソース(CPU、メモリ、またはその他のカスタムメトリック)に基づいて、分散ノードクラスター全体でコンテナ化されたアプリケーションをオーケストレーションするメカニズムを集合的に提供する一連の構築オブジェクトを定義します。Kubernetesは、必要な機能用のREST APIを提供することで、コンテナーのグループを管理する複雑さを隠します。
ノードとは、サーバーなどのクラスター内の論理ユニットを指し、物理または仮想のいずれかです。Kubernetesクラスターのコンテキストでは、ノードは通常、特にワーカーノードを指します。クラスター内のKubernetesノードは、エンドユーザーアプリケーションを実行するマシンです。
Kubernetesクラスターには2種類のノードがあり、それぞれが明確に定義された一連のプロセスを実行します。
-
ヘッドノード:プライマリノードまたはプライマリノードとも呼ばれ、すべての思考を行い、すべての決定を下すのは頭と脳です。すべてのインテリジェンスがここにあります。
-
ワーカーノード:ノードまたはミニオンとも呼ばれ、労働力を指揮するのは手と足です。
ほとんどの場合、ノードはプライマリによって制御されます。クラスターとuの間のインターフェイスは、コマンドラインツールkubectlです。これは、クライアントアプリケーションとして、同じプライマリノードまたは別のマシンにインストールされます。
Kubernetesのオブジェクトは、Pod、Service、Volume、Namespace、Replication、Controller、ReplicaSet、Deployment、StatefulSet、DaemonSet、Jobです
cSRXでサポートされている機能の概要については、 cSRXコンテナファイアウォールでサポートされているJunos OS 機能を参照してください。
利点
Kubernetesクラスターで実行されているcSRXには、次のようなメリットがあります。
-
フットプリントを抑えながらサービスを運用します。
-
cSRXの迅速なスケールアウトとサクルインを促進します。
-
ワークフロープロセスの管理と規制を自動化します。