[CentOS]Minikubeを立ててKubenetesにちょっと触れてみる

公開日:2019-01-15
最終更新:2019-01-15

この記事のゴール

  • Minikube上でPodを作成する
  • 外部からPodにリクエストする

環境

  • CentOS7
  • Docker: 18.06.1
    • バージョンが高すぎるとMinikubeがunsupported
  • Minikube
  • kubectl

事前準備

  • CentOSの「firewalld」「selinux」は止めておく

Docker インストール

依存の削除

yum install -y yum-utils device-mapper-persistent-data lvm2

レポジトリ追加

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo  
yum makecache fast

Docker CEのインストール

yum -y install docker-ce-18.06.1.ce-3.el7
yum-config-manager --disable docker-ce-stable

起動

systemctl start docker  
systemctl enable docker

確認

docker -v  
docker version  
docker info | grep Cgroup # driver 「cgroup」を確認する

Minikubeで必要となるLibraryのインストール

yum -y install socat ebtables

minikubeのインストール

curl -L https://github.com/kubernetes/minikube/releases/download/v0.32.0/minikube-linux-amd64 -o /usr/local/bin/minikube  
chmod +x /usr/local/bin/minikube

kubectlのインストール

curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt
curl -L https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl -o /usr/local/bin/kubectl  
chmod +x /usr/local/bin/kubectl

確認

kubectl version  
minikube version

Minikubeの起動

minikube start --vm-driver=none

状態の確認

kubectl get nodes  
kubectl get pods --all-namespaces  
kubectl get pods --all-namespaces -o wide  

kubectl cluster-info  
kubectl cluster-info dump

tutorialをやってみる

Podの作成

kubectl run kubernetes-bootcamp --image=gcr.io/google-samples/kubernetes-bootcamp:v1 --port=8080

これらのコマンドで状態の確認

kubectl get pods  
kubectl get deployments  
kubectl describe pods  
kubectl get services

ポートを公開する

kubectl expose deployment/kubernetes-bootcamp --type="NodePort" --port 8080

確認する

kubectl describe services/kubernetes-bootcamp  
kubectl describe deployments/kubernetes-bootcamp

リクエスト

export NODE_PORT=`kubectl get services/kubernetes-bootcamp -o go-template='{{(index .spec.ports 0).nodePort}}'`  
echo NODE_PORT=${NODE_PORT}  
curl $(minikube ip):${NODE_PORT}

感想

必要なライブラリ、バージョンが要件を満たせていれば、
特につまることなくPodの作成までできました。

次はkubectl周りをまとめたい。

記事が少しでもいいなと思ったらクラップを送ってみよう!
0
+1
@Krjwuh1JmxFA4tb0の技術ブログ

よく一緒に読まれている記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる

技術ブログをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

技術ブログを開設する

Qrunchでアウトプットをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

Markdownで書ける

ログ機能でアウトプットを加速

デザインのカスタマイズが可能

技術ブログ開設

ここから先はアカウント(ブログ)開設が必要です

英数字4文字以上
.qrunch.io
英数字6文字以上
ログインする