(创建3个虚拟机,1个作为主服务器,二个作为从节点)
一、安装虚拟机
Windwos:VMware Workstation Pro
MAC:VMware Fusion
安装:
** 创建空虚拟机
** 安装虚拟机时的资源规划
Linux版本:Centos 6.8 或 CentOS 7.2 1611内核
内存:
linux01:
内存:4G
CPU:1个 2core
linux02:
内存:2G
CPU:1个 1core
linux03
内存:2G
CPU:1个 1core
** 虚拟机网络设置
** $ su - root
输入密码
** # vi /etc/sysconfig/network-scripts/ifcfg-eth0
IPADDR=192.168.216.20
NETMASK=255.255.255.0
GATEWAY=192.168.216.2
DNS1=192.168.216.2
DNS2=8.8.8.8
BOOTPROTO=static
ONBOOT=yes
** 重启网卡服务
CentOS6.8: # service network restart
CentOS7.2: # systemctl restart network.service
** CRT远程连接Linux
** 禁用SELinux
** Selinux:linux安全管理工具
** # vi /etc/sysconfig/selinux
** 编辑改动如下:
SELINUX:disable
** 禁用防火墙
** CentOS 6.8
iptables
# service iptables stop
# chkconfig iptables off
** CentOS 7.2
# systemctl stop firewalld.service
# systemctl disable firewalld.service
** ping外网测试
** visudo
在如下加上这么一句话:
·······················
.png)
admin ALL=(ALL) NOPASSWD: ALL
** 修改主机名
CentOS 6.8:
$ sudo vi /etc/sysconfig/network
································
.png)
CentOS 7.2:
$ sudo vi /etc/hostname
** 修改ip与主机名的映射关系
$ sudo vi /etc/hosts
192.168.216.20 linux01
192.168.216.21 linux02
192.168.216.22 linux03
** 安装JDK
**下载jdk1.8
方法1,浏览器下载 上传到服务器
方法2. 浏览器下载的时候复制 下载链接 这个时候再用wget url地址
这个时候会有个一个文件
.png)
重命名:mv 当前文件 jdk-1.8.tar.gz
** 解压 tar -zxf jdk-1.8.tar.gz
** 配置环境变量 vim /etc/profile
#JAVA_HOME
JAVA_HOME=/home/admin/modules/jdk1.8.0_121
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
** 删除OpenJDK(CentOS 自带的JAVA环境)
rpm -qa|grep java 找到系统自带的java
.png)
依次删除他们
** source刚才配置好的系统环境变量文件
$ source /etc/profile
** 验证
$ java -version
.png)
如果报错如下: 则yum install glibc.i686 可以解决
.png)
** 克隆
将linux01,克隆出linux02,linux03
** 先关闭虚拟机
** 完成克隆
** 修改后两台机器的网络配置
** 主机名
$ sudo vi /etc/sysconfig/network
** 网卡MAC地址
$ sudo vi /etc/udev/rules.d/70-persistent-net.rules
** 修改固定IP地址 和对应的mac地址
$ sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
** 重启机器(注意,克隆出来的两台机器都要配置)(如果不重启,网络会报错Connection activation failed: The connection is not for this device.)
** 使用CRT连接3台机器,测试
** 配置SSH无秘钥访问(如下操作,需要在3台机器中分别执行)
** 生成密钥
$ ssh-keygen -t rsa
** 分发公钥
$ ssh-copy-id linux01; ssh-copy-id linux02; ssh-copy-id linux03;
** ssh访问测试
ssh linux01
ssh linux02
ssh linux03
** 关闭后两台机器的界面
CentOS6:
$ sudo vi /etc/inittab
.png)
CentOS7:
$ sudo systemctl set-default multi-user.target
** 安装VMTool
** 配置时间服务器
** 检查时区
$ date -R
** 检查软件包 NTP服务器【Network Time Protocol(NTP)】是用来使计算机时间同步化的一种协议
如果ntp工具不存在,则需要使用yum安装
$ sudo rpm -qa | grep ntp
如果不存在则安装:
$ sudo yum -y install ntp
** 如果时区不是+0800东八区区时的话,需要手动纠正
$ sudo rm -rf /etc/localtime
$ sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
** 先以网络时间为标准,纠正集群的时间服务器的时间
** 修改ntp配置文件(只修改主服务器的时间配置,其他的向主服务器同步时间即可)
$ sudo vi /etc/ntp.conf
修改为如下:
#允许192.168.216.x网段上的所有机器和当前这台机器进行实践同步
restrict 192.168.216.0 mask 255.255.255.0 nomodify notrap
.png)
#当该节点丢失网络连接,依然可以作为时间服务器为集群其他节点提供时间同步服务
server 127.127.1.0
fudge 127.127.1.0 stratum 10
** 重启ntp服务
CentOS6:
$ sudo chkconfig ntpd on
$ sudo service ntpd restart
CentOS7:
$ sudo systemctl enable ntpd.service
$ sudo systemctl restart ntpd.service
** 使用从节点,手动同步时间(后面两台机器都要操作)
$ sudo ntpdate linux01
** 设置时间同步任务
# crontab -e 编辑时间任务
(尖叫提示:上面的#号代表root用户,下边的#号代表shell注释)
# .------------------------------------------minute(0~59)
# | .----------------------------------------hours(0~23)
# | | .--------------------------------------day of month(1~31)
# | | | .------------------------------------month(1~12)
# | | | | .----------------------------------day of week(0~6)
# | | | | | .--------------------------------command
# | | | | | |
# | | | | | |
*/10 * * * * /usr/sbin/ntpdate linux01
# crontab -l 查看时间任务
** 重启定时任务
CentOS6:
# service crond restart
CentOS7:
# systemctl restart crond.service
** 虚拟定期备份,一定要做!!!!!
先关机:
$ sudo shutdown -h now
按照时间新建文件夹,将已经安装完成的3台虚拟机,备份到该文件夹中。
- Hyper-V虚拟机配置内部网络固定IP 并且连接外网
2019/10/23 Hyper-V CentOS7 摘要:Hyper-V中的虚拟机CentOS7能固定IP并且连接外网 保证宿主机的Xshell始终只用同一个IP连接到该虚拟机 新建内部网络虚拟交换 ...
- Centos7 搭建KVM并创建Linux Windows虚拟机
一.安装KVM 查看系统版本 cat /etc/redhat-release 关闭防火墙及selinux systemctl disable firewalld.service 查看防 ...
- 为虚拟机配置NAT网络
一.打开网络适配器 1.按图中所示进行配置 2.记得把网和VM8关联一下 3.点击网络设置 4.点击右下角小齿轮来配置ip 5.在IPv4下选择手动 6. 7. 这个就是Linux的NAT配置
- CentOS7虚拟机配置、Hadoop搭建、wordCount DEMO运行
安装虚拟机 最开始先安装虚拟机,我是12.5.7版本,如果要跟着我做的话,版本最好和我一致,不然后面可能会出一些莫名其妙的错误,下载链接如下(注册码也在里面了): 链接:https://pan.bai ...
- 虚拟机centos7环境搭建,系统分区,静态IP配置
文章目录 1.虚拟机安装centos7 2.系统分区 3.配置静态IP centos7下载地址 http://mirrors.aliyun.com/centos/7/isos/x86_64/ Cent ...
- PC环境搭建——虚拟机配置双网卡
Vmware虚拟机三种网络模式详解 TCP/IP协议四层模型: 应用层 传输层 网络层 物理接口 桥接模式时,主机和虚拟机在同一个网段,之间可以相互访问 NAT模式时,主机和虚拟机不在同一网段,之间通 ...
- 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)
从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...
- centos7 && centos6.5部KVM使用NAT联网并为虚拟机配置firewalld && iptables防火墙端口转发
centos7 && centos6.5 部KVM使用NAT联网并为虚拟机配置firewalld && iptables防火墙端口转发 一.准备工作: 1: 检查kvm ...
- 使用VMware搭建3台一模一样的Linux虚拟机
转自:https://www.linuxidc.com/Linux/2014-08/105909.htm 简介:VMware可以在个人本地一台笔记本机器上同时运行二个或更多Windows.DOS.LI ...
随机推荐
- EditPlus常用快捷键[私人]
EditPlus快捷键大全网上一搜一大把, 本文档只记录自己常用的快捷键, 随时更新: 必用: ctrl + c 复制 ctrl + x 剪切 ctrl + v 粘贴 ctrl + z 回滚 ctrl ...
- linux常见命令整理
Linux管理文件和目录的命令 命令 功能 命令 功能 pwd 显示当前目录 ls 查看目录下的内容 cd 改变所在目录 cat 显示文件的内容 grep 在文件中查找某字符 cp 复制文件 touc ...
- C++中的矩阵运算
C++中的矩阵运算 1. 2阶矩阵的逆矩阵公式
- KMP回顾学习
记住这张图,getnext就是对一个已知的待匹配的串进行分析,nex[i]表示当a[i]匹配失败后我能跳到哪里,继续尝试匹配,而不是每一次失败都从头再来,先来看看代码 const int maxn = ...
- setTimeout问题
function fn(argu1){ alert(argu1); } setTimeout(fn, 1000, 12); setTimeout从第三个参数开始,之后的参数都是fn的.fn不用加(), ...
- Paul Simon -- Duncan
Paul Simon -- Duncan (London,January 1972) Couple in the next roomBound to win a prizeTheyve been go ...
- pl/sql 语言设置
1.select * from v$nls_parameters 查询nls的参数,获得数据库服务器端的字符编码 NLS_LANGUAGE NLS_CHARACTERSET 2.修改本地环境变量 NL ...
- 一句话为当前窗口客户区捉图: GetFormImage 来自万一的博客
一句话为当前窗口客户区捉图: GetFormImage http://www.cnblogs.com/del/archive/2008/10/24/1318738.html unit Unit1; i ...
- boot分区剩余空间不足
Linux boot分区用于存放内核文件以及Linux一些启动配置文件,一般情况下分区大小为500M足够使用,如果出现空间不足的问题可以使用以下方法来解决. 查看已经安装的内核 dpkg --ge ...
- linux系统编程之文件与IO(六):实现ls -l功能
本文利用以下系统调用实现ls -l命令的功能: 1,lstat:获得文件状态, 2,getpwuid: #include <pwd.h> struct passwd *getpwuid(u ...