abp 打包部署到ubuntu_使用Rancher Server部署本地多节点K8S集群

当我第一次开始我的Kubernetes之旅时,我一直在寻找一种设置本地部署环境的方式。很多人常常会使用minikube或microk8s,这两者非常适合新手在单节点集群环境下进行操作。但当我已经了解了基础知识之后,这两者显然不太够用,我需要进一步寻找能够运行本地多节点集群、与生产环境更相似的平台。为此,我查阅了许多参考资料,最后我找到了Rancher Server。接下来,我要介绍我是如何设置我的本地K8S多节点集群的。

dc827137214e4b50a6b1bc8a851e6bb8

准备master节点和worker节点的虚拟机

9d74d03f1ee941bf88bd17407a454b74

上图显示了集群的架构,一个master节点和3个worker节点。要尝试诸如使用ingress controller进行负载均衡、会话保持、host亲和性等跨节点功能,这是最低的配置。

Rancher Server的安装并不复杂,它被打包为一个docker镜像,并且可以作为一个容器运行。一个节点的基本配置是运行在Linux虚拟机上的docker CE 守护进程。在本例中,我选择使用Ubuntu 18.04 LTS(具体的节点要求请参考Rancher的官方文档:https://rancher.com/docs/rancher/v2.x/en/installation/requirements/)。当我完成第一个VM设置时,我直接将其复制到另外三个中。如果你和我的操作一样,可以参考下方两个tips:

  • 安装指定版本Docker:https://docs.docker.com/install/linux/docker-ce/ubuntu/
  • Clone虚拟机之后,更改Ubuntu主机名:https://linuxize.com/post/how-to-change-hostname-on-ubuntu-18-04/

最终,4个节点都在我的电脑(i5,24G RAM)上启动,并分配以下资源。

  • Master节点(2 core、4G RAM、Ubuntu 18.04 + Docker CE 18.09) x 1
  • Worker节点(2 core, 3G RAM, Ubuntu 18.04 + Docker CE 18.09) x 3

在master节点上启动Rancher server

sudo docker run --restart=unless-stopped   -p 81:80 -p 444:443 rancher/rancher

以上命令可以启动Rancher server容器,并且将其运行在master节点上。默认状态下,nginx ingress controller会嵌入到worker节点中,并且绑定端口80和443。因此我将Rancger server发布到端口81和444或其他端口,以避免端口冲突。

完成Rancher server初始设置

78302ed2a54644a590e7accc7c501d77

首先,使用master节点IP地址和端口444启动Rancher server控制台,它会要求设置管理员密码。

a8f246197e604321ad2e80e308c562e2

接着,确认worker节点到达Rancher server的URL。这里为了方便我直接使用master节点IP地址作为URL。完成了初始设置后,Rancher server就可以添加新集群了。

创建一个新的K8S集群和master节点

afee44f848b74dae9cf32334bb98bb19

因为我想要在本地虚拟机上运行K8S集群而不是在云端,所以选择“自定义”的选项(即上方说明为“ From my own existing nodes”),然后新集群的云提供商选项选为“None”。

886571d8f8d14ef5965f54b6ab3be6a6

在ubuntu虚拟机上复制并运行docker命令来启动master节点。一个master节点至少要有etcd和control,如果你打算创建一个单节点集群,需要选择所有3个角色并更改命令。

c0afdeb6aaad467dae1f975d252b3087

运行docker命令之后,新节点将显示在Rancher Server控制台上,配置这一节点需要花费一些时间,一旦配置完成,状态将变为active。

创建worker节点

d692fb1a5af44604af6293cf64012766

对于worker节点,我们仅需要在节点选项选择“Worker”角色,然后在3个worker节点的Ubuntu虚拟机上复制并运行docker命令。

f41467e2466d4d29aa59837a996c1ca8

最后,在我的电脑上多节点集群已经准备就绪。

安装kubectl工具来管理新的K8S集群

新集群的Kubernetes版本时v1.14.6,你可以在上面的截图内看到。为了更好地将kubectl工具版本与集群匹配,在master节点上运行以下命令,以安装特定版本:

curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.14.6/bin/linux/amd64/kubectlchmod +x ./kubectlsudo mv ./kubectl /usr/local/bin/kubectl

Kubectl工具需要一个kubeconfig文件与集群连接,新集群的kubeconfig文件可以在Rancher Server的控制台中找到。

9518b4be41af4054881408dc31e8d87c

复制以上kubeconfig文件,并保存为~/.kube/config文件。随后kubectl就能够获取集群信息。

c2d37f1242d64838b449d400487b4f5e

有关kubectl的安装和配置可以参考以下连接:

  • 安装和设置kubectl:https://kubernetes.io/docs/tasks/tools/install-kubectl/
  • 配置kubectl以访问多集群:https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/

原文链接:

https://medium.com/@kwonghung.yip/setup-local-kubernetes-multi-node-cluster-with-rancher-server-fdb7a0669b5c

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将ABP2数据库的数据复制到ABP2_HIS数据库中,可以使用以下步骤: 1. 创建ABP2_HIS数据库,并在其中创建与ABP2数据库相同的表结构。 2. 使用SQL语句将ABP2数据库中的数据导出为一个SQL脚本。 3. 修改该SQL脚本中的数据库名称为ABP2_HIS,并保存该脚本。 4. 在ABP2_HIS数据库中运行该SQL脚本,将ABP2数据库中的数据复制到ABP2_HIS数据库中。 下面是具体的步骤: 1. 创建ABP2_HIS数据库,并在其中创建与ABP2数据库相同的表结构。 可以使用以下SQL语句创建ABP2_HIS数据库: ``` CREATE DATABASE ABP2_HIS; ``` 在ABP2_HIS数据库中创建与ABP2数据库相同的表结构,可以使用以下命令: ``` mysqldump -u root -p ABP2 > ABP2.sql ``` 2. 使用SQL语句将ABP2数据库中的数据导出为一个SQL脚本。 在命令行窗口中输入以下命令: ``` mysqldump -u root -p ABP2 > ABP2.sql ``` 该命令将ABP2数据库中的数据导出为一个名为ABP2.sql的SQL脚本。 3. 修改该SQL脚本中的数据库名称为ABP2_HIS,并保存该脚本。 打开ABP2.sql文件,并用文本编辑器将其中所有的“ABP2”替换为“ABP2_HIS”。 4. 在ABP2_HIS数据库中运行该SQL脚本,将ABP2数据库中的数据复制到ABP2_HIS数据库中。 在命令行窗口中输入以下命令: ``` mysql -u root -p ABP2_HIS < ABP2.sql ``` 该命令将ABP2.sql文件中的SQL语句在ABP2_HIS数据库中执行,从而将ABP2数据库中的数据复制到ABP2_HIS数据库中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值