# 0、環境準備(可選)
可以使用自己的虛擬機或者云服務器安裝minikube。操作系統centos7。
我推薦使用云服務器安裝。因為K8s趨向于使用的是一個不停機的服務。
可以使用阿里云或騰訊云的云服務學習。如果只是為了做實驗,可以選擇使用騰訊云的按量付費云主機。
```
# 關閉 防火墻
systemctl stop firewalld systemctl disable firewalld
# 關閉 SeLinux
setenforce 0
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
# 關閉 swap
swapoff -a
yes | cp /etc/fstab /etc/fstab\_bak cat /etc/fstab\_bak |grep -v swap > /etc/fstab
```
在自己的虛擬機上執行這個步驟,在云主機中不必執行這個步驟。
# 1、安裝Docker
```
curl -O http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
mv docker-ce.repo /etc/yum.repos.d/
yum install -y docker-ce
```
# 2、設置docker鏡像加速器
```
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{ "registry-mirrors": "https://fgi18ddn.mirror.aliyuncs.com"] }
EOF
systemctl start docker
systemctl enable docker
docker version
```
3、安裝Kubectl
```
cat /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86\_64/
enabled=1
gpgcheck=0
EOF
yum install -y kubectl-1.18.3
kubectl version
```
# 4、安裝并啟動Minikube
```
yum install -y conntrack
curl -Lo minikube https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases/v1.12.1/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
minikube start --driver=none
```
如果啟動時鏡像拉取不下來,可以嘗試如下命令:
```
minikube start --image-mirror-country cn \
--iso-url=https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/iso/minikube-v1.12.1.iso \
--registry-mirror=https://fgi18ddn.mirror.aliyuncs.com \
--vm-driver=none
```
如果啟動時,CPU核數為1個核心,可嘗試如下命令,推薦至少2個核心:
```
minikube start --vm-driver=none --extra-config=kubeadm.ignore-preflight-errors=NumCPU --force --cpus 1
```
# 5、安裝Kuboard
```
kubectl apply -f https://kuboard.cn/install-script/kuboard.yaml
kubectl apply -f https://addons.kuboard.cn/metrics-server/0.3.7/metrics-server.yaml
kubectl get pods -l k8s.kuboard.cn/name=kuboard -n kube-system
```
## 獲取token
```
echo $(kubectl -n kube-system get secret $(kubectl -n kube-system get secret | grep kuboard-user | awk '{print $1}') -o go-template='{{.data.token}}' | base64 -d)
```
詳細信息參考kuboard官網:[https://kuboard.cn/](https://kuboard.cn/)
- 前言
- 安裝minikube
- 啟動一個單節點的Kubernetes集群
- 啟動一個多節點的集群使用kubeadm
- 使用kubectl部署容器
- 使用YAML部署容器
- 在K8s上部署Guestbook(留言簿)示例
- K8s網絡介紹
- 創建Ingress路由
- Liveness(存活探針)、Readiness(就緒探針)和健康檢查
- 使用CRI-O和kubeadm開始
- 在K8s上運行一個有狀態服務
- 管理K8s中的秘鑰和密碼
- 使用Kompose部署Docker Compose文件
- 在Kubernates上從源代碼部署一個服務
- 使用Heptio Velero備份和恢復
- Helm包管理器
- 基本的K8s的可觀察性(監控)
- 使用EFK記錄日志
- 在K8s上安裝Weave Scope