‫Kubernetesの場合は､ さまざまなコンテナの積み重ねです｡
‫という話をしたことがあります｡ その上､
‫サーバー上で実行されるコンテナには必ずしもバンドルされていないコマンドラインツールがあるのです｡
‫このように､
‫Dockerには通常よりも多くのパーツがあり､ さまざまな方法でセットアップすることができます｡
‫実際､
‫Dockerをインストールする方法は山ほどあるんです｡ 配信が多いですね｡
‫インストーラーツールがたくさんあります｡
‫それぞれの方法は微妙に異なり､ パッケージも異なる容器になります｡
‫大体､
‫4つか5つのコンテナで対応することになります｡ 今は本当に学ぶことだけに集中しています｡
‫だから､ ローカルでの設定､ 一番使いやすい方法を教えてあげたいんです｡
‫他にも､
‫インストールに最適な方法として､ RAMの使用率はどうか､ 電源を切るのは簡単か､
‫などを見ているのです｡
‫なぜなら､ これらはバックグラウンドでたくさんのコンテナが動いているものだからです｡
‫それらを常時稼働させる必要はないでしょう｡
‫あの､ 簡単なんですか？
‫リセットするのは簡単ですか？
‫私のローカルシステムで使いやすいですか？
‫常にどこかの外国のエンドポイントを参照しなければならないのではなく｡
‫Docker
‫Desktopがあれば､ それに越したことはない｡
‫Kubernetesの中で一番簡単なインストールですね｡
‫Docker Desktopがあれば､ それを使えばいいだけです｡
‫Docker Toolboxをお持ちの方は､ Docker Toolboxを動かすためのDocker
‫Machineのコマンドラインとよく似たminikubeを使いたいところでしょう｡
‫それについては､ また後日お話します｡
‫デスクトップでLinuxを使っている人､ あるいは自分のマシンやインターネット上に作成したLinux
‫VMでネイティブにこれをやりたい人なら､ 学習目的でセットアップするのに一番簡単な方法はMicrok8sです｡
‫Ubuntu製ですが､ さまざまなディストリビューションにインストールすることができます｡
‫Ubuntuだけに限ったことではありません｡
‫Kubernetesをインストールできる環境にない､
‫クラウドVMなどを作りたくない､ ブラウザで学びたい､ という方も大丈夫です｡
‫そのうちのひとつは､ play-with-dockerと同じグループによって作られたplay-with-k8sです｡
‫それから､ カタコダ｡
‫カタコダもよく似ていますね｡
‫実は､ この2つのツールを見てみると､ 同じことをやっているように見えるんです｡
‫そこで少し違うのは､ play-with-k8sでは､
‫実際にクラスタをインストールしてセットアップする必要があることです｡
‫Katacodaはすでにセットアップを提供しています｡
‫インストールを気にする必要がないので､
‫インストール方法を学ぶのは後回しにして､
‫動作やコマンドラインの見た目などに集中すればいいのです｡
‫もし､
‫どちらかを選ばなければならないとしたら､ この講義のリソースにある､ katacodaのプレイグラウンドへのリンクを見てください｡
‫私としては､ Docker Desktopの方がいいと思います｡ なぜなら､ Docker Desktopはすぐに使えるものがいくつかあるからです｡
‫1つは､
‫既存のDockerのセットアップにKubernetesをインストールするためのチェックボックスです｡
‫MacやWindows上のLinux VMが何であれ､ そこにKubernetesのセットアップが自動的に追加されるのです｡
‫それから､ MacでもWindowsでも､ 私のローカルマシンにkubectlのコマンドラインをインストールし､
‫そのバージョンがサーバーにマッチする正しいバージョンであることも確認することになります｡
‫実際､
‫Docker社の新しい有料サービスであるDocker Desktop Enterpriseを使用すると､
‫異なるバージョンを実行している異なるクラスタに特化したエンタープライズ環境で､ 異なるバージョンをローカルで非常に簡単にテストしたい場合に､
‫Kubernetesの異なるバージョンをオンザフライで交換することが可能です｡
‫ほとんどの人は､
‫そんなことをする必要はないでしょう｡ ですから､ Docker Desktopの無料版は､
‫このコースの残りの部分で使用するのと同じようにうまく動作します｡
‫もうひとつ､ Kubernetesはマシンのリソースをそこそこ使うというのもいい点です｡
‫Dockerはすでにリソースを使っているので､ その上でKubernetesも動かして､
‫残りの仕事をこなすというのはちょっときついこともありますね｡
‫そこでDocker Desktopでは､ メニューにある小さなチェックボックスを使って､
‫Dockerを起動したままKubernetesのクラスター部分を無効にすることができるようになっています｡
‫Dockerだけでいい､ Kubernetesは必要ない､ ということもありますから､
‫これはいいオプションです｡
‫わかりました｡ 次は､ Docker Toolboxの人なら､
‫minikubeがそれに一番近い代物だと思います｡
‫Docker Toolboxのインストールも必要ないので､ これだけを別途実行するのも全然ありだと思います｡
‫Docker Toolboxの仕組みとよく似ていますね｡
‫Toolboxを使っている方にとっては､ 同じような体験になるかと思います｡
‫Windowsでminikubeのバイナリのインストーラーをダウンロードして､
‫それをインストールすることになります｡
‫GitHubから直接バイナリをダウンロードしてもいいし､ インストーラをダウンロードしてもいい｡
‫インストーラーが好きなのは､ それがWindowsのインストール方法だからというだけなんですけどね｡
‫ショコラトリーからも取れるので､ 気になる方はどうぞ｡
‫どの方法でダウンロードしても､ バイナリーは1つで､ そこに入れたらminikube
‫startと入力するだけです｡
‫これはBirtualBoxがインストールされていることが前提で､
‫Docker Toolboxがあれば､ VirtualBoxはすでにインストールされているはずです｡
‫素晴らしいことに､
‫これはデフォルトで同じ仮想化バックエンドを使用しています｡
‫もうひとつは､ そのコマンドもDocker Machineと非常によく似ていることです｡
‫スタートするのです｡
‫マシンを削除することができます｡
‫マシンを再起動することができます｡ Docker Toolboxでできたような典型的なことはすべてできます｡
‫しかし､ このセクションの残りの部分で使用するkubectlという､
‫最も頻繁に使用するKubernetesコマンドラインがインストールされていないことが1つの欠点となります｡
‫そのため､ 別途､ 単独のバイナリをインストールする必要があります｡
‫インストール方法は複数ある
‫実際､ minikubeのセットアップが終わると､
‫その方法を探すためのURLが表示されます｡
‫これだけなら､ それほど時間はかからないはずです｡
‫VirtualBoxといくつかの実行ファイルをマシンにインストールするだけで､
‫すぐに使えるようになります｡
‫VMが起動するようになります｡ Windowsマシンにkubectlをインストールし､
‫そのVMと対話するようにすれば､ 準備は完了です｡
‫LinuxをホストOSとして使っている人､
‫Linux VMを自分でインストールした人､ クラウドでLinux VMを使っている人は､ そのマシンでKubernetesを動かす一番簡単な方法は､ Ubuntuを作っているCanonicalのMicrok8sを使うことだと思います｡
‫リストを確認したら､ かなり充実していました｡
‫Snapを使ってインストールします｡
‫Snapをご存じない方は､ インストール技術の種類は違いますが､
‫apt-getやYumと同じようなことをします｡
‫まずはSnapをインストールしてもらえばいいんです｡
‫まだインストールしていない場合は､ snapと入力して､ プログラムが見つからないと表示されれば､
‫Snapがインストールされていないことが分かります｡
‫apt-getやYumでSnapを見つけることができるでしょう｡
‫それができたら､
‫SnapコマンドでMicrok8sをインストールすることになります｡
‫それさえできれば､ あとは全部やってくれる｡
‫これは､ すべての異なるマスターロールをインストールします｡
‫自動的に正しいバージョンのkubectlがインストールされます｡
‫microk8sでKubernetesシステムを管理するための素晴らしいコマンド群を提供します｡
‫のようなものです｡ microk8sができる｡ enableなど､
‫さまざまなコマンドがあります｡ microk8sと打つだけなら｡
‫をクリックし､ Tabキーを数回押すと､ 様々なオプションがリストアップされます｡
‫その管理は簡単で､ Kubernetesが不要になったら､ すぐにアンインストールすることも可能です｡
‫このソフトの癖は､ デフォルトのkubectlをそのまま使えるわけではないことです｡
‫と矛盾しないようにするためだと思うのですが...｡ もしかしたら､ すでにkubectlがインストールされている場合は､
‫microk8sである新しいコマンドが表示されるのかもしれませんね｡
‫kubectlです｡
‫BashやZshを使う場合は､ ログインするたびに自動的に実行されるプロファイルに入り､
‫エイリアスを追加して､ kubectlと入力すれば､ このクラスタを制御できるようにすることをお薦めします｡
‫このコマンドラインの例を見ながら､
‫「そうだ､ 私のマシンではmicrok8sと入力しなければならないんだった」と忘れてしまわないようにしたいですね｡
‫kubectlですね｡
‫だから､ そのエイリアスは絶対に作りたい｡
‫いつもそうしています｡ ちょっとしたコツとして､ 私はエイリアスをKの文字にして､
‫kubectlと入力する必要がないようにしています｡
‫Kと入力してから何か入力すればいいんですね｡
‫フルワードのkubectlではなく､ そのようにすることもできます｡
‫それは､
‫いろいろなことが分かってからやることかもしれませんね｡