一、集群Linux环境搭建

1. 注意事项

1.1 windows系统确认所有的关于VmWare的服务都已经启动

打开任务管理器->服务,查看五个VM选项是否打开。

1.2 确认好VmWare生成的网关地址

打开VMWare->编辑->虚拟网络编辑器->选择VMnet8->NAT设置->网关:192.168.253.2

1.3 确认VmNet8网卡已经配置好了IP地址和DNS

打开 设置->网络和Internet->更改适配器选项->VMnet8->右键属性->Internet协议版本4->属性->使用下面的IP地址->设置IP地址(与1.2网关相匹配:192.168.253.5)->设置子网掩码:255.255.255.0->默认网关(同1.2:192.168.253.2)->使用下面的DNS服务器地址->首选DNS服务器:8.8.8.8

2. 克隆虚拟机

2.1 将虚拟机克隆三份,并分别重命名

打开VMWare->虚拟机->管理->克隆

2.2 分别设置三台虚拟机的内存

需要三台虚拟机, 并且需要同时运行, 所以总体上的占用为: 每台虚拟机内存x3 ;

在分配的时候, 需要在总内存大小的基础上, 减去2G-4G作为系统内存, 剩余的除以3, 作为每台虚拟机的内存。

打开VMWare->虚拟机->设置

3. 虚拟机修改IP

3.1 集群规划

IP

主机名

192.168.253.100

Node01

192.168.253.110

Node02

192.168.253.120

Node03

3.2 设置ip地址

3.2.1 命令行修改ip地址

1. nmcli d: 查看网卡名字(图中为ens33

2. vi /etc/sysconfig/network-scripts/ifcfg-网卡名:编辑网卡配置,我的网卡是ens33,所以对应命令为:vi /etc/sysconfig/network-scripts/ifcfg-ens33

3. 将 BOOTPROTO=”dhcp” 修改为 BOOTPROTO=”static”,意为设置为静态ip

4. 将 ONBOOT=no 修改为 ONBOOT=yes,意为启动时激活该网卡

5. 最后添加ip、子网掩码、网关、DNS、网络前缀,ip与集群规划上的ip相对应,子网掩码、网关、DNS与1.3的设置相对应,网络前缀为24

IPADDR=192.168.253.100

NETMASK=255.255.255.0

GATEWAY=192.168.253.2

DNS1=8.8.8.8

PREFIX=24

6. ESC->:wq,保存修改。

7. 重启网络服务:先载入新的配置文件,然后再执行重启网卡命令。重启网卡之前一定要重新载入一下配置文件,不然不能立即生效

载入配置文件命令:nmcli c reload

重启网卡:nmcli c up ens33(网卡名与上面相照应,我的为ens33)

8. 检查网络连接是否成功:ping -c 1 www.baidu.com,参数c为设置完成要求回应的次数。如果为:ping www.baidu.com ,需要按 Ctrl+c 终止。

3.2.2 图形界面修改ip地址

1. nmtui:打开图形化修改ip界面

2. nmtui使用教程:

使用箭头键或按 Tab 键向前选择选项;

按 Shift+Tab 组合键返回;

按 Enter 选择一个选项;

按 Space 键选择复选框状态。

3. 修改过程如下:

4. 设置主机名

4.1 命令行修改主机名

4.1.1 查看当前主机名:hostnamectl

4.1.2 修改当前主机名

1. hostnamectl修改当前主机名:hostnamectl set-hostname liu

2. nmcli修改当前主机名:

4.1.3 重启服务使更改生效

重新启动systemd-hostnamed服务:systemctl restart systemd-hostnamed.service。

4.2 图形界面修改主机名

nmtui:打开图形化修改ip界面

5. 设置ip和域名映射

命令行输入:vi /etc/hosts,进入文件。

添加ip和域名映射:

192.168.253.90 liumengsong liumengsong.hadoop.com

192.168.253.100 node01 node01.hadoop.com

192.168.253.110 node02 node02.hadoop.com

192.168.253.120 node03 node03.hadoop.com

6. 关闭防火墙

6.1 查看防火墙状态

命令:systemctl status firewalld.service

6.2 关闭防火墙

  命令:systemctl stop firewalld.service

6.3 启动防火墙

  命令:systemctl start firewalld.service

6.4 禁止防火墙随系统启动

  命令:systemctl disable firewalld.service

6.5 设置防火墙随系统启动

命令:systemctl enable firewalld.service

6.6 使防火墙设置生效

命令:reboot(重启系统)

7. 关闭SELinux

7.1 SELinux的工作模式

enforcing:强制模式

  permissive:宽容模式

  disabled:关闭

7.2 修改其配置文件

命令:vi /etc/selinux/config

8. 虚拟机免密码登录

8.1免密SSH登录原理

1. 需要先在 B节点 配置 A节点 的公钥 ;

3.  A节点 请求 B节点 要求登录;

3.  B节点 使用 A节点 的公钥, 加密一段随机文本;

4.  A节点 使用私钥解密, 并发回给 B节点;

5.  B节点 验证文本是否正确。

8.2 生成公钥与私钥

命令:ssh-keygen -t rsa

8.3 拷贝公钥到同一台机器

  命令:ssh-copy-id liumengsong(我的主机名是liumengsong)

8.4 复制第一台机器的认证到其它机器

命令:scp /root/.ssh/authorized_keys node01:/root/.ssh(node01为要复制到的机器主机名)

8.5 验证是否可以免密登录

命令:ssh node01(登录到主机名为node01的机器)

退出登录:exit

9. 时钟同步

9.1 修改配置,加入网络时间

命令:vi /etc/chrony.conf

   server ntp.aliyun.com iburst

    server cn.ntp.org.cn iburst

9.2 重启服务

命令:systemctl restart chronyd.service

9.3 设置开机自启

命令:systemctl enable chronyd.service

10. 安装jdk

10.1 卸载自带openjdk

命令:rpm -qa | grep java。rpm 命令用于管理套件,参数q为使用询问模式,当遇到任何问题时,rpm指令会先询问用户,a为查询所有套件。 grep 命令用于查找文件里符合条件的字符串。

命令:rpm -e javapackages-filesystem-5.3.0-1.module_el8.0.0+11+5b8c10bd.noarch tzdata-java-2020a-1.el8.noarch java-1.8.0-openjdk-headless-1.8.0.265.b01-0.el8_2.x86_64 --nodeps,其中e为删除指定的套件,nodeps为不验证套件的相互关联性。

10.2 创建安装目录

命令:mkdir -p /export/softwares          #软件包存放目录

     mkdir -p /export/servers              #软件包安装目录

其中,-p 确保目录名称存在,不存在的就建一个。

10.3 下载软件包

软件包下载地址:https://forensics.cert.org/centos/cert/8/x86_64/jdk-12.0.2_linux-x64_bin.rpm

通过Xftp 6软件移动到指定的软件包存放目录。

10.4 安装软件包

命令:rpm -ivh --prefix=/export/servers/ jdk-12.0.2_linux-x64_bin.rpm

其中,参数i为显示套件的相关信息,v为显示指令执行过程,h为套件安装时列出标记,prefix后跟安装目录。安装完成后命令行输入:java -version,查看是否安装成功。

10.5 配置环境变量

Centos 8以后安装jdk自动配置环境变量,无需另外配置。

11. 安装、配置mysql

11.1 安装mysql

命令:yum install mysql mysql-server mysql-devel.x86_64

mysql:客户端

mysql-server:数据库服务器

mysql-devel:开发用到的库以及包含条件

11.2 启动mysql服务

命令:systemctl start mysqld

11.3 登录mysql

命令:mysql -u root -p

11.4 修改mysql密码

命令:create user root@'%' identified by '666666';

11.5 开启远程登录

命令:grant all privileges on *.* to root@'%' with grant option;

flush privileges;

exit;

11.6 重启mysql服务

命令:systemctl restart mysqld.service

11.7 设置mysql开机启动

命令:systemctl enable mysqld

12 附录

ESC+U:撤销(修改文本出现错误时)

mv 原文件名 重命名文件名:文件重命名

Ctrl+L/clear:清屏(命令行)

Ctrl+c:ping出现死循环时停止(返回命令行)

以上环境配置均在centos8

centos 8 集群Linux环境搭建的更多相关文章

  1. apache2.4配置weblogic12c集群(linux环境)

    首先确定环境已装apache2.4,没装的话可以看下这篇文章apache2.4一键脚本安装(linux环境) 1.下载apache分发模块mod_wl_24.so 下载apache2.4的weblog ...

  2. 部署k8s集群之环境搭建和etcd单节点安装

    环境搭建以及etcd 单节点安装过程 安装之前的环境搭建 在进行k8s安装之前先把虚拟机准备好,这里准备的是三台虚拟机 主机名 ip地址 角色 master 172.16.163.131 master ...

  3. hadoop学习笔记(六):hadoop全分布式集群的环境搭建

    本文原创,如需转载,请注明作者以及原文链接! 一.前期准备: 1.jdk安装        不要用centos7自带的openJDK2.hostname    配置       配置位置:/etc/s ...

  4. Dream------spark--spark集群的环境搭建

    1.下载安装scala http://www.scala-lang.org/download/2.11.6.html   2.解压下载后的文件,配置环境变量:编辑/etc/profile文件,添加如下 ...

  5. Hadoop入门(五) Hadoop2.7.5集群分布式环境搭建

    本文接上文内容继续: server01 192.168.8.118 jdk.www.fengshen157.com/ hadoop NameNode.DFSZKFailoverController(z ...

  6. 性能测试:k8s集群监控环境搭建(kube-prometheus)

    选择kube-prometheus版本 k8s集群版本是1.22.x 5个节点 说明:如果你电脑配置低,也可以1个master节点,2个node节点 3个节点 Kube-Prometheus地址:ht ...

  7. MQ集群测试环境搭建(多节点负载均衡,共享一个kahaDB文件(nas方式))

    1. os ubuntu12.04 基础环境准备 干掉不好用的vim重新装 sudo apt-get remove vim-common sudo apt-get install vim 如果需要使用 ...

  8. Windows及Linux环境搭建Redis集群

    一.Windows环境搭建Redis集群 参考资料:Windows 环境搭建Redis集群 二.Linux环境搭建Redis集群 参考资料:Redis Cluster的搭建与部署,实现redis的分布 ...

  9. vagrant+docker搭建consul集群开发环境

    HashiCorp 公司推出的Consul是一款分布式高可用服务治理与服务配置的工具.关于其配置与使用可以参考这篇文章 consul 简介与配置说明. 一般,我们会在多台主机上安装并启动 consul ...

随机推荐

  1. nginx upstream一致性哈希的实现

    地址:http://wiki.nginx.org/HttpUpstreamConsistentHash 首先声明一个命令: static ngx_command_t  ngx_http_upstrea ...

  2. javaweb开发中的常见错误

    Javaweb中的最常见错误及其解决方法 1.200:表示成功处理业务. 2.400 请求出错: 由于语法格式有误,服务器无法理解此请求.不作修改,客户程序就 无法重复此请求. 解决办法:,遇到400 ...

  3. 类加载器ClassLoader

    上篇文章说到,Class类可以通过一个类的全限定名去加载类,那么底层是如何去加载的呢?这就是我们今天要聊的类加载器ClassLoader,其可以通过一个类的全限定名来获取描述此类的二进制字节流,也即是 ...

  4. .NET Core加解密实战系列之——使用BouncyCastle制作p12(.pfx)数字证书

    简介 加解密现状,编写此系列文章的背景: 需要考虑系统环境兼容性问题(Linux.Windows) 语言互通问题(如C#.Java等)(加解密本质上没有语言之分,所以原则上不存在互通性问题) 网上资料 ...

  5. json与字典的相互转化

    json格式初学者如果在编辑器中自己编写一个json格式,可能会出错:虽然json格式本质上也是字符串,但是json格式要求,要使用双引号将key和value括起来: 如果要将上面的字符串格式和jso ...

  6. 文档驱动 —— 表单组件(六):基于AntDV的Form表单的封装,目标还是不写代码

    开源代码 https://github.com/naturefwvue/nf-vue3-ant 也不知道大家是怎么写代码的,这里全当抛砖引玉 为何封装? AntDV非常强大,效果也非常漂亮,功能强大, ...

  7. Cypress系列(53)- as() 命令详解

    如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 作用 起别名以供以后使用 可在 cy.g ...

  8. nginx 1.12安装

    准备工作 使用root用户安装. 到nginx官网下载Linux源码或者执行:wget http://nginx.org/download/nginx-1.12.2.tar.gz. 到pcre站点下载 ...

  9. Python-集合 字典-set dict fronzenset

    集合 set 1. 无序 2. 去重 3. 定义空集 set() numbers = {1, 3, 4, 5, 6, 5, 4, 4, 7, 8} print(numbers) print(numbe ...

  10. 编程源自生活:抽象 -> 生活中的洗头问题

    设计背景: 我:头上的油揩给了手,手接触洗手液.洗手液伤头皮,这样头皮就不会和洗手液接触了. 具体执行过程描述: 1.手揩油  ->  2.取液体  3.->洗手   我:这是什么设计模式 ...