Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Talk about TAS before forgetting

Talk about TAS before forgetting

2021/6/25 Japan VMUG

MasahiroIrie

December 31, 2021
Tweet

More Decks by MasahiroIrie

Other Decks in Technology

Transcript

  1. 2021/6/25 Japan VMUG @IrieMasahiro 忘れない内に TAS を語っておきたい

  2. 自己紹介 入江 正博 @IrieMasahiro • 株式会社 インターネットイニシアティブ クラウド/インフラコンサルタント (最近でも無いけど AWS SAP

    採れました) • VMUG 仮想インフラ部会 • vExpert 2019-2021
  3. TAS って何? VMware Tanzu Application Service https://tanzu.vmware.com/application-service

  4. • Tanzu Application Service – 旧 Pivotal 社のプロダクト – 旧

    Pivotal Application Service • 旧旧 Pivotal Cloud Foundry • Cloud Foundry の有償ディストリビューション – オープンソースの PaaS(aPaaS) ソフト – 当初は VMware が開発、Pivotal 社にスピンアウトし、 Cloud Foundry Foundation を設立し移管 • 主なユーザ – 株式会社 NTT ドコモ (VMwolrd Japan 2020) – ヤフー株式会社 (Tanzu Case Study) ※ https://tanzu.vmware.com/customers/yahoo-japan TAS って何?
  5. • (Application) Platform as a Service – アプリケーション実行環境をサービスとして提供 – IaaS

    (/ CaaS・KaaS) と SaaS の中間 (a)PaaS って何? • 代表的なサービス:Heroku, Google App Engine, Azure App Service
  6. • TKG(kubernetes) はコンテナを作る必要がある ≒ dockerfile を書く必要がある • ベースイメージ指定 • ランタイム、ライブラリインストール

    • アプリケーションコードの取得、配置 • 実行コマンドの指定 • その他もろもろ… – アプリ公開もそれなりに大変(yaml 作成) TKG(kubernetes) と何が違う? • TAS はコードを push (≒アップロード)するだけ – 実装言語は TAS で自動判断 (Buildpacks) – ランタイム、アプリ公開も TAS 側でよしなに
  7. $ cf push my-app-1234 ← アプリの directory でコレを打つだけ Creating app

    my-app-1234 in org example-org / space development as a.user@shared-domain.example.com... OK Creating route my-app-1234.shared-domain.example.com... OK [長いので略] requested state: started instances: 1/1 usage: 1G x 1 instances urls: my-app-1234.shared-domain.example.com state since cpu memory disk #0 running 2014-01-24 05:07:18 PM 0.0% 18.5M of 1G 52.5M of 1G → https://my-app-1234.apps.example.com でアプリが動く 引用:https://docs.pivotal.io/application-service/2-11/devguide/deploy-apps/deploy-app.html
  8. • TKG(kubernetes) はコンテナを作る必要がある ≒ dockerfile を書く必要がある • ベースイメージ指定 • ランタイム、ライブラリインストール

    • アプリケーションコードの取得、配置 • 実行コマンドの指定 • その他もろもろ… – アプリ公開もそれなりに大変(yaml 作成) TKG(kubernetes) と何が違う? • TAS はコードを push (≒アップロード)するだけ – 実装言語は TAS で自動判断 (Buildpacks) – ランタイム、アプリ公開も TAS 側でよしなに 開発者の負担は軽減 ただし、アプリケーションへの制約は強くなる
  9. 自由と制約 TKG/k8s TAS • ランタイムは管理者が指定 ≒ 開発言語、バージョンは   管理者が指定 •

    ランタイムは開発者が準備 ≒ 開発言語、バージョンは   開発者が自由に選択 • コードを push して実行 ≒ バイナリ実行は不可 • コンテナに詰め込んで実行 ≒ バイナリも実行可能 • 利用ポートは指定不可 • 利用ポート指定可能 • PV(永続ディスク)は使えな いことはないが柔軟性低 (NFSのみ?) • TAS より PV の高い柔軟 度、選択肢
  10. TAS アーキテクチャ図 引用:https://docs.pivotal.io/application-service/2-11/concepts/overview.html

  11. TAS アーキテクチャ図 引用:https://docs.pivotal.io/application-service/2-11/concepts/overview.html 詳細は割愛!

  12. TAS アーキテクチャ図(大事なやつだけ) 引用:https://docs.pivotal.io/application-service/2-11/concepts/overview.html

  13. 1. https://network.pivotal.io からダウンロード – Ops Manager (管理 WebGUI の OVA)

    – VMware Tanzu Application Service for VMs (TAS 本体の専用バイナリパッケージ) – Stemcell (TAS が作る VM のベースイメージ) 2. Ops Manager の OVA をデプロイ 3. Ops Manager の WebGUI より初期設定 (vCenter 指定、NW、ストレージ etc) 4. デプロイにより bosh VM が作成される 5. WebGUI より TAS のパッケージをアップロード 6. WebGUI より TAS の設定 7. WebGUI より Stemcell をアップロード 8. ”Apply Change” で TAS がデプロイされる TAS デプロイの流れ ※ 概要だけ…でも長いな
  14. • TAS のコア部分が kubernetes に (現在 v0.7.0) 最近の TAS (TAS

    for kubernetes) 引用:https://www.atmarkit.co.jp/ait/articles/2005/25/news046.html
  15. まとめ • Tanzu Application Service とは (a)PaaS を提供するソフトウェア • 開発者的にはコンテナより楽だが制約強

    – どちらが良いかはケースバイケース とは言え… vSphere での最小リソース要件 • vSphere v7.0, v6.7, or v6.5 • Disk space: 2 TB recommended • Memory: 120 GB • Two public IP addresses: One for TAS for VMs and one for Ops Manager • vCPU cores: 82 • Overall CPU: 28 GHz • vSphere editions: Enterprise Plus or Platinum. These editions include Distributed Resource Scheduler (DRS), which is required by TAS for VMs. • Ops Manager must have HTTPS access to vCenter and ESX hosts on TCP port 443. 本番環境として動かそうと思ったら他にも必要な周辺コンポーネント多数… ある程度のボリュームのアプリケーションが集約できないと効果薄?
  16. EOP