VCP-DCV2022試験対策、またはvSphere理解のための回り道

(この記事は[個人ブログ](https://volatile-notepad.netlify.app/post/20220412_vcp_dcv/)に書いたものの再投稿です)

# はじめに

3月に [VCP-DCV 2022](https://www.vmware.com/learning/certification/vcp-dcv.html) を取得したので、備忘録も兼ねてこれまでのvSphereの学習をまとめました。

## 前提

- 業務でvSphereを利用している
- でもvSphereもインフラも分からなすぎて、会議の内容がサッパリ :sob:
- さすがにまずいと勉強開始、せっかくならとVCP-DCV合格を目標に
- 寄り道もしつつ1年かけて合格（←今ココ）

## 注意！

試験合格そのものが目的ならこの方法は **効率が悪いです**！他の方の合格体験記をおすすめします。
（私の一番の目標は、会議で出てくるvSphereの社内インフラ/業務の流れについての話についていけるようになることでした）

## 合格要件

- いずれかの公式トレーニングの受講完了 ([対象リスト](https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/certification/vmw-VCP-DCV-certification-preparation-guide.pdf))
- [Exam 2V0-21.20 : Professional VMware vSphere 7.x](https://www.vmware.com/learning/certification/vcp-dcv-7-exam.html)の試験に合格する

# やったこと
## 0か月: 学習開始(2021/05)

公式トレーニングも試験も会社費用で出していただけることになりました（ありがとうございます！）。
トレーニングは30万越えなので、無駄にするわけにはいきません。とはいえ今の理解度で受けても付いていけないので、まずは講義を理解できるだけの知識を付けることにしました。

### インフラの勉強

VCP-DCVの参考書を開いたはいいけど、「vSANはSANの仮想化？SANって何？」「ポートグループ？ポートって80とか443とか？[^1]」とちっともページが進みません。そもそもvSphere以前にインフラそのものが分かっていなかったので、まずは一般的なインフラの勉強から始めました。

特にネットワークが良く分からなかったので、「**3分間ルーティング基礎講座**」でスイッチとルーターの基礎を学習しました。

https://www.amazon.co.jp/%E3%80%94%E6%94%B9%E8%A8%82%E6%96%B0%E7%89%88%E3%80%95-3%E5%88%86%E9%96%93%E3%83%AB%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%E5%9F%BA%E7%A4%8E%E8%AC%9B%E5%BA%A7-3%E5%88%86%E9%96%93NetWorking%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-%E7%B6%B2%E9%87%8E-%E8%A1%9B%E4%BA%8C/dp/4774157376

### HoL(Hands on Labs)のチュートリアル

VMWare公式チュートリアル「**Hands on Labs**」で、実際にvCenterを操作しながら各リソースの雰囲気をつかみました。
最初は「**仮想化の基礎 101：vSphere の概要**」がおススメです。

https://web.hol.vmware.com/landingPages/index.html?id=HOL-Japan

使い方

https://www.youtube.com/watch?v=rhHKWfonfbQ

~~（私は方向音痴がひどすぎてUI上の文字を探すのに何分もかかってしまうので、まずvSphere Clientのレイアウトに慣れただけでも収穫でした）~~

### govmomi

開発業務で [govmomi](https://github.com/vmware/govmomi) を使用していたので、コードリーディングを少しずつ進めていきました。

~~（今までは「VMwareﾜｶﾗﾅｲﾂﾖｲﾋﾄﾆｵﾏｶｾｼﾏｽ :fearful: 」状態でまともに読んでいませんでした。我ながら酷すぎる...）~~

裏で叩いている [vSphere Web Services API](https://developer.vmware.com/apis/1192/vsphere) も、どんなパラメータがあるのか確認するようになりました。

## 2か月: 公式トレーニングの受講(2021/07)

推奨されている「[VMware vSphere: Install, Configure, Manage [V7]](https://mylearn.vmware.com/mgrReg/courses.cfm?ui=www_edu&a=one&id_subject=93058)」を受講しました。
（ちなみに試験範囲には「[VMware vSphere: Optimize and Scale [V7]](https://mylearn.vmware.com/mgrReg/courses.cfm?ui=www_edu&a=one&id_subject=93065)」も含まれるので、こちらは自習が必要です）

講義はオンラインで、**丸5日かけて演習環境（HoLのようなもの）でリソースを操作するハンズオン形式**でした。操作方法だけでなく、なぜその機能が作られたかの歴史的経緯から説明してくださりとても分かりやすかったです。

講義が終わった後は、復習として同じ操作をHoLでやってみたり、変な操作をするとどんなことが起きるか試してみたりました[^2]。

試した例

- スナップショット作成タスクを途中でキャンセル: consolidation needed発生
- シェア値100万 vs 1: きれいにCPU100万:1にはならなかったが、シェア値1のVMはガクガクになって操作できなかった

## 3か月: 参考書での学習開始

「**徹底攻略VCP-DCV教科書 VMware vSphere7対応**」で学習を進めました。各章で各リソースの役割と機能について説明されていて、巻末には練習問題もついています。

https://www.amazon.co.jp/%E5%BE%B9%E5%BA%95%E6%94%BB%E7%95%A5VCP-DCV%E6%95%99%E7%A7%91%E6%9B%B8-VMware-vSphere7%E5%AF%BE%E5%BF%9C-%E5%BE%B9%E5%BA%95%E6%94%BB%E7%95%A5%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-%E4%BA%8C%E5%B2%A1%E7%A5%90%E4%BB%8B/dp/4295011800

まずは、メモを取りながらこの本を2周しました。

また、VMware公式ブログの入門記事にもお世話になりました。

[「押さえておきたいvSphereの基本」連載開始します - VMware Japan Blog](https://blogs.vmware.com/vmware-japan/2014/01/%E3%80%8C%E6%8A%BC%E3%81%95%E3%81%88%E3%81%A6%E3%81%8A%E3%81%8D%E3%81%9F%E3%81%84vsphere%E3%81%AE%E5%9F%BA%E6%9C%AC%E3%80%8D%E9%80%A3%E8%BC%89%E9%96%8B%E5%A7%8B%E3%81%97%E3%81%BE%E3%81%99.html)

## 5か月: 別のことをやりはじめる(2021/10)

完全にタイムロスですありがとうございました :innocent:  ~~Goのジェネリクスが触りたかったんだ...~~

## 8か月: 勉強再開(2022/01)

### 演習

「徹底攻略VCP-DCV教科書」の問題を全問正解できるまで周回しました。

### おうちvCenter構築

HoLはとても便利ですが、業務で使っている `govc` が入っていないのでリソースのイメージがいまいち掴めていませんでした。`govc` からvCenterに好きにリクエストしたいので、自宅にvCenterを作成しました。

構築については[こちらの記事](https://volatile-notepad.netlify.app/post/20220220_home_vcsa/)で紹介しています。

副次効果として、HoLでは試せない**デプロイ手順についての理解が深まりました**。

## 10か月: 試験当日(2022/03)

自宅受験は準備がかなり複雑だったので、試験会場で受けました。**身分証明書が2ついる**ので要注意です。
~~（免許持ってないマンなのでパスポートとマイナンバーカードで挑みました）~~

https://www.pearsonvue.co.jp/Clients/VMware.aspx

講義は2021年受講でしたが、問題なく受験できました。当日は **「選択肢を2つ選ぶ問題」に注意すれば大丈夫です**。

# おわりに

以上、邪道の極みな合格体験記でした。
この勉強方法が正解だったかは分かりませんが、**vCenterに対する漠然とした苦手意識は完全に無くなりました。** vCenterは友達。~~その気になれば机の横にだって置けるんだから~~

ここまでお読みいただきありがとうございました。

[^1]: 「ポートグループ」の「ポート」はスイッチのポート(L2層)のことで、TCPのポート(L4層)とは関係ありません。
[^2]: HoLはnested環境なので、リソースを消しても問題ありません（さすがに過負荷になると迷惑がかかりそうですが...）