一、k8s安装:
参考:https://github.com/AliyunContainerService/k8s-for-docker-desktop;
-
为 Docker daemon 配置镜像加速,使用中科大镜像加速地址 https://docker.mirrors.ustc.edu.cn
-
可选操作: 为 Kubernetes 配置 CPU 和 内存资源。
-
预先从阿里云Docker镜像服务下载 Kubernetes 所需要的镜像,地址:https://github.com/AliyunContainerService/k8s-for-docker-desktop 。
-
使用 Bash shell
./load_images.sh
或者
使用 PowerShell.\load_images.ps1
说明: 如果因为安全策略无法执行 PowerShell 脚本,请在 “以管理员身份运行” 的 PowerShell 中执行 Set-ExecutionPolicy RemoteSigned 命令。
-
开启 Kubernetes,并等待 Kubernetes 开始运行
-
配置 Kubernetes
kubectl config use-context docker-for-desktop
-
验证 Kubernetes 集群状态
kubectl cluster-info kubectl get nodes
二、heml安装
第一种方法(推荐):
-
安装配置Scoop
环境要求:
Windows 版本不低于 Windows 7
Windows 中的 PowerShell 版本不低于 PowerShell 3
Windows 用户名为英文在 PowerShell 中输入下面内容,保证允许本地脚本的执行:
set-executionpolicy remotesigned -scope currentuser
执行下面的命令安装 Scoop:
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
安装成功后,执行以下命令测试:
scoop help
如果下载scoop的过程中断,那么必须先删除(C:\Users\scoop)文件夹,再执行以上命令安装。利用aria2加速下载:
在使用scoop安装aria2后,scoop会自动调用aria2进行多线程下载以加速下载scoop install aria2
scoop自带的main bucket软件过少,可以添加官方维护的extras bucket
scoop bucket add extras
安装helm
scoop install helm
第二种:地址https://github.com/helm/helm/blob/master/docs/install.md下载
三、 安装rancher
Helm在集群上安装tiller服务来管理chart部署。默认情况下docker-for-desktop启用了RBAC,因此需要用kubectl创建serviceaccount和clusterrolebinding,这样tiller才能部署到集群中。
-
在kube-system命名空间中创建ServiceAccount
kubectl -n kube-system create serviceaccount tiller
-
创建ClusterRoleBinding让tiller账户能够访问集群
kubectl create clusterrolebinding tiller --clusterrole cluster-admin --serviceaccount=kube-system:tiller
-
使用helm初始化tiller服务
helm init --service-account tiller --upgrade -i registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.14.1 --skip-refresh
-
helm改源
helm repo remove stable helm repo add stable https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts helm repo update
-
添加Ingress Controller
Ingress Controller用于提供从外部访问Kubernetes中运行的服务的L7 http路由。
“rancher”helm chart的默认选项是使用SSL传递回Rancher服务器pod上的自签名证书。所以需要在安装chart时添加controller.extraArgs.enable-ssl-passthrough=""选项。helm install stable/nginx-ingress --name ingress-nginx --namespace ingress-ngixn --set controller.extraArgs.enable-ssl-passthrough=""
-
安装Rancher。
在默认安装下将使用Rancher内置的自签名SSL证书。你可以在这里看到该helm chart的所有选项:
https://github.com/jgreat/helm-rancher-server
将rancher-server仓库添加到helm
helm repo add rancher-server https://jgreat.github.io/helm-rancher-server/charts
安装rancher chart
helm install rancher-server/rancher --name rancher --namespace rancher-system
修改hosts(c:\windows\system32\drivers\etc\hosts),添加:127.0.0.1 rancher.localhost
7.访问本地:https://rancher.localhost测试效果
ps: 第一次访问界面忘截图了,上张成果图吧