STAGE 06 / 総仕上げ

試験対策ドリル:自動化と運用

考えてみよう

自動化とSDNの範囲は「知識問題」として出やすい分野です。あなたはREST・JSON・SDN・構成管理ツールの用語を、初見の設問形式で正確に答えられるでしょうか?

このレッスンでは、これまで学んだ自動化と運用の知識を、試験形式の問題で一気に総復習します。答えを見る前に、必ず自分の頭で考えてから読み進めてください。

このレッスンはドリル専用。5つの出題テーマ

自動化と運用の範囲は、これまで学んだ用語や仕組みの「対応関係」を正確に覚えているかが勝負です。ここでは試験によく出る5つのテーマ——RESTメソッドとCRUDステータスコードJSON読み取りAnsibleの特徴SDNのプレーン分離——を順番に演習していきます。

テーマ1:RESTメソッドとCRUDの対応

確認問題

既存のVLAN設定を「丸ごと新しい内容に置き換えたい」とき、使うべきHTTPメソッドはどれでしょう?

答えを見る

答えはPUTです。CRUDのUpdate(更新)に対応し、指定したリソースの内容を丸ごと置き換えます。新規作成ならPOST(Create)、単なる参照ならGET(Read)、削除ならDELETE(Delete)になる点とセットで覚えておきましょう。

確認問題

コントローラから現在のインターフェース状態の一覧を「取得」したいだけのとき、使うべきHTTPメソッドはどれでしょう?

答えを見る

答えはGETです。GETはCRUDのRead(読み取り)に対応し、データを変更せずに取得するだけの操作です。GETリクエストを送ってもサーバー側の状態は変化しない、という性質もあわせて押さえておきましょう。

テーマ2:ステータスコード

確認問題

APIにPOSTリクエストを送り、新しいリソースの作成に成功したとき、返ってくる可能性が高いステータスコードはどれでしょう?

答えを見る

答えは201(Created)です。単なる成功を表す200(OK)と混同しやすいですが、POSTで新規作成が成功した場合は201が返るのが典型的なパターンです。GETやPUTの単純な成功では200が使われます。

確認問題

APIリクエストに正しい認証情報(トークンやパスワード)を付け忘れて送信した場合、返ってくる可能性が高いステータスコードはどれでしょう?

答えを見る

答えは401(Unauthorized)です。「あなたが誰かわからない」状態を表します。認証はできているものの、その操作をする権限が無い場合の403(Forbidden)とは区別しましょう。また、指定したURLのリソース自体が存在しない場合は404(Not Found)になります。

テーマ3:JSONの読み取り

確認問題

次のJSONで、ports の1番目の要素の speed は何でしょう。 ``json { "ports": [ { "name": "Gi0/1", "speed": "1000" }, { "name": "Gi0/2", "speed": "10000" } ] } ``

答えを見る

答えは 1000 です。ports は配列で、1番目の要素は { "name": "Gi0/1", "speed": "1000" } です。配列は0番目からではなく「1番目、2番目」という順番で数えて対応関係を確認する練習をしておきましょう。

確認問題

JSONにおいて、複数の値を順序付きで並べるときに使う記号はどれでしょう?

答えを見る

答えは [ ](角括弧、配列) です。キーと値のペアをまとめるのは { }(波括弧、オブジェクト) で、両者の役割を混同しないことが大切です。オブジェクトの中に配列が入ったり、配列の中にオブジェクトが並んだりと、入れ子構造になる点にも注意しましょう。

テーマ4:Ansibleの特徴

確認問題

Ansibleの特徴として正しいものはどれでしょう?

答えを見る

答えはエージェントレスで動作し、設定はYAML形式のPlaybookに記述することです。管理対象の機器に専用のエージェントソフトをインストールする必要がなく、SSHなどの標準的な接続方式だけで設定を配布できます。この点はエージェント型のPuppetChefとの大きな違いです。

テーマ5:SDNのプレーン分離

確認問題

SDNアーキテクチャにおいて、実際にパケットを転送する処理を担うのはどのプレーンでしょう?

答えを見る

答えはデータプレーンです。SDNでは、経路の判断など「頭脳」にあたるコントロールプレーンをコントローラに集約し、実際のパケット転送という「実務」を担うデータプレーンをスイッチやルーターに残す、という役割分担が基本の考え方です。

試験でのポイント

自動化と運用の分野は出題比率こそ大きくありませんが、用語の対応関係を正確に覚えているかどうかがそのまま得点に直結します。「GET=Read」「POST=Create」「PUT=Update」「DELETE=Delete」というCRUD対応、「2xx=成功・4xx=クライアント側の誤り・5xx=サーバー側の誤り」というステータスコードのグループ分け、「Ansibleだけがエージェントレス」という構成管理ツールの違い、「コントロールプレーンは頭脳・データプレーンは実務」というSDNの役割分担——これらはいずれも短時間で暗記できる一方、混同しやすい引っかけが多い分野でもあります。焦らず、一つひとつのペアを声に出して確認する習慣をつけておきましょう。

ゆみちゃん
ゆみ

RESTメソッドとCRUD、ステータスコード、JSON読み取り、Ansibleの特徴、SDNのプレーン分離——この5テーマ、全部解けたかな? 自動化の範囲は覚えることさえ覚えれば得点源になるから、繰り返し復習してね。次はいよいよ、CCNA試験そのものの攻略ガイドだよ。