Linux操作系统基础(十四):集群服务器搭建

  • Published2025-12-04 16:46:48

集群服务器搭建一、新增Linux服务器1、克隆虚拟机学习环境中,一般使用VMware虚拟机克隆Linux系统,用来进行集群服务器的搭建。VMware支持两种类型的克隆: 完整克隆、链接克隆

完整克隆是和原始虚拟机完全独立的一个复制,它不和原始虚拟机共享任何资源。可以脱离原始虚拟机独立使用。

链接克隆需要和原始虚拟机共享同一虚拟磁盘文件,不能脱离原始虚拟机独立运行。但采用共享磁盘文件却大大缩短了创建克隆虚拟机的时间,同时还节省了宝贵的物理磁盘空间。通过链接克隆,可以轻松的为不同的任务创建一个独立的虚拟机。

注:集群服务器搭建,我们通常采用完整克隆来模拟独立Linux服务器。

虚拟机克隆的前置条件:虚拟机处于关闭状态。

虚拟机克隆的流程:

2、修改虚拟机的硬件配置3、修改虚拟机的网络配置修改主机名hostname:

代码语言:javascript复制# vim /etc/hostname

node2

hostnamectl set-hostname node2

su

注:CentOS7版本我们可以直接通过hostnamectl指令来实现对主机名称的永久修改修改IP地址

代码语言:javascript复制vim /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE="Ethernet" #网卡类型 以太网

PROXY_METHOD="none"

BROWSER_ONLY="no"

BOOTPROTO="static"

DEFROUTE="yes"

IPV4_FAILURE_FATAL="no"

IPV6INIT="yes"

IPV6_AUTOCONF="yes"

IPV6_DEFROUTE="yes"

IPV6_FAILURE_FATAL="no"

IPV6_ADDR_GEN_MODE="stable-privacy"

NAME="ens33" #网卡名称

DEVICE="ens33"

ONBOOT="yes" #是否开机启动网卡服务

IPADDR="192.168.88.162" #IP地址

PREFIX="24" #子网掩码 等价于 NETMASK=255.255.255.0

GATEWAY="192.168.88.2" #默认网关

DNS1="8.8.8.8" #DNS解析(主)

DNS2="114.114.114.114" #DNS解析(备)

IPV6_PRIVACY="no重启网络

代码语言:javascript复制systemctl restart network # 重启网络服务二、关闭防火墙1、关闭firewalld代码语言:javascript复制##查看防火墙状态

systemctl status firewalld

##关闭防火墙

systemctl stop firewalld

##关闭防火墙开机自启动

systemctl disable firewalld

##centos服务开启关闭命令

centos6:(某些可以在centos7下使用)

service 服务名 start|stop|status|restart

chkconfig on|off 服务名

centos7:

systemctl start|stop|status|restart 服务名

systemctl disable|enable 服务名 #开机自启动 关闭自启2、关闭SElinux安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统。

SELinux 主要由美国国家安全局开发。2.6 及以上版本的 Linux 内核都已经集成了 SELinux 模块。

SELinux 主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限原则)。

临时关闭

代码语言:javascript复制# setenforce 0永久关闭

代码语言:javascript复制vim /etc/selinux/config

## This file controls the state of SELinux on the system.

## SELINUX= can take one of these three values:

## enforcing - SELinux security policy is enforced.

## permissive - SELinux prints warnings instead of enforcing.

## disabled - No SELinux policy is loaded.

SELINUX=disabled三、修改主机名代码语言:javascript复制hostnamectl set-hostname node2四、修改hosts映射分别编辑每台虚拟机的hosts文件,在原有内容的基础上,填下以下内容:

注意:不要修改文件原来的内容,三台虚拟机的配置内容都一样。

代码语言:javascript复制vim /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.88.161 node1

192.168.88.162 node2

192.168.88.163 node3五、SSH免密登录代码语言:javascript复制##实现node1----->node2

##step1

在node1生成公钥私钥

ssh-keygen 一路回车,在当前用户的home下生成公钥私钥(隐藏文件)

[root@node1 .ssh]# pwd

/root/.ssh

[root@node1 .ssh]# ll

total 12

-rw------- 1 root root 1675 May 20 11:59 id_rsa

-rw-r--r-- 1 root root 402 May 20 11:59 id_rsa.pub

-rw-r--r-- 1 root root 183 May 20 11:50 known_hosts

##step2

copy公钥给node2

ssh-copy-id node2

注意第一次需要密码

##step3

[root@node1 .ssh]# ssh node2

Last login: Thu May 20 12:03:30 2023 from node1

[root@node2 ~]# exit

logout

Connection to node2 closed.

##课程要求:至少打通node1---->node2 node3免密登录六、时钟同步命令

英文

含义

ntpdate 互联网时间服务器地址

Network Time Protocol

同步时间

阿里云时钟同步服务器: ntpdate ntp4.aliyun.com

七、远程文件拷贝远程文件拷贝命令:scp

scp是 remote file copy program的缩写, scp是远程文件拷贝命令

1、从本机拷贝到远程服务器基本语法:

代码语言:javascript复制# scp [选项] 本地文件路径 远程服务器的用户名@远程服务器的IP地址:远程文件的存储路径

选项说明:

-r :递归传输,主要针对文件夹1、文件

案例:创建一个linux.txt文件,把linux.txt本地node1服务器上传到node2

代码语言:javascript复制touch linux.txt

scp linux.txt root@192.168.88.161:/root/2、目录

案例:创建shop文件夹及readme.txt文件,然后把shop文件夹连同内部的readme.txt文件一起上传到node2服务器

代码语言:javascript复制mkdir shop

touch shop/readme.txt

scp -r shop root@192.168.88.162:/root/2、从远程服务器复制到本机基本语法:

代码语言:javascript复制# scp [选项] 远程服务器的用户名@远程服务器的IP地址:远程文件的地址 本地文件存储路径

选项说明:

-r :递归传输,主要针对文件夹1、文件

案例:把node2服务器端的linux.txt下载到本地

代码语言:javascript复制scp root@node2:/root/linux.txt ./2、目录

案例:把node2服务器端的shop文件夹下载到本地

代码语言:javascript复制scp -r root@node2:/root/shop ./