Linux实战——集群化环境前置准备

集群化环境前置准备

对于大数据相关的软件部署,大多数都是要以集群化(多台服务器共同工作)模式运行的。所以,这边进行集群化环境的前置准备,包括创建多台虚拟机,配置主机名映射,SSH免密登录等等。

配置多台Linux虚拟机

安装集群化软件,首要条件就是要有多台Linux服务器可用。

我们可以使用VMware提供的克隆功能,将我们的虚拟机额外克隆出3台来使用。

  1. 首先,关机当前CentOS系统虚拟机(可以使用root用户执行init 0来快速关机)

  2. 新建文件夹

    image-20221025104157628

    文件夹起名为:虚拟机集群

  3. 克隆

    image-20221025104131303

    image-20221025104312091

    image-20221025104329109

    image-20221025104345484

    image-20221025104414576

    image-20221025104427160

    image-20221025104432927

    image-20221025104446044

  4. 同样的操作克隆出:node2和node3

    image-20221025104825204

  5. 开启node1,修改主机名为node1,并修改固定ip为:192.168.88.131

    # 修改主机名
    hostnamectl set-hostname node1
    
    # 修改IP地址(修改IPADDR)
    vim /etc/sysconfig/network-scripts/ifcfg-ens33
    IPADDR="192.168.88.131"
    
    # 重启网卡
    systemctl stop network
    systemctl start network
    # 或者直接
    systemctl restart network
    
  6. 同样的操作启动node2和node3,

    修改node2主机名为node2,设置ip为192.168.88.132

    修改node2主机名为node3,设置ip为192.168.88.133

  7. 配置FinalShell,配置连接到node1、node2、node3的连接

    为了简单起见,建议配置root用户登录

准备主机名映射

  1. 在Windows系统中修改hosts文件,填入如下内容:

    【C:\Windows\System32\drivers\etc中的hosts文件,用记事本打开】

    192.168.88.131 node1
    192.168.88.132 node2
    192.168.88.133 node3
    
  2. 在3台Linux的/etc/hosts文件中,填入如下内容(3台都要添加

    192.168.88.131 node1
    192.168.88.132 node2
    192.168.88.133 node3
    

配置SSH免密登录

简介

SSH服务是一种用于远程登录的安全认证协议。

我们通过FinalShell远程连接到Linux,就是使用的SSH服务。

SSH服务支持:

  1. 通过账户+密码的认证方式来做用户认证
  2. 通过账户+密钥文件的方式做用户认证

SSH可以让我们通过SSH命令,远程的登陆到其它的主机上,比如:

在node1执行:ssh root@node2,将以root用户登录node2服务器,输入密码即可成功登陆,或者ssh node2,将以当前用户直接登陆到node2服务器。

(输入exit或按ctrl+d即可退回)

SSH免密配置

后续安装的集群化软件,多数需要远程登录以及远程执行命令,简单起见,配置三台Linux服务器之间的免密码互相SSH登陆

  1. 在每一台机器都执行:ssh-keygen -t rsa -b 4096,一路回车到底即可【用于生成ssh远程登录密钥】

  2. 在每一台机器都执行以下命令【用于共享密钥】

    ssh-copy-id node1
    ssh-copy-id node2
    ssh-copy-id node3
    
  3. 执行完毕后,node1、node2、node3之间将完成root用户之间的免密互通

配置集群的JDK环境

参考这篇文章:JDK环境配置

补充命令scp

未来我们将会频繁的在多台服务器之间相互传输数据。

为了更加方面的互相传输,我们补充一个命令:scp

scp命令是cp命令的升级版,即:ssh cp,通过SSH协议完成文件的复制。

其主要的功能就是:在不同的Linux服务器之间,通过SSH协议互相传输文件。

只要知晓服务器的账户和密码(或密钥),即可通过SCP互传文件。

语法:

scp [-r] 参数1 参数2
# -r选项用于复制文件夹使用,如果复制文件夹,必须使用-r
# 参数1:本机路径 或 远程目标路径
# 参数2:远程目标路径 或 本机路径
# Conclusion:用于将参数一复制到参数二

Case1:
scp -r /export/server/jdk root@node2:/export/server/
将本机上的jdk文件夹,以root的身份复制到node2的/export/server/内

同SSH登陆一样,账户名可以省略(使用本机当前的同名账户登陆,参考Case2)

Case2:
scp -r node2:/export/server/jdk /export/server/
将远程node2的jdk文件夹,复制到本机的/export/server/内


# scp命令的高级用法
cd /export/server
scp -r jdk node2:`pwd`/    # 将本机当前路径的jdk文件夹,复制到node2服务器的同名路径下
scp -r jdk node2:$PWD      # 将本机当前路径的jdk文件夹,复制到node2服务器的同名路径下

# 因为被``包裹的内容会被当做命令执行
# $可以取环境变量记录的值
# 两者都可以获得PWD的值
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Kettle是一种开源的ETL工具,能够在Linux环境下构建数据集群(Kettle Cluster)来处理大规模数据。 在Linux环境下,我们可以通过以下步骤来配置Kettle集群: 1. 首先,我们需要在每个节点上安装Kettle,并确保节点之间可以相互通信。可以使用分布式文件系统(如Hadoop HDFS)来共享数据文件,在整个集群中保持数据一致性。 2. 接下来,将Kettle的配置文件进行修改以适应集群环境。这些配置文件包括kettle.properties和slave-server.xml。在kettle.properties文件中,我们需要设置节点之间的通信端口、日志和缓存目录等参数。在slave-server.xml文件中,我们需要指定每个节点的名称和IP地址。 3. 启动Master节点。在Master节点上,我们需要使用Kitchen或Pan命令来启动Master服务器。Master服务器将负责整个集群的协调和控制。 4. 启动Slave节点。在每个Slave节点上,我们同样使用Kitchen或Pan命令来启动Slave服务器。Slave服务器将根据Master节点的指令,执行相应的数据处理任务。 5. 提交作业。在Master节点上,我们可以使用Spoon或Kitchen命令来提交ETL作业。Master节点将根据作业的要求将任务分发给不同的Slave节点进行并行处理。 6. 监控和管理。在Kettle集群中,我们可以利用Kettle自带的监控工具Pentaho BA来查看集群的运行状态、性能指标和日志信息,从而进行集群的监控和管理。 通过搭建Kettle集群,我们可以充分利用多台计算机的资源,实现大规模数据的并行处理,提高数据处理的效率和性能。同时,Kettle具有丰富的功能和灵活的配置选项,可以满足不同规模和复杂度的数据处理需求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会不了一点

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值