導入
この投稿では、フラスコ侵入検知システムの AWS への導入についてまとめます。
注: これはプロジェクトの概要です。プロジェクトの展開の完全な段階的なプロセスにアクセスするには、下のリンクをクリックしてください
Flask ベースの侵入検知システムを AWS ECS にデプロイ
ビクター ・ 11月15日
#devops
#Python
#aws
#ドッカー
プロジェクトのアーキテクチャ
ここでは、AWS アーキテクチャ図と並行して、プロジェクトに使用される AWS サービスを定義します
AWS アーキテクチャ図
導入リソース
1.VPC
us-east-1 リージョンに VPC を作成しました
-
サブネット: VPC に続いて、2 つのアベイラビリティーゾーンに 4 つのサブネットを作成しました:
- パブリック サブネット: インターネットに接続された Application Load Balancer (ALB) およびインターネットを必要とするその他のリソース用に、us-east 1a および us-east 1b アベイラビリティ ゾーンに 2 つのパブリック サブネットを作成しました。
- プライベート サブネット: us-east 1a および us-east 1b アベイラビリティ ゾーンにも 2 つのプライベート サブネットを作成しましたが、今回は ECS サービス タスク用です。これにより、より安全なアーキテクチャが実現します。
-
インターネット ゲートウェイ (IGW): 新しく作成された VPC には接続されていないため、IGW を接続し、VPC のルート テーブルに追加して、VPC インターネット アクセスを許可しました
2. VPC エンドポイント
VPC エンドポイントにより、プライベート サブネット内の ECS タスクが特定のリソースにアクセスできるようになります。
- ECR および Docker エンドポイント: ECS タスクが Docker イメージをプルできることを確認します。
- CloudWatch エンドポイント: 安全なログ記録用。
- S3 ゲートウェイ エンドポイント: データと構成に安全にアクセスします。
3. アプリケーションロードバランサー
- リスナー: ECS ターゲット グループにトラフィックを転送するように構成されています。ポート 80 (HTTP) でリッスンします
- ターゲット グループ: プライベート サブネット内の ECS タスクにリクエストをルーティングします
- 受信トラフィックを ECS タスク全体に分散します。
4. エラスティック コンテナ レジストリ (ECR)
このサービスを使用して Docker イメージをホストしました。
5. エラスティック コンテナ サービス (ECS)
- タスク定義: ここで Docker コンテナを定義し、必要なリソースを割り当てました
- サービス: これにより Fargate タスクが作成され、ロード バランサーの背後でスケールされます。
6. ルート53
- 私はこのサービスをアプリケーション ドメインの DNS 構成に使用し、トラフィックを ALB にルーティングしました。
直面する課題と解決策
チャレンジ:
プライベート サブネットの ECS タスクが ECR の Docker イメージにアクセスできませんでした
解決策:
VPC エンドポイントを使用して、プライベート サブネット内の ECS タスクが ECR リポジトリにアクセスできるようにしました。
今後の改善点
Code Pipeline と Codebuild を使用して CI/CD パイプラインを作成することで、デプロイメント全体を自動化する予定です。
読んでいただきありがとうございます。私のプロフィールをチェックしてください。このようなクラウドと DevOps の投稿が他にもあります
関連リンク
- GitHub でプロジェクトをチェックアウトします
VSI12
/
IDSプロジェクト
これは侵入検知システムです
AWS への侵入検知システムの導入
プロジェクトの概要
このプロジェクトでは、Docker を使用して Flask Web アプリケーションを構築およびコンテナ化し、それを AWS にデプロイする方法を示します。このアーキテクチャは、さまざまな AWS アーキテクチャを活用することで、安全で可用性が高く、フォールト トレラントでスケーラブルなビルドを保証します。
建築
-
Virtual Private Cloud (VPC): 高可用性とセキュリティを実現するために、2 つのアベイラビリティ ゾーンにわたるパブリック サブネットとプライベート サブネットを使用して構成されます。
-
Interget Gateway: VPC とインターネット間の通信を有効にします
-
VPC エンドポイント: VPC エンドポイントにより、プライベート サブネット内の ECS タスクが特定のリソースにアクセスできるようになります。
GitHub で表示
以上がFlask ベースの侵入検知システムを AWS ECS にデプロイする (プロジェクトの概要)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。