Minikubeは、Goで記述され、ローカルマシンにKubernetesクラスターをセットアップするために使用されるオープンソースソフトウェアです。開発者または管理者は、主にテスト目的でMinikubeを使用します。このクロスプラットフォームソフトウェアは、macOS、Linux、およびWindowsで実行できます。
このチュートリアルでは、CentOS8にMinikubeを使用してKubernetesをインストールする方法を学習します。
前提条件
- Atlantic.Netクラウドプラットフォーム上に少なくとも2GBのRAMを搭載した新しいCentOS8VPS
- サーバーで構成されているrootパスワード
ステップ1:Atlantic.Netクラウドサーバーを作成する
まず、Atlantic.Netクラウドサーバーにログインします。 2GB以上のRAMを搭載したオペレーティングシステムとしてCentOS8を選択して、新しいサーバーを作成します。 SSH経由でクラウドサーバーに接続し、ページの上部で強調表示されているクレデンシャルを使用してログインします。
CentOS 8サーバーにログインしたら、次のコマンドを実行して、ベースシステムを最新の利用可能なパッケージで更新します。
dnf update -y
ステップ2:Dockerをインストールする
次のコマンドで追加できます:
dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
Dockerリポジトリを追加した後、次のコマンドを実行してDockerをインストールします。
dnf install docker-ce --nobest -y
インストールが完了したら、Dockerサービスを開始し、システムの再起動時に開始できるようにします。
systemctl start docker systemctl enable docker
次のコマンドを使用して、インストールされているDockerのバージョンを確認することもできます。
docker -v
次の出力が表示されます。
Docker version 19.03.12, build 48a66213fe
ステップ3:Kubectlをインストールする
開始する前に、システムに必要な依存関係をインストールする必要があります。次のコマンドでインストールできます:
dnf install curl conntrack -y
次に、システムにKubectlをインストールする必要があります。デフォルトでは、kubectlはCentOS 8に含まれていないため、curlコマンドを使用してインストールする必要があります。
curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl
次に、ダウンロードしたバイナリに実行権限を付与し、/ usr / local/binディレクトリに移動します。
chmod +x ./kubectl mv ./kubectl /usr/local/bin/kubectl
これで、次のコマンドを使用してKubectlのバージョンを確認できます。
kubectl version --client
次の出力が表示されます。
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.5", GitCommit:"e6503f8d8f769ace2f338794c914a96fc335df0f", GitTreeState:"clean", BuildDate:"2020-06-26T03:47:41Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}
ステップ4:Minikubeをインストールする
まず、curlコマンドを使用してMinikubeバイナリパッケージをダウンロードします。
curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
次に、次のコマンドを使用して、ダウンロードしたバイナリに実行権限を付与します。
chmod +x minikube
次に、次のコマンドを実行してMinikubeをインストールします。
install minikube /usr/local/bin/
これで、次のコマンドを使用してMinikubeを起動できます。
minikube start --driver=none
Minikubeが正常に起動すると、次の出力が得られます。
上記のコマンドは、単一ノードのKubernetesクラスターをセットアップするためのDockerコンテナーをダウンロードして起動します。
次のコマンドを使用して、Kubernetesクラスターのステータスを確認することもできます。
minikube status
次の出力が表示されます。
minikube type: Control Plane host: Running kubelet: Running apiserver: Running kubeconfig: Configured
次のコマンドを使用して、クラスター情報を表示することもできます。
kubectl cluster-info
次の出力が表示されます。
Kubernetes master is running at https://your-server-ip:8443 KubeDNS is running at https://your-server-ip:8443/api/v1/namespaces/kube-system/services/kube- dns:dns/proxy To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
次のコマンドを使用して、クラスターノードを表示することもできます。
kubectl get nodes
次の出力が得られるはずです:
NAME STATUS ROLES AGE VERSION minicube Ready master 2m v1.18.3
ステップ5:Kubernetesクラスターを確認する
次に、echoserverイメージを使用してk8sをデプロイし、Kubernetesクラスターをテストします。
kubectl create deployment test-minikube --image=k8s.gcr.io/echoserver:1.10
次の出力が表示されます。
deployment.apps/test-minikube created
次に、次のコマンドを使用して、ポート8080でデプロイメントを公開します。
kubectl expose deployment test-minikube --type=NodePort --port=8080
次の出力が表示されます。
service/test-minikube exposed
次に、次のコマンドを使用して、公開されたデプロイメントに関する情報を取得します。
kubectl get pod
次の出力が表示されます。
NAME READY STATUS RESTARTS AGE test-minikube-f4df69575-7m2pl 1/1 Running 0 33s
次に、次のコマンドを使用してデプロイメントのURLを取得します。
minikube service test-minikube --url
次の出力が表示されます。
http://your-server-ip:31186
次に、Webブラウザーを開き、上記のURL http:// your-server-ip:31186にアクセスします。次の画面が表示されます。
ステップ6:Kubernetesダッシュボードを有効にする
Kubernetesには、ウェブブラウザを介してクラスタを管理するために使用できるウェブダッシュボードが付属しています。デフォルトでは、ダッシュボードはMinikubeでは無効になっています。
次のコマンドを使用して、すべてのMinikubeアドオンを一覧表示できます。
minikube addons list
次の出力が表示されます。
|-----------------------------|----------|--------------| | ADDON NAME | PROFILE | STATUS | |-----------------------------|----------|--------------| | ambassador | minikube | disabled | | dashboard | minikube | disabled | | default-storageclass | minikube | enabled ✅ | | efk | minikube | disabled | | freshpod | minikube | disabled | | gvisor | minikube | disabled | | helm-tiller | minikube | disabled | | ingress | minikube | disabled | | ingress-dns | minikube | disabled | | istio | minikube | disabled | | istio-provisioner | minikube | disabled | | logviewer | minikube | disabled | | metallb | minikube | disabled | | metrics-server | minikube | disabled | | nvidia-driver-installer | minikube | disabled | | nvidia-gpu-device-plugin | minikube | disabled | | olm | minikube | disabled | | registry | minikube | disabled | | registry-aliases | minikube | disabled | | registry-creds | minikube | disabled | | storage-provisioner | minikube | enabled ✅ | | storage-provisioner-gluster | minikube | disabled | |-----------------------------|----------|--------------|
次に、Minikubeダッシュボードを有効にし、次のコマンドを使用してダッシュボードのURLを取得します。
minikube dashboard --url
これにより、以下に示すようにMinikubeダッシュボードが有効になります。
* Enabling dashboard ... * Verifying dashboard health ... * Launching proxy ... * Verifying proxy health ... http://127.0.0.1:42939/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes- dashboard:/proxy/
これで、上記のURLを使用してローカルでMinikubeダッシュボードにアクセスできます。
結論
おめでとう!これで、CentOS8にMinikubeを使用してKubernetesクラスターが正常にインストールされました。これでKubernetesのローカルでの実験を開始できます。今すぐAtlantic.NetのVPSホスティングでKubernetesとMinikubeを始めましょう!