vHoge

VMwareのアレコレ備忘録。CLIでがんばるネタ多め。

株式会社インターネットイニシアティブに入社しました

本日、株式会社インターネットイニシアティブに入社しました。

自身の IT エンジニアの看板は下ろし、今後は IT コンサルタントとして IT インフラやプラットフォーム、クラウド系のコンサルティングや PoC を行っていく担務になります。

コンサルと言っても ERP や業種/業務系のコンサルではないので、技術寄りな方…?

会社としては大規模に VMware なサービス展開を行っている会社ではありますが、部門として別のところで、自分が VMware に関われるかは担当プロジェクト次第なところもあり明言できませんが、VMUG や Meetup は何とか継続していければと考えていますので、関係各所の皆様には引き続き何卒よろしくお願いいたします。

OpenStack で感じる vSphere リソース抽象化のすばらしさ

タイトル長いな…
OpenStack 触ってたときに感じた vSphere リソース抽象化 の話。

OpenStack とは

今となっては言わずもがな、オープンソースで開発されているクラウド基盤。
ja.wikipedia.org コンピュートリソースやネットワーク、ストレージなどのハードウェアを抽象化して管理し、リソース操作 API を提供する。またユーザやテナント管理を提供し、サービス利用者は API を通じて On-Demand でのリソース利用を可能としている。

リソースの実体はバックエンドに存在している KVM や vSphere などの仮想化機構や物理ハードウェアから払い出される。 仮想化機構や物理ハードは OpenStack のコンポーネントからコミュニティや各ベンダで開発されている Driver や Plugin を通して操作され、リソース提供が行われており、OpenStack 自体が仮想化や Networking の機能を持ち、リソース提供しているわけではない。

OpenStack 自体が仮想化機能を持っているわけではない。(ここ重要)

vSphere vs OpenStack ?

上記の通り、OpenStack は仮想化機能を持っておらず、機能として競合するわけではないので、vSphere (ESXi) と競合するものではない。
というか、 VMware 社が VMware Integrated OpenStack (VIO)として提供、サポートするディストリビューションがあるぐらいの共存するべき存在のもの。
www.vmware.com

強いて言えば vCloud Director が競合しているんですかね?
vCloud Director は実物見たことないのでほとんど分からないんですけど…

VM リソースの払い出し

OpenStack での VM リソース払い出しは nova というコンポーネントが担当している。
ネットワークやストレージは他のコンポーネントになっているので今回は割愛。

KVM

バックエンドが KVM の場合、構成としては以下。
KVM nova-api, nova-conductor, nova-scheduler というプロセスが全体の Controller として管理を行い、nova-compute プロセスが各 HV 上に存在し libvertd 経由で各 VM を操作している。

大事なのは各 HV 毎に nova-compute プロセスが必要。

vSphere

一方で vSphere の場合の構成。
vSphere nova-api, nova-conductor, nova-scheduler は特に変わらないが、nova-compute は各 HV 上に存在するわけではなく、Controller の一部として存在し、ここから VMware 用の Driver 経由で vSphere API を叩く。
(ESXi 上にホイホイデプロイできないしね…)

KVM の場合だと HV 毎に必要だった nova-compute プロセスですが、
この構成の場合、nova-compute は vSphere のクラスタ毎に必要となる。

nova-compute配置
曲線オブジェクト難しい…

vSphere クラスタ = 巨大 HV

OpenStack での VM 起動は nova-scheduler が管理下の HV の残リソースや構成などから決定し、該当 HV 上の nova-compute に対し VM プロセスの作成を指示する。
vSphere の場合、nova-scheduler はどの vSphere クラスタ上に作成するかまでを決定し、どの HV 上に立てるかは vCenter の DRS 側でスケジューリングを行なっている。
※ なので OpenStack - vSphere 構成の場合、DRS (完全自動化) が要件になっている。
参考:OpenStack Docs: VMware vSphere

また、OpenStack 側で各 HV の残リソース情報を確認した際、nova-compute 経由で情報を取ってきているので、vSphere 構成だと表示される情報はクラスタリソースの合計値になっている。

つまり、OpenStack から見た場合、vSphere クラスタ = 巨大 HV とみなし、それにより KVM 構成と同じ nova プロセス構成で実現できている。

その根底にあるものは

OpenStack から話を展開してきましたが、別に vSphere クラスタ = 巨大 HV は OpenStack に限らず、vSphere が元々持っている抽象化の思想だと思います。
各 HV リソースを抽象化してリソースプールとし、必要に応じてリソースを払い出すというまさに仮想化、抽象化の神髄だが、このレベルでそれを実現できている製品は知っている限り他だと見当たらないような…
vSphere はそこに多くの実績があり、個人的にはアドバンテージの 1 つになっています。

そして、これを実現できているのは vMotion と DRS がかなり大きい。
vMotion は Live Migration として KVM もできたりするが、各 HV のリソース状況を取得して評価し、偏りが発生した場合は自動的に vMotion で均一化する DRS 相当の機能を実現しているものはあまり聞いたことなく…あるのかな? まぁ、vMotion 自体も信頼と実績が違いすぎる気も。

実際 KVM 構成の OpenStack だと結局 HV 単位のプロビジョニングベースでのリソース管理となっており、ノイジー問題を引くことも多々あった。
vSphere 構成の OpenStack だとクラスタ単位でのリソース管理となり DRS が効いているおかげでノイジー問題を引くことも少なかった印象。
(諸事情によりオーバーコミットはあまり攻めなかったが、おそらく KVM より攻めても全然大丈夫そう)

結局のところ

何か発散しそうなので無理矢理締めると

  • vSphere のリソース抽象化はすばらしい
  • vSphere クラスタ = 巨大 HV
  • その根底には vMotion と DRS

クラウド的に On-Demand で VM が作られる環境での vSphere は積極的に DRS を入れておくのがおすすめ。
これにリソースプールとかアフィニティルールがあったりでかなり緻密に管理できたりするのですが、On-Demand だとオーバースペックかも…
(リソースプールはともかく、アフィニティは都度 VM に適用なので)

ヤフー株式会社を退職します(しました)

個別にお知らせした方もいらっしゃいますが、
2019/10/31 付でヤフー株式会社を退職いたします。
実際のところは本日 2019/10/18 が最終出社日で、PC もスマホ社員証も全て返却済なので本日が退職みたいなものです。

関係各所の皆様には大変お世話になりました。ありがとうございました。

花
別にネガティブな理由やセンセーショナルな出来事があって辞めるわけではなく、面白可笑しく書けるような文才があるわけでもないのですが、一応ご報告までとして書いておきます。

退職エントリではないつもりですが、退職エントリになっちゃうのかなぁ。

退職理由

ネガティブな理由が何も無かったかと言われるとそうではなく、細かいものならありますが、それでも退職モチベーションになるようなものはありません。
他に興味があること、やりたいことができたというのが大きいです。

35歳プログラマ限界説

巷でよく言われるアレ。
ウチの会社に限ぎらず界隈を見てみるとナニソレな感じで、何歳になっても現役でコード読み書きしている人はたくさんいらっしゃいますが、やっぱりこの説は存在しているのかなというのが個人的実感。
別にコード読み書きするのがキツいとか限界とかではなく。
経験を積んで色々な視野が広がってきたことで現場エンジニアリングの背景の世界、それこそ IT 戦略や企画、ユースケースとかそんな話に興味が向いてきて、相対的に現場エンジニアリングやプログラミングへの興味が薄れてきたという感じ。
いわゆるコンサル的な上流への興味が大きくなり、そういうことができるところに行こうというのが大きい理由。

と言っても自分、今35歳でないですけど。

ヤフーに入社してどうだったか

もし違う会社に行っていたらみたいなタラレバはしてもしょうがないので知りませんが、
ヤフーに入社したことで VMware をガッツリさわり色々習得し、VMUG や vExpert、コミュニティ活動に参加でき、次の仕事へと繋がったと考えると間違ったものではなかったと思っています。

今後の予定

これから2週間ほどは遅い夏休みということで、実家帰ったり旅行したり、(車検から帰ってきたら)バイクで遠出とかしたいなぁと。
で、11 月より新天地での勤務となります。
そのため 11 月の動きが見えないので vForum は行けるかどうかは分かりません…

新天地についてはまだ入社前ということもあるので、 11月以降に Open にすると思います。

VMUG UserCon 2019 Autumn

(そんなに忙しいワケではなかったのだが、中々書けなったネタを消化)

半期に一度の部会合同でのイベント。
今回から合同部会あたらめ UserCon Autumn に。

Outline

会場写真撮ってなかった…
光景は FacebookVMUG ページ を見てもらえれば。
なんか仮装したおじさんが写っていますw(仮想と仮装をかけてとのこと)

ノベルティ

会場写真は撮ってなかったけど、ノベルティはちゃっかり。

閉じた状態
閉じた状態
全展開状態
全展開状態
マルチツールってやつですかね。
他ではあまり見かけない、普通に使えそうな便利なノベルティ

Agenda

  1. VMworldサマリー
  2. 仮想マシン6万台を運用してわかったVDI移行の表と裏
  3. Meetupノススメ
  4. VMUGを活用したVMwareNSXトレーニング受講報告 ---Install,Configure,Management[V6.4]---
  5. なつやすみ日記
  6. VMUG.COMから見るJAPAN VMUGの魅力

1. VMworldサマリー

VMware の林(りん)さんによる VMworld 2019 US の Update。

  • Tanzu / Project Pacific
  • Virutal Cloud Networking
    • NSX-T 2.5
      • NSX Intelligence
      • NSX Advanced LoadBalancer (AviNetworks)
        • アプリケーションデリバリーコントロール(L2-L7)
  • Protect
    • CarbonBlack 買収
  • bitfusion
  • VMware Cloud on AWS
  • Azure VMware Solution
  • VMware Cloud on Dell EMC
  • VMware Workspace ONE
    • MobileFlows
    • Intelligent Hub
    • Degital Employee Experiece Management
    • Horizon on VMC on AWS
    • Horizon7

Tanzu / Project Pacific をのぞくと VMworld Update はここが初?
特に EUC 周りの話はあまり無さそう。

Q/A では Pacific のライセンス話が少々。
詳細はまだ未定だが、個別ライセンスにはならないそうな…?
他、VIC の今後や PKS との住み分けの質問が飛んでいた。

それと additional な話として ODYSSEY の話。
vWarrior が Update され、ODYSSEY として vForum で正式にプログラム化。
ということで、10 月初旬よりエントリーが開始されるそうな。

2. 仮想マシン6万台を運用してわかったVDI移行の表と裏

リクルートテクノロジーズさん(リクルートグループの機能会社)での VDI 更改話。
フレキシブルワーク環境や不正防止と色々達成できたが、PC 管理コストの削減においてコンポーネントの複雑さやサポート範囲、 EOSL 時期の違い、需要予測と考慮点が多く、課題が残る結果に…というお話。

VDI は担務外なのだが、それでも大変さが伝わるお話…

3. Meetupノススメ

自分のセッションですが、発表資料は Closed の講演として社内承認通しているのでアップロード予定はありません…

ネタとしては改めて VMware DevOps Meetup / VM Meetup Tokyo のご紹介。
セッション内で挙手してもらった限り、参加経験者は数名程度だったので場所としてはよかったかも。
やっぱ VMUG は administrator 層で Meetup は developer 層なのかなぁ…
そんなに規模が無ければ兼任が多そうではあるが、結構参加者被らない。

4. VMUGを活用したVMwareNSXトレーニング受講報告 ---Install,Configure,Management[V6.4]---

VMUG 支援プログラム(?)で行ってきた VMware NSX ICM コースの教育受講録。
受講に向けた予習どころやざっくりの講義内容紹介。

発表者(受講者)の林さんは、その後見事に VCP6-NV 合格まで昇華。
素晴らしい。

5. なつやすみ日記

こちらは vSphere の ICM コース教育受講録。
同様にざっくりの講義内容紹介ではあるが…何というかw
子供の絵日記風コント仕立て。ちょっと文字列で表現するのは難しいw

6. VMUG.COMから見るJAPAN VMUGの魅力

VMUG.COM への移行案内ですが…
UserCon に来ている Active ユーザはほぼほぼ移行完了している状態w

Japan VMUG のポジションを改めて紹介。
* 223の地域コミュニティの1つ * JapanVMUG 410名(全体では230000人) * コメント数 6月時点で 1位 → 1位 とかなり活発

コメント数 1 位は相変わらずすごい。

VMware DevOps Meetup #3

こちらに参加してきました。
【LT枠残り1枠!】 VMware DevOps Meetup #3 【Kubernetesやコンテナに興味ある方必見!】今回のテーマは「コンテナ」or「テスト」|IT勉強会ならTECH PLAY[テックプレイ]
(会場写真撮るの忘れた…)
会場が TECH PLAY SHIBUYA ということで TECH PLAY 経由でのお申込み。
今回はテーマが"コンテナ"と"テスト"が設けられたが、良い発表ネタは思いつかず…
(自分がやってることはレガシー寄りなんだよなぁ…)
聴講者としての参加。

感想としては最先端に尖った話だったなーと。

オープニング

  • 第3回はテーマを設けました
    • コンテナ
    • テスト

vCenterシミュレーターを使ってCIをやってみよう

speakerdeck.com

  • 自己紹介
    • Automation Engineer
    • Ansbile 界隈の方から来ました
    • 19H2 で vExpert になりました
  • (会場で)インフラ自動化をやっている人?
    • 少ない(数人程度?)
  • インフラで CI やっている人?
    • 自動化やっている人はほぼやっている
  • CI は何故必要か?
    • 品質向上、納期短縮、学習スピードアップ、コミュニケーションロス削減
  • CI とは心理的安全の確保
    • MW の conf まで CI が必要
      • bind 運用でのトラブル経験
    • CI のおかげで Ansible Tower でボタンを押す気持ちが軽くなった(担当者談)
  • VMware インフラ CI
    • 物理は困難
    • VMware 環境はリソースが必要
    • 一時的なプロビジョニング、デプロイは大変
    • 気軽に作ったり消したりは難しい
  • そこで vCenter シミュレータ(vcsim)
    • SOAP API が実装されている
    • golang で実装
    • vCenter でできるものは大体できる
    • GUI はなし
    • (その昔、vCSA5.5 に vcsim があったが、切り出されて go で再実装されたっぽい)
  • サポート SDK
    • govmomi, pyvmomi, rvmomi → 動く
    • PowerCLI → 色々動かない…
      • API の呼び方(URI)が *vmomi と違うらしい
  • vcsim コンテナ
    • Ansible プロジェクトが用意している
      • Ansible モジュール開発の CI で利用されている
    • Flask(python) が HTTP を受けて、vcsim へ流すアーキテクチャ
  • 9 つの URI
    • 2 つを紹介
      • /spawn vcsim の起動、オプションで構成を与えられる
      • /govc_find ManagedObject のフィルタリング
  • デモ 1 Ansible で vcsim のプロビジョニング
  • デモ 2 TravisCI でテストを回す
  • VMware 界隈にも Ansible を流行らせ隊(宣伝)

Q.PowerCLI が動かないのは PowerCLI の問題? vcsim 問題?
A.vcsim の問題、Issue 化され対応を進めている

vcsim の話、5.5 版は知っていたがいつのまにか go 版 + コンテナが出ていたとは。
インフラのテストってやりにくいけど、vSphere だと vCenter さえシミュレートできればかなり回せるので、テストはかなりやりやすい部類で、この辺も高品質を支える一因なのでは。さすが SDDC。
dev としては vcsim で高頻度に回して、足りない部分は nested も回せれば理想形なのでは。

10分で解説!VMware Tanzuとは?

資料はまだ上がってなさげ?

  • 自己紹介
    • 最近 VMware に join、それまでは EMC
    • PAS / PKS / OpenStack / Docker / k8s
    • 今は VMC on AWS
  • 企業の IT
    • IT部門 → コンテナ基盤、マルチクラウドに前向き
    • アプリ開発 → モダナイズや開発手法の見直し中、コンテナにはこだわりない、使いやすければ
    • (アプリ部隊の方がコンテナに興味あるイメージあったけど、そうでもないのかな?)
  • Tanzu
    • Preview
    • k8s を管理する SaaS
    • Build, Run, Manage をサポート
      • Build : Spring, FAS, bitnami(パッケージング), PAS
      • Run : ProjectPacific, PKS
      • Manage : wavefront, CloudHealth, NSX ServiceMesh, Tanzu Mission Control
    • ライフサイクル管理、アクセス管理、モニタリング、コスト最適化、トラフィック管理 etc
  • 採用 OSS
  • Tanzu Mission Control
    • Cloud を横断して同じポリシーを適用
    • クラスタアクセス、構成、バックアップ、クォータ、Podセキュリティ etc...
      • コンテナレジストリの許可/禁止
      • Pod セキュリティ
        • HostOS の bind を禁止
      • ネットワークアクセス制御
      • namespace 単位でコントロール

Q.Podに入ることは可能?
A.ダッシュボードからは不可能、通常の k8s と同じ方法になる

VMworld の目玉トピックの 1 つ、Tanzu の日本最速(?)紹介。
今回は Tanzu Mission Control の話が多めで、セキュリティポリシーやユーザコントロール周りを提供しており、この辺は PKS でも弱い部分だった(今は違うかも?)ので複数組織規模での利用となればかなり欲しいところ。
あとは Pivotal 買収で Build 周りがどうなっているか。面白そう。

vSphere VM Operator for Kubernetes Kubernetes Operator for vSphere VM

www.slideshare.net

意味的にはこちらが正しいということでタイトル修正とのこと。

Q.本番向けではない?
A.プレビューレベル、教育的意味合いが強そう

k8s Operator を使った VM 再作成な話。
Operator って自前でサクッと実装できるものなんですね。
これは手元で試してみたい…

Kubernetes に開かれる新しい海 -Project Pacific とは?-

www.slideshare.net

  • 自己紹介
    • VMware でサービスプロバイダ向けにお仕事
      • お世話になっております!
    • 最近猫を飼い始めました
  • Project Pacific
    • 7 つの海のあれ
    • vSphere を再設計
    • SDDC を利用して SuperVisor K8S Cluster
    • 開発者と IT 運用者をつなぐ Platform
      • 開発者:デプロイ、Day 2 モニタリング, ツール ...
      • IT 運用者:可用性, セキュリティ, QoS, コスト ...
  • 全てのワークロードを k8s で管理
    • 全部 yaml で表現可能
    • namespace で pod / VM / k8s cluster を管理できる
    • k8s に比べて ESXi host はそんなに VersionUP しない
    • ServiceCatalog とかも提供予定 
    • ポリシー、リソースは RBAC でアプリごとに
    • vCenter でコンテナ、k8sVM を一元管理
    • 「何故か(スライドに) Photon とか書いてあるけどよく分からないです」w

こちらも VMworld の目玉トピックの 1 つ、Project Pacific の日本最速(?)紹介。
ESXi 直で Pod や SuperVisor Cluster を動かすというかなり大きな変更。
立ち話で NW 周りがどうなるかみたいなのを聞いたところ、NSX-T が前提になってきそうな雰囲気も?まだ詳細は出てきてない模様。

何でも yaml 管理の一方で yaml 地獄のつらみも聞こえてはいるので、その辺りを緩和する施策がないと特にライトな IT admin 層だとキツいかも。
GUIyaml出力や yaml validator 辺りが無いと触る障壁高そう。

vSphere / vSAN 6.7 U3 の VMware Cloud Native Storage を試してみよう。

onedrive.live.com

  • 自己紹介
  • VMware Cloud Native Storage(CNS)
    • vSphere 6.7u3- 利用可能
    • k8s の PV として VMDK が利用可能
      • CSI (Cloud Storage Interface) 経由
  • SPBM
    • VMDK ごとに割り当てられるストレージポリシー
      • 可用性、ディスク配置 etc
      • PV にも割り当てられる
    • vSAN では利用必須
  • サンプルで MongoDB Pod を作る
    • StorageClass の Provisioner で csi.vsphere.vmware.com
    • StoragePolicyName の SPBM 名
    • StorageClass を PVC に指定
  • 6.7u3 の vSphere Client でコンテナボリュームのメニューが
    • vSphere Client で PV として見える
      • vSphere オブジェクトとしても見える

vSAN の話かな?と思ってたら vSAN はそこまで関係なく、CNS や k8s PV の話。
PV で VMDK は結構やりやすいと思ってたけど、既に CNS でかなり扱いやすそう。vSphere Client 側にも項目として入っているのは知らなかった。

ところで開始前、プロジェクタ投影まわりでトラブってたのですが、その時に流れた以下のツイートが良かったw
確かに…

Appendix

会場写真は撮り損ねたけど食べ物の写真は撮ったw フード
ドリンク1
ドリンク2
豪華…

次回

vForum 2019 の Day0、VMware Kubernetes Day VMware Cloud Native Day の中で LT Sessions として開催予定とのこと。