応用情報技術者 2023年 秋期 午前2 問14
問題文
IaC(Infrastructure as Code) に関する記述として、最も適切なものはどれか。
選択肢
ア:インフラストラクチャの自律的なシステム運用を実現するために、 インシデントへの対応手順をコードに定義すること
イ:各種開発支援ツールを利用するために、 ツールの連携手順をコードに定義すること
ウ:継続的インテグレーションを実現するために、アプリケーションの生成手順や試験の手順をコードに定義すること
エ:ソフトウェアによる自動実行を可能にするために、 システムの構成や状態をコードに定義すること(正解)
IaC(Infrastructure as Code) に関する記述 +【午前2 解説】
要点まとめ
- 結論:IaCとはシステムの構成や状態をコードで定義し、自動化・一貫性を実現する手法です。
- 根拠:IaCは手動設定のミスを減らし、環境構築の再現性やスピードを向上させるために用いられます。
- 差がつくポイント:IaCはインフラの設定をコード化することに特化し、運用手順や開発ツール連携とは異なる点を理解することが重要です。
正解の理由
選択肢エは「ソフトウェアによる自動実行を可能にするために、システムの構成や状態をコードに定義すること」とあり、IaCの本質を正確に表しています。IaCはサーバーやネットワークなどのインフラ設定をコード化し、環境の構築や管理を自動化する技術です。これにより、手動設定のばらつきやミスを防ぎ、迅速かつ確実な環境構築が可能になります。
よくある誤解
IaCはインシデント対応や開発ツールの連携手順をコード化することではありません。これらは運用自動化やCI/CDの範囲であり、IaCの定義とは異なります。
解法ステップ
- IaCの意味を確認する(Infrastructure as Code=インフラをコード化)
- 各選択肢の内容がインフラのコード化に該当するかを判断する
- インシデント対応や開発支援ツールの連携はIaCの範囲外と認識する
- システム構成や状態をコードに定義する選択肢を選ぶ
選択肢別の誤答解説
- ア:インシデント対応手順のコード化は運用自動化の一部であり、IaCの定義ではありません。
- イ:開発支援ツールの連携手順はCI/CDやDevOpsの話で、IaCの範囲外です。
- ウ:アプリケーションの生成や試験手順は継続的インテグレーションの話であり、IaCとは異なります。
- エ:正解。インフラの構成や状態をコード化し、自動化を実現するIaCの本質を示しています。
補足コラム
IaCは代表的なツールにTerraformやAnsible、CloudFormationなどがあります。これらはコードでインフラを定義し、環境の構築や変更を自動化します。IaCの導入により、環境の再現性が高まり、開発・運用の効率化が進みます。
FAQ
Q: IaCとDevOpsは同じ意味ですか?
A: いいえ。IaCはインフラのコード化技術で、DevOpsは開発と運用の文化やプロセス全体を指します。
A: いいえ。IaCはインフラのコード化技術で、DevOpsは開発と運用の文化やプロセス全体を指します。
Q: IaCはどのようなメリットがありますか?
A: 環境構築の自動化によりミスを減らし、迅速な展開やスケーラビリティの向上が期待できます。
A: 環境構築の自動化によりミスを減らし、迅速な展開やスケーラビリティの向上が期待できます。
関連キーワード: Infrastructure as Code, 自動化、インフラ構成管理、Terraform, Ansible, CloudFormation

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

