Infisical を用いた Hugging Face のシークレット管理スケーリング
Hugging Face はシークレット管理を Infisical に移行し、マルチクラウドインフラ全体で機密設定データを一元化しました。この移行により、シークレットの散在や手動ローテーションの負担というリスクに対処し、Kubernetes、CI/CD パイプライン、ローカル開発環境と統合された開発者フレンドリーなワークフローを提供します。
マルチクラウドシークレット管理の集中化
Hugging Face は AWS のみの構成から、Azure と GCP を含むマルチクラウド環境へと移行しました。HashiCorp Vault のような重量級ソリューションの複雑さを回避するため、チームは Infisical を採用し、マルチクラウド抽象化と認証情報管理の集中化システムを実現しました。
この移行で解決された重要なインフラ課題は次のとおりです:
- Secret Sprawl: 環境ごとに管理が統一されていないため、セキュリティリスクが増大していました。
- Permission Complexity: チーム規模の拡大に伴い、Okta SSO と連携したロールベースアクセス制御 (RBAC) の強化が必要となっていました。
- Local Development Friction: 従来の
.envファイルの使用はセキュリティを損ない、開発者の生産性を低下させていました。 - Manual Rotation Burden: 暴露された認証情報に関する過去のセキュリティインシデントにより、シークレットの自動ローテーションが求められました。
Kubernetes との統合と自動化
Kubernetes は Hugging Face の本番環境の中核を担っています。チームは Infisical Kubernetes Operator を利用し、Infisical プラットフォームと Kubernetes オブジェクト間のシークレット同期を自動化しています。
自動シークレット同期
Infisical Operator は Infisical プラットフォームでの変更を監視し、対応する Kubernetes シークレットへ更新を伝搬します。これは InfisicalSecret カスタムリソース定義 (CRD) を通じて実現され、特定の Infisical シークレット ID を対象の Kubernetes シークレット名にマッピングします。
デプロイ制御
Infisical Operator はシークレット変更時にコンテナのリロードを自動的にトリガーできますが、Hugging Face のエンジニアは通常、手動での再デプロイを選択します。これは、数多くのレプリカで毎分 1,000 万件以上のリクエストを処理する環境において、デプロイを正確にコントロールするために必要な判断です。
ローカル開発と CI/CD ワークフロー
安全でないローカルの .env ファイルを排除するため、Hugging Face は Infisical CLI を使用してシークレットを直接開発環境に注入します。これにより、ローカル設定が本番基準と一致し、新しいエンジニアのオンボーディング時の摩擦が軽減されます。
CI/CD では、Infisical を GitHub Actions に OIDC 認証と Terraform を組み合わせて統合しています。セキュアな環境内のセルフホストランナーを活用することで、すべてのデプロイが本番レベルのセキュリティ基準を満たすようにしています。
セキュリティとアクセス管理
セキュリティは Okta と統合された細粒度の RBAC システムで強化されています。権限は Okta グループから自動的にマッピングされ、開発者は自分のプロジェクトに対して管理権限を保持しつつ、フロントエンド・バックエンドチームには読み書き権限を制限できます。
さらに、プラットフォームは ML/AI 研究者向けの安全な認証情報共有を提供し、監査とシークレットローテーションのプロセスを簡素化します。これらは迅速なインシデント対応にとって重要です。
技術的成果
Infisical によるシークレット管理の集中化は、以下のような主要な運用改善をもたらしました:
- Reduced Configuration Time: セルフサービスのワークフローにより、エンジニアが環境シークレットを手動で設定する必要がなくなりました。
- Enhanced Incident Response: 自動監査と細粒度アクセス制御により、セキュリティを「シフトレフト」するアプローチが可能になりました。
- Infrastructure Consistency: クラウドプロバイダー、Kubernetes クラスタ、CI/CD パイプライン全体で統一された統合が実現し、シークレット管理の不整合が解消されました。
Hugging Face のインフラストラクチャ責任者である Adrien Carreira は次のように述べています:
"Infisical provided all the functionality and security settings we needed to boost our security posture and save engineering time. Whether you're working locally, running kubernetes clusters in production, or operating secrets within CI/CD pipelines, Infisical has a seamless prebuilt workflow."