# 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