Save 37% off PRO during our Black Friday Sale! »

Rancher Harvesterの紹介

Rancher Harvesterの紹介

RancherJP Online Meetup #02 の発表資料です。
Rancher Labs社の提供するOSS HCIソリューションのRancher Harvesterの紹介資料です。

4631864606a93224804a49331d1a7dfd?s=128

Ryoma Fujiwara

February 16, 2021
Tweet

Transcript

  1. © 2021 Teapod 418 Ryoma Fujiwara OSS HCIソリューション Rancher Harvester

    2021/2/16 Rancher meetup online #2
  2. © 2021 Teapod 418 Ryoma Fujiwara 自己紹介 藤原 涼馬 所属組織

    大手メディア&ソリューション企業のインフラエンジニア  兼 フリーランスITコンサル & エンジニア Rancher JPコアメンバー Cloud Native Days Tokyo 2020実行委員 近所に24時間ジムが出来て言い訳ができなくなったので ジム通いで毎日筋肉痛なのと、季節柄の花粉症が悩み
  3. © 2021 Teapod 418 Ryoma Fujiwara 本日話すこと • Rancher Harvesterとは?

    • HCI(Hyper Converged Infrastructure)とは? • Rancher Harvesterの仕組み • Rancher Harvesterを触ってみる • まとめとかいろいろ
  4. © 2021 Teapod 418 Ryoma Fujiwara Rancher Harvesterとは

  5. © 2021 Teapod 418 Ryoma Fujiwara Rancher Harvesterとは? • OSSのHCIソリューションです

    • Rancherの開発元であるRancher Labs社が中心となって開発しています • 雑に言うと仮想マシンをk8s上で管理するための仕組みです https://rancher.com/blog/2020/announcing-harvester-open-source-hyperconverged-infrastructure-software
  6. © 2021 Teapod 418 Ryoma Fujiwara 発表直後の様子 Publickeyさんで紹介されていたり、 https://www.publickey1.jp/blog/20/kubernetesharvesterrancher_labs.html 触ってみた記事を藤原が書いていたり

    https://note.com/ryoma_0923/n/n5dc18f50545a
  7. © 2021 Teapod 418 Ryoma Fujiwara 発表直後の様子 Publickeyさんで紹介されていたり、 https://www.publickey1.jp/blog/20/kubernetesharvesterrancher_labs.html 触ってみた記事を藤原が書いていたり

    https://note.com/ryoma_0923/n/n5dc18f50545a ホントは発表前にリポジトリを見 つけて書き上げていたけれども発 表されてしまって慌てて公開
  8. © 2021 Teapod 418 Ryoma Fujiwara エンタープライズグレードのKubernetesマネジメントツール Rancherといえば CNCF Sandboxプロジェクトに入っている

    軽量k8sディストリビューション k3sを動かすための軽量Linuxディストリビューション k3OS クラウドネイティブ分散ブロックストレージ CNCF certifiedなk8sディストリビューション
  9. © 2021 Teapod 418 Ryoma Fujiwara エンタープライズグレードのKubernetesマネジメントツール Rancherといえば CNCF Sandboxプロジェクトに入っている

    軽量k8sディストリビューション k3sを動かすための軽量Linuxディストリビューション k3OS クラウドネイティブ分散ブロックストレージ CNCF certifiedなk8sディストリビューション クラウドネイティブ界の暴れ牛 (個人の感想です)
  10. © 2021 Teapod 418 Ryoma Fujiwara Rancher Harvester Kubernetes上に構築された ハイパーコンバージドインフラストラクチャソリューション

    Rancher Harvester
  11. © 2021 Teapod 418 Ryoma Fujiwara Rancher Harvester Kubernetes上に構築された ソリューション

    Rancher Harvester
  12. © 2021 Teapod 418 Ryoma Fujiwara ハイパーコンバージドインフラストラクチャとは?

  13. © 2021 Teapod 418 Ryoma Fujiwara ハイパーコンバージドインフラストラクチャとは? • ハードウェアで定義された従来型のシステムのすべての要素を仮想化したもの •

    ミニマムでも以下が提供されている必要がある ◦ 仮想化されたコンピューティング機能の提供(ハイパーバイザ機能) ◦ ソフトウェア定義されたストレージ(SDS) ◦ ソフトウェア定義されたネットワーク • 上記を複数台の汎用的なサーバ(一般にはx86サーバ)を束ねて提供する https://en.wikipedia.org/wiki/Hyper-converged_infrastructure
  14. © 2021 Teapod 418 Ryoma Fujiwara ハイパーコンバージドインフラストラクチャとは? • ハードウェアで定義された従来型のシステムのすべての要素を仮想化したもの •

    ミニマムでも以下が提供されている必要がある ◦ 仮想化されたコンピューティング機能の提供(ハイパーバイザ機能) ◦ ソフトウェア定義されたストレージ(SDS) ◦ ソフトウェア定義されたネットワーク • 上記を複数台の汎用的なサーバ(一般にはx86サーバ)を束ねて提供する https://en.wikipedia.org/wiki/Hyper-converged_infrastructure リソースを拡張したい場合は追加の汎用的なサーバーを持ってきて追加するだけで 計算能力や記録容量を拡張することができる らしいです (正確かつ詳しいところはよくわからない部分もあるので補足期待)
  15. © 2021 Teapod 418 Ryoma Fujiwara Rancher Harvesterの仕組み

  16. © 2021 Teapod 418 Ryoma Fujiwara Rancher Harvesterの仕組み Rancher Harvester

    is an open source hyper-converged infrastructure (HCI) software built on Kubernetes https://github.com/rancher/harvester より
  17. © 2021 Teapod 418 Ryoma Fujiwara Rancher Harvesterの仕組み Rancher Harvester

    is an open source hyper-converged infrastructure (HCI) software built on Kubernetes https://github.com/rancher/harvester より
  18. © 2021 Teapod 418 Ryoma Fujiwara Rancher Harvesterの仕組み Rancher Harvester

    is an open source hyper-converged infrastructure (HCI) software built on Kubernetes https://github.com/rancher/harvester より
  19. © 2021 Teapod 418 Ryoma Fujiwara HCIの要素を見直し 以下をKubernetesベースで提供する 仮想化されたコンピューティング機能の提供 (ハイパーバイザ)

    ソフトウェア定義されたストレージ ソフトウェア定義されたネットワーク
  20. © 2021 Teapod 418 Ryoma Fujiwara HCIの要素を見直し 以下をKubernetesベースで提供する 仮想化されたコンピューティング機能の提供 (ハイパーバイザ)

    ソフトウェア定義されたストレージ ソフトウェア定義されたネットワーク Container Network Interface
  21. © 2021 Teapod 418 Ryoma Fujiwara HCIの要素を見直し 以下をKubernetesベースで提供する 仮想化されたコンピューティング機能の提供 (ハイパーバイザ)

    ソフトウェア定義されたストレージ ソフトウェア定義されたネットワーク Container Network Interface https://github.com/containernetworking/cni Container Storage Interface https://github.com/container-storage-interface
  22. © 2021 Teapod 418 Ryoma Fujiwara HCIの要素を見直し 以下をKubernetesベースで提供する 仮想化されたコンピューティング機能の提供 (ハイパーバイザ)

    ソフトウェア定義されたストレージ ソフトウェア定義されたネットワーク Container Network Interface https://github.com/containernetworking/cni Container Storage Interface https://github.com/container-storage-interface https://kubevirt.io/
  23. © 2021 Teapod 418 Ryoma Fujiwara HCIの要素を見直し 以下をKubernetesベースで提供する 仮想化されたコンピューティング機能の提供 (ハイパーバイザ)

    ソフトウェア定義されたストレージ ソフトウェア定義されたネットワーク Container Network Interface https://github.com/containernetworking/cni Container Storage Interface https://github.com/container-storage-interface https://kubevirt.io/ https://github.com/intel/multus-cni https://longhorn.io/
  24. © 2021 Teapod 418 Ryoma Fujiwara Rancher Harvesterの主要な構成要素 仮想化されたコンピューティング機能の提供 (ハイパーバイザ)

    ソフトウェア定義されたストレージ ソフトウェア定義されたネットワーク Container Network Interface https://github.com/containernetworking/cni Container Storage Interface https://github.com/container-storage-interface https://kubevirt.io/ https://github.com/intel/multus-cni https://longhorn.io/ Kubernetes Kubernetesを動かすためのOS k3OS https://k3s.io/ https://github.com/rancher/k3os + isoファイルなどを格納するために、 https://min.io/
  25. © 2021 Teapod 418 Ryoma Fujiwara Rancher Harvesterの仕組みまとめ • Kubernetes上でHCIを実現するためのツールです

    • 基本的な要素(ハイパーバイザ/ストレージ/ネットワーク/OSまで含めたスタック)は すべてOSSで構成されています
  26. © 2021 Teapod 418 Ryoma Fujiwara Rancher Harvesterを触ってみる

  27. © 2021 Teapod 418 Ryoma Fujiwara 触って見るための2つの方法 • 今回説明する方法 •

    配布されているISOからインストール • 既存のk8sクラスタにHarvesterをデプロ イする方法 • 下記記事で一応解説しています。 https://note.com/ryoma_0923/n/n5dc18f50545a
  28. © 2021 Teapod 418 Ryoma Fujiwara 触って見るための2つの方法 • 今回説明する方法 •

    配布されているISOからインストール • 既存のk8sクラスタにHarvesterをデプロ イする方法 • 下記記事で一応解説しています。 https://note.com/ryoma_0923/n/n5dc18f50545a
  29. © 2021 Teapod 418 Ryoma Fujiwara 環境 • Ubuntu 18.04

    • VirtualBox 6.1.18 • 仮想マシンスペック ◦ 4コア, 16GBメモリ, 100GBストレージ ◦ VT-xやAMD-Vのネスト設定は有効化しておいたほうが良いかも
  30. © 2021 Teapod 418 Ryoma Fujiwara isoの取得 harvesterのGitHubリポジトリのリリースからisoをダウンロードします。 (1.5GBあるので注意) https://github.com/rancher/harvester/releases/tag/v0.1.0

  31. © 2021 Teapod 418 Ryoma Fujiwara 仮想マシンにマウントして起動 GRUBメニューからHarvesterのインストーラを起動できます

  32. © 2021 Teapod 418 Ryoma Fujiwara インストールモードの選択 新規クラスタを作成するか、既存のHarvesterクラスタに参加するか聞かれるの で、新規クラスタの作成を選択します。

  33. © 2021 Teapod 418 Ryoma Fujiwara テンポよく進めていく インストールするストレージの選択します。 (一つしか無いので今回は選択の余地なし) ノードを追加する際に必要となるトークンを設定します。

    (実際にはもっとランダムなトークンにしてください) ノードにアクセスする際のパスワードを設定
  34. © 2021 Teapod 418 Ryoma Fujiwara て、テンポよく進めていく SSH公開鍵のインポートを行います 管理ネットワークのインタフェースを選択します プロキシ、cloud-init設定

  35. © 2021 Teapod 418 Ryoma Fujiwara インストール前の確認 Yesを選択

  36. © 2021 Teapod 418 Ryoma Fujiwara インストールが始まります あとはしばし待つ

  37. © 2021 Teapod 418 Ryoma Fujiwara 気づいたらGRUBメニューに戻っている 一度電ブチして、isoを除去した後に再度電源を投入します。 (ホントはもっと丁寧にしなきゃ駄目だと思います)

  38. © 2021 Teapod 418 Ryoma Fujiwara GRUBの画面再び Start Harvesterが出てくるので、しばし待ちます。

  39. © 2021 Teapod 418 Ryoma Fujiwara Harvesterの起動画面 しばし待つと、下記の画面が表示されます。Current statusがRunningになった ら準備は完了です。

    VirtualBoxのNATインタフェースなので、ポートフォワード して、https://127.0.0.1:8443でつなぎます
  40. © 2021 Teapod 418 Ryoma Fujiwara Welcome to Harvester はい、繋がりました

    残念ながら日本語GUIはないので、英語UIのまま利用します。 初期ID/PASSは admin/password
  41. © 2021 Teapod 418 Ryoma Fujiwara SSHキーを登録

  42. © 2021 Teapod 418 Ryoma Fujiwara 仮想マシンイメージを登録 http://cloud-images.ubuntu.com/bionic/20210210/bionic-server-cloudimg-amd64.img

  43. © 2021 Teapod 418 Ryoma Fujiwara 仮想マシンイメージのインポートが完了

  44. © 2021 Teapod 418 Ryoma Fujiwara 仮想マシンの作成

  45. © 2021 Teapod 418 Ryoma Fujiwara 仮想マシンの作成 ボリュームやネットワークも設定できるものの、一旦は最小の設定で

  46. © 2021 Teapod 418 Ryoma Fujiwara しばし待つ......

  47. © 2021 Teapod 418 Ryoma Fujiwara ぬわ〜 (とは言えなんとなく、VirtualBoxで動かしているのがアカン気がしています VMWare ESXiで試してみる......??)

  48. © 2021 Teapod 418 Ryoma Fujiwara VitrualBoxではなく(このマシン&)Appモードで動かすと動く いける。 WebVNC ターミナルからのssh

  49. © 2021 Teapod 418 Ryoma Fujiwara まとめ • Rancher HarvesterはOSSのHCIソリューションです

    • isoからインストールして利用するbare-metalと、既存のk8sクラスタを使う Appモードが存在します(但し後者は開発用) ◦ 少なくともbare-metalについては藤原の環境ではVirtualBoxでは動きませんでした (bare-metalなので当然と言えば当然) ◦ VMWare ESXiでのネストでは動作する模様(幸い手元に1台あるので試してみます) ▪ https://github.com/rancher/harvester/wiki/App-Mode-Testing-using-VMware-ESXi ◦ Appモードではまず動きます。 ▪ Appモードでの構築手順は、https://note.com/ryoma_0923/n/n5dc18f50545aを参照 してください。
  50. © 2021 Teapod 418 Ryoma Fujiwara [補足] ARMサポートしないの? • する気はあるみたいです。(https://github.com/rancher/harvester/issues/371)

    ◦ 現時点ではHarvesterよりはkubevirtのARM64サポート待ちな状態 (https://github.com/kubevirt/kubevirt/pull/3415) ◦ どうもvielmetti(https://github.com/vielmetti)という方がARM64サーバ(AmpereのCPU)を 提供した模様(https://github.com/WorksOnArm/cluster/issues/203) • v0.2.0のマイルストーンに含まれています
  51. © 2021 Teapod 418 Ryoma Fujiwara [補足] Roadmap? ロードマップはあります(https://github.com/rancher/harvester/wiki/Roadmap)が、 IssuesのMilestoneを見たほうが良さそうです(どうも乖離があります。

    https://github.com/rancher/harvester/milestone/5)
  52. © 2021 Teapod 418 Ryoma Fujiwara ご清聴ありがとうございました!