minikube部署sockshop
1. 安装minikube
需要安装docker
minikube安装命令
https://minikube.sigs.k8s.io/docs/start/
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
minikube start # 用这个kubelet会出错,不知到原因
minikube start --kubernetes-version=v1.23.8 # 改用这个可行
https://www.jeeinn.com/2022/07/1715/
# 删除minikube
https://blog.csdn.net/zh554275855/article/details/115741012
2. 安装kubectl
https://blog.csdn.net/All_Dream_and_you/article/details/124343080
#下载安装包 如果需要指定版本 使用版本号替换 $(curl -L -s https://dl.k8s.io/release/stable.txt) 即可
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
#验证可执行文件
#下载校验和
curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"
#验证
echo "$(cat kubectl.sha256) kubectl" | sha256sum --check
# 输出 kubectl: OK 则验证通过
# 未通过重新下载即可
# 安装kubectl
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
# 执行不通过可以手动给权限
sudo chmod +x kubectl && mv kubectl /usr/local/bin/kubectl
# 查看版本
kubectl version --client
3. 部署sock shop
https://microservices-demo.github.io/deployment/kubernetes-minikube.html
git clone https://github.com/microservices-demo/microservices-demo
cd microservices-demo
minikube start
# 查看目录后确认文件名是00-sock-shop-ns.yaml,官网给的不对
kubectl create -f deploy/kubernetes/manifests/00-sock-shop-ns.yaml -f deploy/kubernetes/manifests
# 卸载sockshop
kubectl delete -f deploy/kubernetes/manifests/00-sock-shop-ns.yaml -f deploy/kubernetes/manifests
打开sockshop网页
minikube ip # 以这个ip为准,官网上那个ip不对
192.158.49.2
curl 192.158.49.2:30001
4. Prometheus & Grafana
# 可自己单独部署,但sockshop已经考虑到监控数据这一点
https://microservices-demo.github.io/deployment/monitoring-kubernetes.html
kubectl create -f ./deploy/kubernetes/manifests-monitoring
minikube service list | grep prometheus
| monitoring | prometheus | prometheus/9090 | http://192.168.49.2:31090 |
minikube service list | grep grafana
| monitoring | grafana | 80 | http://192.168.49.2:31300 |
5. 外部访问(Xshell简单ssh连接)
此时,服务器ip为 113.31.103.24,服务器可以访问sockshop prometheus grafana
访问sockshop的ip为 192.158.49.2:30001,
访问prometheus的ip为 192.168.49.2:31090,
访问grafana的ip为192.168.49.2:31300
若要本地访问prometheus和grafana,需要ssh端口转发,即本地通过访问服务器来间接访问前面俩
可以用xshell设置
会话管理(右键)->属性->SSH隧道->添加TCP/IP转移(填写)->连接
此时,本地访问localhost:31090/31300即可
刚执行完后访问这些页面,可能会加载不出来,可能是还没有建立完: