本地配置一個kubernetes,可以方便我們學習測試kubernets。提高我們的學習效率,那么如何在本地快速搭建一個kubernetes呢?
前提
環境:mac系統
安裝Docker
1,下載docker安裝包
https://download.docker.com/mac/edge/Docker.dmg
2,執行安裝
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,執行腳本
安裝鏡像查看
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,測試
測試kubernetes部署情況
$ kubectl cluster-info $ kubectl get nodes $ kubectl describe node
kubectl cluster-info
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
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}'
4,輸入token,并訪問
輸入令牌
5,dashbord管理后臺
至此kubernets本地已經安裝好了。你可以部署并進行測試了。
由于我平時使用rancher來管理。它提供比dashbord更完善的管理功能。所以我們接下來安裝以下。
rancher安裝
1,資源要求
內存最少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
用戶名在初次登錄時,設置。
熟悉的頁面出現了。
故事到此結束了。
如果有什么問題歡迎評論,指正。
喜歡的話關注,點贊,收藏。多謝。
《位加》與你同在。