如何在桌面上安装运行Rancher 2.0

如果不能访问云基础设施怎么办?或许你希望能够像在生产环境中一样,在本地开发中使用Rancher?

没问题,把Rancher 2.0安装到电脑桌面就可以了。

在本教程中,我将带你安装Docker-for-Desktop Edge版,启用内置的Kubernetes引擎,在桌面上运行自己的Rancher 2.0个人实例。

先行准备

在本教程中,要想管理和部署本地Kubernetes实例,你需要提前准备好如下工具:

Kubectl– Kubernetes CLI工具

Helm– Kubernetes清单目录工具

Docker-for-Desktop

适用于Windows/Mac的Docker CE Edge安装包中包含了基本的Kubernetes引擎。我们可以利用它来安装本地的Rancher Server。从Docker Store上就可以下载并安装它。

Windows版:

https://store.docker.com/editions/community/docker-ce-desktop-windows

Mac版:

https://store.docker.com/editions/community/docker-ce-desktop-mac

Docker配置

登陆Docker,右键单击System Tray中的Docker图标,并选择Settings

Advanced Settings

在Advanced部分将Memory增加到至少4096MB。当然你可能也想增加分配的CPUs数量和磁盘映像的最大大小(Disk image max size)。

启用Kubernetes

在Kubernetes部分,选中复选框启用Kubernets API。Docker-for-Desktop会自动创建带有凭证的~/.kube/config文件,以便kubectl能够访问新的本地“集群”。

如果没有看到Kubernetes部分怎么办?请检查General部分并确保你使用的是Edge版本。

测试集群

打开终端测试集群吧。运行kubectl get nodes。kubectl应该会返回一个名为docker-for-desktop的节点。

准备Kubernetes

Docker-for-Desktop并没有安装任何额外的工具。我们可以将一些静态的YAML清单文件和kubectl一起使用,不过我们希望更多地利用Kubernetes社区中的已有工具,而不是重新造轮子。因此将helm作为Kubernetes首选的打包管理工具。

helm charts为Kubernetes YAML清单文档提供了模板语法。有了helm我们可以创建能够进行配置的部署,而不是仅仅使用静态文件。有关更多创建自己的部署目录的信息,请参考https://helm.sh/上面的文档。

在集群上初始化Helm

Helm在你的集群上会安装tiller服务来管理chart部署。因为在默认情况下docker-for-desktop启用了RBAC,因此我们需要用kubectl创建serviceaccount和clusterrolebinding,这样tiller才能部署到我们的集群中。

在kube-system命名空间中创建ServiceAccount

创建ClusterRoleBinding让tiller账户能够访问集群

最后使用helm初始化tiller服务

注意:tiller的安装是具有完全的集群访问权限的,可能并不适合生产环境。因此你需要多阅读helm文档,根据自己的安全性需求限制tiller的访问。

添加Ingress Controller

Ingress Controller用于提供从外部世界到Kubernetes中运行的服务的L7 http路由。

我们将使用helm安装nginx-ingress chart。这将在我们本地集群上创建一个ingress controller。

“rancher”helm chart的默认选项是使用SSL传递回Rancher服务器pod上的自签名证书。为了支持这一选项,我们需要在安装chart时添加--controller.extraArgs.enable-ssl-passthrough=""选项。

安装Rancher

下面我们使用helm安装Rancher。

在默认安装下将使用Rancher内置的自签名SSL证书。你可以在这里看到该helmchart的所有选项:https://github.com/jgreat/helm-rancher-server

首先将rancher-server仓库添加到helm

现在安装rancherchart

设置hosts文件

在默认情况下,Rancher服务器将会监听rancher.localhost。如果要访问它,我们需要设置一个主机文件条目,让我们的浏览器能够解析这个名称。

Windows

c:\windows\system32\drivers\etc\hosts

Mac

/etc/hosts

编辑系统的相应文件并添加此条目

连接到Rancher

浏览器访问到https://rancher.localhost

忽略SSL警告,接下来你应该就能看到Rancher的登陆界面了,需要你设置管理员密码。

恭喜你!你已经有了自己的Rancher 2.0本地实例。你可以添加应用程序charts,部署你的应用程序,一切就像在生产环境中一样。

Rancher 2.0 Training Camp(实战训练营)正式开营了!本周四晚20:30第五期课程「如何在Rancher 2.0上收集容器日志」等你来约!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180530B1CXGE00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券