【CNDW2024】金融システムにおけるクラウドネイティブ化を実現するEKSの最前線

金融機関のIT基盤は、安全性と信頼性が高い要求を満たすために、経済性や変化に対応する技術を採用してきた。それに加え、昨今ではクラウドネイティブ化の波が押し寄せており、代表的なインフラとしてAmazon Elastic Kubernetes Service(EKS)が注目を集めている。
CloudNative Days Winter 2024において、野村総合研究所の高棹 大樹氏が「レガシーな金融システムをKubernetesを使ってクラウドネイティブ化するためのノウハウ大全」と題して、金融システムを載せられるEKS中心のITインフラを構築するために有用なノウハウを紹介した。
金融システムとクラウドネイティブ化のニーズ
金融システムは、顧客資産を管理するために高い安全性と信頼性が求められる重要な社会基盤である。こうした背景の中、クラウドネイティブ技術の導入が進むことで、既存のオンプレミス環境からクラウドへの移行が加速している。この移行には、単なるシステムのリフト&シフトにとどまらず、クラウドのポテンシャルを最大限に活用したアーキテクチャの再設計が求められる。
特にAmazon Elastic Kubernetes Service(EKS)は、クラウドネイティブ化を実現するための有力な選択肢として注目されている。EKSは、Kubernetesの柔軟性とAWSの高度な管理機能を兼ね備えており、金融機関が必要とするセキュリティや信頼性の要件を満たしつつ、開発の効率化や運用の自動化を実現する。
クラウドネイティブ化のメリットとしては、まずスケーラビリティが挙げられる。EKSを利用することで、リソースの需要に応じて柔軟にシステムを拡張できるだけでなく、従来のオンプレミス環境では困難だったマルチリージョン展開も可能になる。またコンテナ技術を活用することで、アプリケーションのデプロイや更新が迅速化し、開発と運用の分離が容易になる点も大きな利点である。
さらにセッションでは、ECSとEKSの違いについても言及された。ECS(Amazon Elastic Container Service)はAWS独自のサービスであり、運用の簡便さが魅力である一方、EKSはKubernetesエコシステムを活用できる点が優れている。例えばEKSを用いることで、オープンソースのツールやマルチクラウド戦略を組み合わせることが可能であり、金融業界のように複雑な要件を持つ環境でも柔軟に対応できる。
高棹氏は「金融システムにおけるクラウドネイティブ化は単なる技術的選択ではなく、ビジネス全体のアジリティを向上させるための鍵となる」と語り、金融分野におけるクラウドネイティブ技術の重要性を強調した。近年クラウドを基盤としたシステム運用に詳しいエキスパートが金融業界にも登場し、運用ノウハウが共有されるようになった。「金融システムに最適化されたクラウドアーキテクチャを簡潔に設計することが鍵である」と高棹氏はそう指摘する。
高度なセキュリティから見た基盤
EKSを採用することで、高度なセキュリティ要件を満たすことが可能となる。それはAWSが提供する「責任共有モデル」の考え方をもとに、ユーザー側が取り組むべきレイヤーの管理が明確にされるからだ。これにより、システム全体の安全性を高めるための具体的な対策が講じられる。
高棹氏は「では高度なセキュリティをどのように実現するか?」と問い、その答えとしてEKSクラスターを構成する各レイヤーで適切なセキュリティ対策を行っていく必要があることを挙げた。
まずコンテナのセキュリティ対策では、特権モードおよびルートユーザーを禁止することで、コンテナ内でのセキュリティリスクを大幅に削減できる。これにより「コンテナエスケープ」や「ハッキング時の影響範囲拡大」といった課題を解消する。またAWSが提供するツールを用いたコンテナイメージの脆弱性スキャンにより、セキュリティレベルを高めることが可能である。非ルートユーザーで動作するコンテナの作成や、マニフェストファイルでの権限昇格の禁止設定が具体例として挙げられる。
高棹氏は、「特権モードを許可すると、万が一のセキュリティ事故の際に影響が拡大するリスクがあります。そのため、非特権モードで運用することが鉄則です」と強調した。
次にコンテナ間のセキュリティ対策。コンテナ間通信を暗号化することで、第三者によるデータ傍受を防ぐことができる。IstioやLinkerdといったサービスメッシュを導入することで、ポッドごとの暗号化鍵管理の負担を軽減し、全体のセキュリティと運用効率を向上させる。これにより大規模なマイクロサービス環境でも安全な通信が可能になる。
高棹氏はまた「ポッド間通信の暗号化は、とくに金融システムのようなセンシティブなデータを扱う環境では必須です。適切なツールを使い、自動化された管理を実現しましょう」と呼びかけた。
またNamespace間のセキュリティ対策については、EKSクラスター内で複数システムを運用する場合、リソースの分離とアクセス制御が重要であるとした。ネットワークポリシーを活用し、システム間の通信を制限することで、不要なリスクを防ぐことが可能となる。またRBAC(ロールベースのアクセス制御)とIAMロールを組み合わせることで、Namespaceごとに適切な権限を割り当てる手法が推奨される。
そしてワーカーノードのセキュリティ対策では、AWSが提供するEKS最適化AMIを利用し、常に最新バージョンを適用することで、セキュリティパッチの適用漏れを防ぐことができる。さらにGuardDuty EC2 Malware Protectionを有効化することで、マルウェア感染の早期検知と対応が可能となる。また振る舞い検知ツールを活用し、不審な挙動をリアルタイムで監視する仕組みも重要である。
EKSクラスターのセキュリティ対策では、監査ログのモニタリングが効果的であるとした。AWS CloudTrailを活用することで、クラスター内外での操作ログを収集し、不正アクセスや異常な活動を早期に検知できる。加えてEKSコントロールプレーンの監査ログもGuardDutyを用いてモニタリングすることで、システム全体の透明性と安全性を向上させる。
信頼性向上のための設計指針
金融システムにおける信頼性の確保には、複数リージョンとアベイラビリティゾーン(AZ)を活用した分散構成が求められる。これによりシステム全体の可用性が向上し、突発的な障害にも柔軟に対応できる仕組みが整う。高棹氏はとくに重要な3つのポイントを解説した。
まず「リソースの分散配置」だ。高棹氏は信頼性を高めるための基本戦略として、リソースの分散配置を挙げた。具体的には、複数のリージョンにEKSクラスターを配置し、データレプリケーション機能を活用することで、障害発生時にも迅速な復旧が可能となる。たとえば、AWS Route 53を用いることで、通常のアクセスはプライマリサイトへ、障害発生時にはセカンダリサイトへ切り替える仕組みを構築する。
またリージョン内の複数AZにリソースを分散させることで、単一の障害箇所がシステム全体に影響を及ぼさない設計が可能である。ポッド配置にはantiAffinityポリシーを適用することで、特定のノードやAZへの負荷集中を回避する。これにより、システム全体の安定性が向上する。
そして新バージョンのデプロイ時には、万が一の問題発生に備えて、迅速にリリース前の状態に戻せる仕組みが必要だと高棹氏。Blue/Greenデプロイメントは、この目的に特化した手法で、新旧バージョンのアプリケーションを並行して稼働させる。リリース後に問題が発覚した場合、トラフィックを旧バージョンへ戻すだけでシステムの安定性を確保できる。
さらにEKSクラスター自体のバージョンアップにおいても、Blue/Greenデプロイメントが有効である。新旧クラスターを並行して稼働させ、十分な検証を行った上で切り替えることで、運用のリスクを最小限に抑えることができる。高棹氏は「迅速なロールバックの仕組みは、金融システムにおける信頼性確保の要です」と運用面での重要性を強調した。
そして3つめのポイントとして、アプリエラー件数ゼロのEKSクラスターを維持することの重要性を強調した。
日々の運用において、エラー発生を抑えるためのクラスター維持は重要な課題だ。高棹氏は、クラスターのメンテナンス時にアプリケーションの稼働を維持する手法として、ローリングアップデートやライブマイグレーションを紹介した。これらの手法により、アプリケーションの稼働中断を最小限に抑えることが可能となる。
さらにアプリケーションの可用性を維持するためには、リソースの監視とプロアクティブな対応が不可欠である。AWSが提供するモニタリングツールを活用し、異常の兆候を早期に検出することで、システム全体の信頼性を維持する仕組みが構築されている。
これらの手法を総合的に組み合わせることで、EKSを活用した金融システムは、予期せぬ障害やアップデート時のリスクを軽減し、高い信頼性を実現する。
クラウドネイティブ技術の可能性
EKSを活用した金融システムのクラウドネイティブ化は、セキュリティと信頼性を両立させながら運用効率を向上させる手法だ。セッションでは具体的な事例や実践的なベストプラクティスが共有され、金融分野におけるクラウド導入の新たな可能性が示された。
高棹氏はセッションの最後に、「最後に言いたいことは、SIerでもクラウドネイティブができるということです。弊社に少しでも興味を持っていただきましたら、一緒にお仕事したいと思います」と語り、セッションを締めくくった。