316-AWS SAP AWS 「理論・実践・一問道場」

 

理論

プルリクエスト(pull request)とは、
ソフトウェア開発において、コードの変更を他の開発者に通知し、レビューやマージを依頼する機能
です。
プルリクエストの主な目的は、コードの質を維持しつつ、異なる開発者が作業しやすい環境を整えることです。プルリクエストを使用することで、次のようなメリットがあります。
  • コードレビューする文化を根付かせることができる
  • 開発者がオープンソース開発に参加しやすくなる
  • 品質の高いコードを作ることが可能になる
レビュー担当者の負担を減らすことができる
  • レビュー担当者の負担を減らすことができる
プルリクエストは、GitHub、BitBucket などの主要な Git ホスティングサービスやツールで利用できます。
プルリクエストの作成や閲覧、編集などの操作は、次のとおりです。
GitHub でプルリクエストを作成するには、リポジトリ内のブランチにプッシュした変更を他のユーザーに知らせる
  • GitHub でプルリクエストを作成するには、リポジトリ内のブランチにプッシュした変更を他のユーザーに知らせる
GitHub Desktop でプルリクエストを表示するには、[現在のブランチ] をクリックし、ドロップダウン メニューの上部にある [Pull Requests] をクリックする
  • GitHub Desktop でプルリクエストを表示するには、[現在のブランチ] をクリックし、ドロップダウン メニューの上部にある [Pull Requests] をクリックする
プルリクエストでは、ソースコードの変更箇所をわかりやすく表示したり、コードについて意見や質問をコメントしたりすることができます
  • プルリクエストでは、ソースコードの変更箇所をわかりやすく表示したり、コードについて意見や質問をコメントしたりすることができます

実践

一問道場

質問 #316
ソフトウェア会社は、開発プロセスの一環としてプルリクエストをテストするために、短期間で使用されるテスト環境を作成する必要があります。各テスト環境は、オートスケーリンググループ内の単一の Amazon EC2 インスタンスで構成されています。テスト環境は、テスト結果を報告するために中央サーバーと通信できる必要があります。この中央サーバーはオンプレミスのデータセンターに配置されています。ソリューションアーキテクトは、テスト環境を手動の介入なしに作成および削除できるようにするソリューションを実装する必要があります。会社はトランジットゲートウェイとオンプレミスネットワークへの VPN アタッチメントを作成しました。
最小限の運用負荷でこれらの要件を満たすソリューションはどれですか?
A. AWS CloudFormation テンプレートを作成し、このテンプレートにトランジットゲートウェイのアタッチメントおよび関連するルーティング構成を含めます。このテンプレートを含む CloudFormation スタックセットを作成します。アカウント内の各 VPC に新しいスタックをデプロイするために、CloudFormation StackSets を使用します。各テスト環境に新しい VPC をデプロイします。
B. テスト環境用に単一の VPC を作成します。この VPC にトランジットゲートウェイのアタッチメントおよび関連するルーティング構成を含めます。AWS CloudFormation を使用して、すべてのテスト環境をこの VPC にデプロイします。
C. テスト用に AWS Organizations に新しい OU を作成します。VPC、必要なネットワークリソース、トランジットゲートウェイのアタッチメント、および関連するルーティング構成を含む AWS CloudFormation テンプレートを作成します。このテンプレートを含む CloudFormation スタックセットを作成します。テスト用 OU の各アカウントにデプロイするために CloudFormation StackSets を使用します。各テスト環境用に新しいアカウントを作成します。
D. テスト環境の EC2 インスタンスを Docker イメージに変換します。AWS CloudFormation を使用して、新しい VPC に Amazon Elastic Kubernetes Service (Amazon EKS) クラスターを構成し、トランジットゲートウェイのアタッチメントと関連するルーティング構成を作成します。Kubernetes を使用して、テスト環境のデプロイとライフサイクルを管理します。

解説

この質問では、テスト環境を効率的に作成および削除しつつ、オンプレミスの中央サーバーとの通信を確保するソリューションを選ぶ必要があります。重要なポイントは「最小限の運用負荷で要件を満たす」という条件です。
各選択肢の解説を以下に示します。

A. CloudFormation を使用して各 VPC を独立管理

解説:
  • 各テスト環境ごとに新しい VPC を作成し、トランジットゲートウェイの接続設定を行います。
  • CloudFormation StackSets を利用することで、テンプレートを基に効率的にリソースを作成できますが、環境ごとに新しい VPC を作成するため、リソース管理が煩雑になり、運用負荷が増加します。評価: 運用負荷が高いため不適切。

B. 単一の VPC を使用してすべてのテスト環境を管理

解説:
  • すべてのテスト環境を単一の VPC にまとめ、トランジットゲートウェイ接続を共有します。
  • CloudFormation を使用することで、インフラのデプロイと管理を簡素化できます。
  • テスト環境ごとに VPC を分ける必要がないため、管理コストが削減され、運用負荷が軽減します。評価: 最小限の運用負荷で要件を満たす適切なソリューション。

C. 各テスト環境ごとに新しいアカウントを作成し、専用の VPC を使用

解説:
  • テスト環境ごとに新しいアカウントを作成し、独立したリソースを管理します。
  • 各アカウントに専用の VPC を作成するため、トランジットゲートウェイの接続設定やアカウント管理が複雑になります。
  • 運用負荷が非常に高く、管理の手間も大きいです。評価: 運用負荷が高すぎるため不適切。

D. EKS を使用してテスト環境を管理

解説:
  • テスト環境を Docker イメージ化し、EKS を使用してコンテナとして管理します。
  • Kubernetes を使用してデプロイとライフサイクルを管理できますが、EKS のセットアップや運用には専門知識が必要です。
  • 単一の VPC にまとめられるためリソース効率は良いですが、EKS の運用が運用負荷を高める可能性があります。評価: 運用負荷は中程度ですが、EKS の運用が不要であればより簡単な解決策を選ぶべきです。

正解: B

単一の VPC を使用することで、最小限の運用負荷で要件を満たしつつ、簡素で効率的な運用が可能になります。
317-AWS SAP AWS 「理論・実践・一問道場」Secrets Manager KMS315-AWS SAP AWS 「理論・実践・一問道場」RDSデータベースのクロスリージョン読み取りレプリカ
Loading...
minami
minami
みなみの成長 🐝
Announcement

🎉 ブログへようこそ 🎉

名前: みなみ一人会社
性別:
国籍: China 🇨🇳
政治スタンス: 民主主義支持者
完全独学で基本情報技術者をはじめ、32個の資格を仕事をしながら取得。
現在はIT会社で技術担当として働きながら、ブログ執筆や学習支援にも取り組んでいます。
独学で合格できる学習法や勉強法、試験対策を発信中!

📚 発信内容

  • 💻 IT・システム開発
  • 🏠 不動産 × 宅建士
  • 🎓 MBA 学習記録