k8s是为容器服务而生的一个可移植容器的编排管理工具,针对服务发现与调度负载均衡、服务自愈、服务弹性扩容、横向扩容、存储卷挂载等方面都提供了很好的解决方案,使应用的部署和运维更加方便。越来越多的公司开始拥抱k8s。今天我在自己的mac上安装了一个k8s的环境:
安装docker-desktop
brew install --cask --appdir=/Applications docker
安装k8s依赖
因为被墙,在docker-desktop上面启用k8s后会一直处于安装状态,通过如下方式解决
git clone https://github.com/hummerstudio/k8s-docker-desktop-for-mac.git
./load_images.sh
在docker-desktop上启用k8s,然后重启docker-desktop,左下角k8s图标变绿显示已经运行起来
terminal命令行执行命令也可以看到节点状态
(base) ➜ kubectl get node
NAME STATUS ROLES AGE VERSION
docker-desktop Ready master 58s v1.19.7
安装k8s的dashboard
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.3/aio/deploy/recommended.yaml
kubectl apply -f recommended.yaml
启动k8s proxy
nohup kubectl proxy >/dev/null &
获取token
(base) ➜ code kubectl -n kube-system describe secret default| awk '$1=="token:"{print $2}'
eyJhbGciOiJSUzI1NiIsImtpZCI6InB1Mnh2TW5uYy12bFlXUHNhZWZCcDQ2OE5YcXV0eG1CSG9MTnhWTGJNdEkifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkZWZhdWx0LXRva2VuLTZram1tIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImRlZmF1bHQiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiIwMGNhMDE2YS0wZjQ5LTQ3MjUtYmZhNS00NDViZjMwMjgwOTgiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06ZGVmYXVsdCJ9.UJyEFmERuYBXBOI-1oQ0knap1zUn12gvT0kYxoqwv3lxopOCB-ZZA3y2bAAAGHvzpYyFu5h8oRQ9JelfGSVWiVNrxapY4LLQkkeEjPLNwzX6O3vv4YJicmOpXA3hPrzoh7d2sbDZwJFKgicMPsuXyuskXWOFXM9hE781AlT6ImL3HkDuskA4W-oxeuTt_ehqGONK8xsaf-Fnw6nAFyIo19CzTE6hL7shQTlR8Za-wFOug8Q3GNy2cGqI-6zIbyHI4SdXZiFBlIKR7xWprxIV8N1yay-MtDM0j7jHj27m5x079L-IDsrMnqIgmEapax4tDzSWrq2BzvH2EUYo98ooBQ
登录dashboard
访问如下链接并输入token
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/login
登录成功页面
大功告成,欢迎进入k8s的世界!