Mac 本地Kubernetes部署

本地配置一個kubernetes,可以方便我們學習測試kubernets。提高我們的學習效率,那麼如何在本地快速搭建一個kubernetes呢?

前提

環境:Mac系統

安裝docker


1,下載docker安裝包

https://download.docker.com/mac/edge/Docker.dmg

2,執行安裝

Mac 本地Kubernetes部署

docker信息

安裝kubernetes

1,安裝鏡像

將下面代碼保存為images文件

k8s.gcr.io/kube-proxy:v1.15.5=gotok8s/kube-proxy:v1.15.5
k8s.gcr.io/kube-controller-manager:v1.15.5=gotok8s/kube-controller-manager:v1.15.5
k8s.gcr.io/kube-scheduler:v1.15.5=gotok8s/kube-scheduler:v1.15.5
k8s.gcr.io/kube-apiserver:v1.15.5=gotok8s/kube-apiserver:v1.15.5
k8s.gcr.io/coredns:1.3.1=gotok8s/coredns:1.3.1
k8s.gcr.io/pause:3.1=gotok8s/pause:3.1
k8s.gcr.io/etcd:3.3.10=gotok8s/etcd:3.3.10

2,安裝腳本

將下面腳本保存為install_images.sh,和images在同級目錄下。

#!/bin/bash

file="images"

if [ -f "$file" ]
then
echo "$file found."

while IFS='=' read -r key value
do
#echo "${key}=${value}"
docker pull ${value}
docker tag ${value} ${key}
docker rmi ${value}
done < "$file"

else
echo "$file not found."
fi

3,執行腳本

Mac 本地Kubernetes部署

安裝鏡像查看

4,切換kubernetes運行上下文

kubectl config use-context docker-desktop

安裝kubectl

1,下載軟件

curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.15.5/bin/darwin/amd64/kubectl

2,添加執行權限

chmod +x ./kubectl

3,移動到系統bin目錄下

sudo mv ./kubectl /usr/local/bin/kubectl

4,測試


Mac 本地Kubernetes部署

測試kubernetes部署情況

$ kubectl cluster-info
$ kubectl get nodes
$ kubectl describe node


Mac 本地Kubernetes部署

kubectl cluster-info


Mac 本地Kubernetes部署

kubectl get nodes

配置dashbord

1,安裝,執行

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml

2,開啟代理

kubectl proxy


Mac 本地Kubernetes部署

3,訪問dashbord

http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/ 

此步驟需要token

kubectl -n kube-system describe secret default| awk '$1=="token:"{print $2}'
Mac 本地Kubernetes部署

4,輸入token,並訪問


Mac 本地Kubernetes部署

輸入令牌

5,dashbord管理後臺


Mac 本地Kubernetes部署



至此kubernets本地已經安裝好了。你可以部署並進行測試了。

由於我平時使用rancher來管理。它提供比dashbord更完善的管理功能。所以我們接下來安裝以下。

rancher安裝

1,資源要求


Mac 本地Kubernetes部署

內存最少4096 MB。請自行調整。

2,軟件要求

需要安裝kubectl和helm,上文已經安裝了kubectl,我們來安裝下helm。

brew install kubernetes-helm

3,一些提前安裝的配置

helm install stable/cert-manager --name cert-manager --namespace kube-system --version v0.6.0 --set createCustomResource=true

cert相關安裝

4,創建serviceaccount tiller,給予tiller集群權限,初始化tiller service

kubectl -n kube-system create serviceaccount tiller
kubectl create clusterrolebinding tiller --clusterrole cluster-admin --serviceaccount=kube-system:tiller
helm init --service-account tiller --wait

5,安裝一個ingress controller

helm install stable/nginx-ingress --name ingress-nginx --namespace ingress-nginx --wait

6,安裝Cert-Manager

helm install stable/cert-manager --name cert-manager --namespace kube-system --wait

7,添加helm下載資源來源

helm repo add rancher-latest https://releases.rancher.com/server-charts/latest

8,安裝rancher

helm install rancher-latest/rancher --name rancher --namespace cattle-system --set hostname=rancher.localhost --wait

9,配置host

127.0.0.1 kubernetes.docker.internal rancher.localhost

10,訪問

https://rancher.localhost/login


Mac 本地Kubernetes部署

用戶名在初次登錄時,設置。

熟悉的頁面出現了。


Mac 本地Kubernetes部署


Mac 本地Kubernetes部署


故事到此結束了。

如果有什麼問題歡迎評論,指正。

《位加》與你同在。


分享到:


相關文章: