Skip to main content

3. 安装Rancher

概述#

现在您已经有了一个正在运行的 RKE 集群,您可以在其中安装 Rancher。出于安全考虑,所有到 Rancher 的流量必须用 TLS 加密。在本教程中,您将通过cert-manager自动签发自签名证书。在实际使用情况下,您可能会使用 Let's Encrypt 或提供自己的证书。更多细节请参见SSL 配置

注意:这些安装说明假设您使用的是 Helm 3。

安装 cert-manager#

添加 cert-manager helm 仓库:

helm repo add jetstack https://charts.jetstack.io

为 cert-manager 创建命名空间:

kubectl create namespace cert-manager

安装 cert-manager 的 CustomResourceDefinitions:

kubectl apply --validate=false -f https://github.com/jetstack/cert-manager/releases/download/v0.15.2/cert-manager.crds.yaml

然后使用 Helm 安装 cert-manager。需要注意的是,cert-manager 还需要配置你的代理,以防它需要与 Let's Encrypt 或其他外部证书发行商进行通信。

helm upgrade --install cert-manager jetstack/cert-manager \
--namespace cert-manager --version v0.15.2 \
--set http_proxy=http://${proxy_host} \
--set https_proxy=http://${proxy_host} \
--set noProxy=127.0.0.0/8\\,10.0.0.0/8\\,cattle-system.svc\\,172.16.0.0/12\\,192.168.0.0/16\\,.svc\\,.cluster.local

现在你应该等待 cert-manager 完成启动:

kubectl rollout status deployment -n cert-manager cert-manager
kubectl rollout status deployment -n cert-manager cert-manager-webhook

安装 Rancher#

接下来就可以安装 Rancher 了,首先添加 helm 存储库:

helm repo add rancher-latest https://releases.rancher.com/server-charts/latest

创建命名空间:

kubectl create namespace cattle-system

并使用 Helm 安装 Rancher。Rancher 还需要一个代理配置,以便它可以与外部应用 catalog 通信或检索 Kubernetes 版本更新元数据。

请注意,rancher.cattle-system 必须添加到 noProxy 列表中(如下所示),以便 Fleet 可以使用服务发现直接与 Rancher 和 Kubernetes 服务 DNS 通信。

helm upgrade --install rancher rancher-latest/rancher \
--namespace cattle-system \
--set hostname=rancher.example.com \
--set proxy=http://${proxy_host}
--set noProxy=127.0.0.0/8\\,10.0.0.0/8\\,cattle-system.svc\\,172.16.0.0/12\\,192.168.0.0/16\\,.svc\\,.cluster.local,rancher.cattle-system

等部署完成后:

kubectl rollout status deployment -n cattle-system rancher

现在你可以导航到 https://rancher.example.com,开始使用 Rancher。

注意:如果您不打算发送遥测数据,请在初始登录时选择退出遥测。如果无法成功打开 socket,将遥测保留在离线环境中可能会出现问题。

相关链接#

Last updated on by kingsd041