rancher2.0快速入门

rancher2.0快速入门,第1张

注意:本入门指南的目的是让您快速的运行一个Rancher2.0环境,它不适用于生产。有关更全面的说明,请查阅 Rancher安装 .

本教程将指导您完成:

安装Rancher v2.0 ;

创建第一个集群

部署一个应用程序,如Nginx;

一、入门须知

熟悉Linux基础命令;

了解SSH使用方法,了解公钥/私钥工作原理;

熟悉Docker基本使用方法及基础命令,比如:容器日志查看;

了解SSL证书使用方法;

了解负载均衡工作原理(L4/L7);

了解域名解析原理;

了解K8S基本概念

二、配置Linux主机

通过配置Linux主机开始创建自定义集群。您的主机可以是:

云主机

本地虚拟机

本地物理机

注意:在使用云主机时,您需要允许TCP/80和TCP/443入站通信端口。请查阅您的云主机文档以获取有关端口配置的信息。有关端口要求的完整列表,请查阅 端口需求 .

根据以下要求配置主机:

Ubuntu 16.04 +(64位)

Centos/RedHat Linux 7.5+(64位)

RancherOS 1.3.0+(64位)

Ubuntu *** 作系统有Desktop和Server版本,选择安装server版本.

1、硬件需求:

CPU: 2C

内存: 4GB

注意:此配置仅为满足小规模测试环境的最低配置。如用于生产,请参考 基础配置要求 。

2、软件需求:

软件: Docker

支持的Docker版本:

17.03.x

18.06.x

18.09.x

注意:有关Docker安装说明,请访问其 文档 。软件需求要应用于所有节点。

主机的更详细配置说明,请查看 基础环境配置

三、安装Rancher

要想在主机上安装Rancher,需要先登录到主机上,接着进行以下步骤:

通过shell工具(例如PuTTy或远程终端连接)登录到主机

在shell中执行以下命令:

四、登录Rancher

登录并开始使用Rancher。登录后,您将进行一些一次性配置。

打开浏览器,输入https://<server_ip>,server_ip替换为运行Rancher容器主机的ip

因为是自动使用的自签名证书,在第一次登录会提示安全授信问题,信任即可;

设置管理员密码

第一次登录会要求设置管理员密码,默认管理员账号为: admin

如果没有设置密码而要求输入当前密码,可以输入密码: admin

设置Rancher Server URL

Rancher Server URL是agent节点注册到rancher serverd的地址,需要保证这个地址能够被agent主机访问,不要设置为127.0.0.1或者localhost。

五、创建K8S集群

现在创建第一个Kubernetes集群,可以使用自定义选项。您可以添加云主机、内部虚拟机或物理主机作为集群节点,节点可以运行任何一种或多种主流Linux发行版:

页面右下角可以切换语言;

在全局视图下,点击菜单中的集群 , 并点击添加集群;

选择 Custom,并设置集群名称,其他参数可不用修改,点击下一步;

选择节点运行的角色

默认会勾选Worker角色,根据需要可以一次勾选多种角色。比如,假设我只有一个节点,那就需要把所有角色都选择上,选择后上面的命令行会自动添加相应的命令参数;

如果是云主机,需要添加主机的内网地址和对应的公网地址,如果是没有公网的云主机,可以跳过这步;

其他参数保持默认,点击命令行右侧的复制按钮,复制命令参数

如果是多台主机,根据角色的不同,需要复制多次

登录预添加集群的主机,执行以上复制的命令;

在主机上执行完命令后,最后点击完成;

回到全局视图,可以查看集群的部署状态;

点击集群名称,进入集群视图

点击菜单栏主机按钮

集群创建完成

集群创建完成后,默认会生成Default项目,点击Default切换到项目视图;

六、部署工作负载

工作负载是一个对象,包括pod以及部署应用程序所需的其他文件和信息。我们以nginx作为例如:

在Default视图下,点击工作负载—部署服务

在部署工作负载页面,设置工作负载名称、副本数量、镜像名称、命名空间、端口映射,其他参数保持默认,最后点击启动;

部署完成

通过31174端口去访问nginx服务。

对于初学者,在一台虚拟机上安装rancher2和k8s环境,是一件挺麻烦的事,笔者做了个虚拟机镜像,帮助快速搭建环境。

为了节约运行时资源,采用了轻量级的k3s部署k8s环境,用于本地开发及测试环境,够用了。

在k3s上安装rancher,官方安装文档:

https://rancher.com/docs/rancher/v2.5/en/

账号 root 密码 123

如果需要ssh私钥登录,请自行修改.ssh/authorized_keys

账号 admin 密码 123

打开浏览器,推荐谷歌浏览器,输入 https://rancher.l.jamma.cn ,首次打开会提示证书警告,点击继续即可。

建议内存4G以上。

通过配置端口转发,从主机访问虚拟机的服务,例如rancher里配置redis,通过L4层负载均衡开放端口6379, 虚拟机网络中配置好6379端口转发后,就可以通过localhost:6379直接访问虚拟机的redis服务了。

注意,需要转发的端口必须在宿主机没有被占用。

默认已经配置了下列端口转发。

默认,我配置了泛域名 *.l.jamma.cn 解析为 127.0.0.1,长期有效,你可以直接使用我的域名,可以配置自己的域名。

下面是我配置的两个L7层负载均衡的例子

api.l.jamma.cn 指向 api服务

gateway.l.jamma.cn 指向 gateway服务

使用helm前需要设置环境变量KUBECONFIG

建议所有节点提前导入rancher镜像,减少部署时间,以rancher 2.5.6为例:

rancher-server 在 k8s 环境中只提供 http 协议端口,tls 证书在ingress 中卸载,因此需要在ingress-nginx运行的命名空间,创建存放证书的 secret

--set additionalTrustedCAs=true (可选)访问各种 tls (https) 时额外信任的 ca 证书,比如自使用签证书的镜像仓库、git仓库、s3 对象存储,亦或是类似公司出网白名单代理网关、fiddler 抓 https 包之类的需要安装 ca 证书的情况

由于是自建的 ingress,修改ingress是配置正确,执行命令: kubectl edit ingress -n cattle-system 在 annotations 处添加一行注解: ( 修改为和集群中名称一致的 ingressClass,这里名为 nginx )

执行命令: kubectl edit ingress -n cattle-system 在 annotations 处添加注解:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11524577.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存