Docker/K8S実践コンテナ開発入門@14日目
本日からKubernetesの章に入ります。
ローカル環境でのKubernetesの実行
DockerとKubernetesの統合前はminikubeというgithubに公開されている機能が使われていたようですが、
「Docker for Mac」連携の機能を利用すると既存のローカルDocker環境でKubernetesが環境構築可能。
実際の業務でminikubeは利用しない?のでしょうか。
またDocker for macは遅いので最近ではVirtual box で構築するのが流行りだったと思います。そちらも試したい。
ひとまずはKubernetesの連携設定を行なっていきます。
「System Prereference」の「kubernetes」のタブを開き、
以下2つの設定を有効にしApply & Restartをクリック
- Enable Kubernetes
- Show system containers (advance)
以下画面下部の通り、Kubernetesのインストール・起動が終わるとrunningと表示されます。
続いて必要なもの一式をインストールします。
- kubectl:コマンドラインツール
- ダッシュボード:Kubernetesにデプロイされているコンテナなどを確認できるWebベースの管理ツール(kubectlに慣れたらいらない?)
私の環境はmac OSなので以下のコマンドを実施
kubectlは書籍に従って行うとエラーが頻発したのでHomebrewを使って最新版をインストールすることにしました。
■kubectlインストール ※Homebrew必要
brew install kubectl
■ダッシュボードインストール
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml
■ダッシュボード確認
kubectl proxy
上記コマンド実行後は以下のリンクに接続
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/
ただこれだけではまだ見れない。
こちらの方のおかげでなんとか対応方法が判明
>>www.kaitoy.xyz<<
■以下のコマンドを実行してtokenを特定
kubectl -n kube-system get secret kubectl -n kube-system describe secret deployment-controller-token-qh6zb
取得したtokenを貼り付けることで表示できることが確認できた。
Kubernetesの概念
Kubernetesではリソースは以下を指す。
- Node・・・Kubernetesクラスタで実行するコンテナを配置するサーバ
- Namespace・・・KUbernetesクラスタないで作る仮想クラスタ
- Pod・・・コンテナん集合単位で、コンテナを実行する方法を定義する
コンテナとリソースは別の粒度
ただの環境構築のはずがエラーで苦しめられました。。。
明日以降はpodの作成とdeployを実施予定。