从零到一:全面掌握模板机部署与虚拟机克隆的实训指南【实训Day01】

一、模板机的部署

1.设置好子网ip子网掩码以及网关

保证有NAT模式

子网IP着重记住前三段:192.168.222.xxx

2.开始建立虚拟机

注意:路径中不要有中文

3.安排8个内核

4.安排2GB内存

创建初步成功,接着

5.开启此虚拟机

6.选择中文

7.日期&时间保存与所处时间一致

8.安装目标位置

设置/root 1G

设置swap 2G

设置 / 47G

9.kDUMP启用

root密码写成123456

登录一下,ping看一下是否成功ping通

10.安装好vim

yum -y install vim wget curlnet-tools zip unzip

可能出现问题:

解决办法见centos7 yum安装使用时提示 cannot find a valid baseurl for repo:base/7/x86_64 的解决方法

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

上传刚才下载CentOS-7repo

mv /etc/yum.repos.d/CentOS-7.repo /etc/yum.repos.d/CentOS-Base.repo

11.修改配置

vim /etc/sysconfig/network-scripts/ifcfg-ens33

修改如图:

注意IPADDR=192.168.222.100,和前面对应

service network restart  网络服务重启

永久关闭防火墙命令  

systemctl disable firewalld.service

reboot 重启虚拟机

vim /etc/hostname

 12. 修改主机名称

useradd star   添加用户star

passwd star

123456

13.修改配置文件添加权限

vim /etc/sudoers

找到位置,再去添加star用户权限

star    ALL=(ALL)       NOPASSWD:ALL

14.连接shell

我这里使用的是XShell

sudo star 进入star用户

sudo mkdir module

sudo mkdir software

15.设置全局变量

创建文本文档,用记事本编辑内容

C:\Windows\System32\drivers\etc位置下有hosts文件,覆盖掉

vim /etc/hosts

安装好一下包:

sudo yum install lrzsz -y
sudo yum -y install  rsync
sudo yun -y install nc
sudo yum install net-tools

16.整体步骤

1) 虚拟机启动与登录
输入登录名 root 和密码 123456
2) ping 测试主机之间的网络连通性
[root@localhost ~] ping www.badiu.com
3) 安装 vim
[root@localhost ~]yum -y install vim wget curl
net-tools zip unzip
4) 修改 ip 地址
[root@localhost~]#vim
/etc/sysconfig/network-scripts/ifcfg-ens33
============修改内容如下============= BOOTPROTO="static" ONBOOT="yes" 系统启动的时候网络接收是否有效
**VM=>编辑=>虚拟网络编辑器==>查看 VM8 子网 ip 192.168.88.0
IPADDR=192.168.88.100
**网关设置
GATEWAY=192.168.88.2
**域名解析器
DNS1=192.168.88.2
============================ 编辑完成后输入 ESC+:wq!保存
5) 重启网络服务
[root@localhost ~]service network restart
6) 查看网络情况
[root@localhost ~]ifconfig
2.1.4 配置主机名
1) 修改主机名
[root@localhost ~]vim /etc/hostname
=========修改内容如下====
hadoopbase ======================== 编辑完成后输入 ESC+:wq!保存
2.1.5 关闭防火墙
1) 查看防火墙状态
[root@localhost ~]systemctl status firewalld
2) 关闭防火墙(临时)
[root@localhost ~]systemctl stop firewalld
3) 永久关闭防火墙
[root@localhost ~]systemctl disable
firewalld.service
4) 重启虚拟机
[root@localhost ~]reboot
2.1.6 添加用户并提升权限
1) 添加用户并设置密码
[root@localhost ~]useradd star
[root@localhost ~]passwd star
输入两次密码 123456
2) 修改配置文件添加权限
[root@localhost ~]vim /etc/sudoers
=========修改内容如下====
root ALL=(ALL) ALL(定位位置用的只需要添加下面就可以)
star ALL=(ALL) NOPASSWD:ALL
======================== 编辑完成后输入 ESC+:wq!保存
2.1.7 创建 module(安装路径)和 software(软件包)
1) 切换到 star 用户
[root@localhost ~]su star
2) 创建目录
[star@localhost ~]cd /opt
[star@localhost ~]sudo mkdir /module
[star@localhost ~]sudo mkdir /software
3) 修改目录权限
[star@localhost ~]su root
[root@localhost ~]cd /opt
[root@localhost ~]chown star:star module/
[root@localhost ~]chown star:star oftware/
2.1.8 设置全局变量变量
[root@localhost ~]su star
[star@localhost ~]mkdir /home/star/bin
2.1.9 设置网络名称
1) 设置 Linux 系统 切换到 root 用户
[root@localhost ~]su root
[root@localhost ~]vim /etc/hosts
=========添加内容如下====
192.168.88.100 hadoop100
192.168.88.101 hadoop101
192.168.88.102 hadoop102
192.168.88.103 hadoop103
192.168.88.104 hadoop104
192.168.88.105 hadoop105
192.168.88.106 hadoop106
192.168.88.107 hadoop107
192.168.88.108 hadoop108 ======================== 编辑完成后输入 ESC+:wq!保存
2) 设置 Windows 系统 网络名称
到 C:\Windows\System32\drivers\etc 目录下
打开 hosts 文件 添加以下内容
=========注意左对齐===========
192.168.88.100 hadoop100
192.168.88.101 hadoop101
192.168.88.102 hadoop102
192.168.88.103 hadoop103
192.168.88.104 hadoop104
192.168.88.105 hadoop105
192.168.88.106 hadoop106
192.168.88.107 hadoop107
192.168.88.108 hadoop108 ======================== 将 hosts 复制粘贴到桌面 修改之后保存
将桌面的 hosts 文件覆盖原先的 hosts 搞定
2.1.10 下载其他插件
1) 在 root 权限下载
[root@localhost ~]sudo yum install lrzsz -y
[root@localhost ~]sudo yum -y install rsync
[root@localhost ~]sudo yum -y install nc

[root@localhost ~]sudo yum install net-tools --- ifconfig 命令检验

二、虚拟机克隆

1.克隆机的部署


    1.1 AUSTBase的虚拟机


        右击===>管理===>克隆==>克隆Hadoop101  Hadoop102    Hadoop103 


    1.2 设置各个克隆机的hostname


        [root@localhost ~]vim /etc/hostname
        ==========修改内容如下=========
        hadoop100 修改成  hadoop101  或者 hadoop102 或者hadoop103
        ==============================


    1.3 设置各个克隆机的ip地址


        [root@localhost~]#vim
        /etc/sysconfig/network-scripts/ifcfg-ens33
        =========修改内容如下=============
        将ipaddr后面的  100分别修改成 101  102 103
        ==============================


    1.4 使用xShell连接hadoop101,hadoop102,hadoop103

卸载现有的JDK

rpm -qa | grep -i java | xargs -n1 sudo rm -e --nodeps

2 上传安装包

(在hadoop101上)
        插件 rz -E是上传文件(上传比较小的压缩包)
        # cd /opt/software
        # rz -E

不好用,还会传乱码,检验使用Xttp程序(仅只针对XShell程序传输文件)

安装官网网址

点击后就是打开xftp

个人感觉FinalShell更方便FinalShell官网网址

3 解压缩安装包

(在hadoop101上)

     cd /opt/software
     tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/
     cd /opt/module/
     ll

4 配置环境变量

(在hadoop101上)
        # sudo vim /etc/profile.d/my_env.sh 
        ========配置内容如下==========
        

#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin

使生效:source /etc/profile.d/my_env.sh
 检查是否安装成功: java -version

5.Hadoop的安装与部署


    5.1 上传安装包(在hadoop101上)
        # cd /opt/software
        点击xftp上传hadoop安装文件
    5.2 解压缩安装包(在hadoop101上)
        # cd /opt/software

 tar -zxvf hadoop-3.1.3.tar.gz -C /opt/module/

5.3 配置环境变量(在hadoop101上)
        # sudo vim /etc/profile.d/my_env.sh
        =====添加内容如下======
      

 #HADOOP_HOME
        export HADOOP_HOME=/opt/module/hadoop-3.1.3
        export PATH=$PATH:$HADOOP_HOME/bin
        export PATH=$PATH:$HADOOP_HOME/sbin

# source /etc/profile.d/my_env.sh

 # hadoop version

6.实现集群间文件传输

su star

cd /home/star/bin

sudo vim xsync.sh

内容如下:

#!/bin/bash
# 1.判断参数个数
if [ $# -lt 1 ]
then
    echo "Not Enough Arguement!"
    exit;
fi
# 2.遍历集群所有机器
for host in hadoop101 hadoop102 hadoop103
do
    echo ==========$host=========
    #3.遍历所有目录,逐个发送
    for file in $@
    do
        # 4.判断文件是否存在
        if [ -e $file ]
        then
            # 5.获取父目录
            pdir=$(cd -P $(dirname $file);pwd)
            # 6.获取当前文件的名称
            fname=$(basename $file)
            # 7.使用ssh创建目标文件夹
            ssh $host "mkdir -p $pdir"
            # 8.rsync拷贝异同文件
            rsync -av $pdir/$fname  $host:$pdir
        else
            echo $file does not exists!
        fi
    done
done
  1. 首先,脚本会遍历集群中的所有机器(hadoop101、hadoop102 和 hadoop103)。
  2. 对于每台机器,它会遍历传入的文件列表。
  3. 对于每个文件,脚本会检查文件是否存在。
  4. 如果文件存在,它会获取文件的父目录和文件名。
  5. 使用 SSH 在目标机器上创建相应的目录。
  6. 最后,它使用 rsync 命令将文件从本地拷贝到目标机器上的相应目录。

sudo chmod +x xsync.sh

sudo cp xsync.sh /bin/

将 “xsync.sh” 文件复制到 “/bin/” 目录

这样,您就可以在任何位置运行该脚本,而不需要指定完整的路径。

这里插入一个知识盲点,debug一晚上(欲哭无泪)

运行优先级问题--优先执行root bin下面的sh同名文件--再执行/home/star创建的用户bin下面的文件

我因为第一次写的shell语句与错误,就导致我把/home/star/bin里的sh文件删了,结果还是一样,运行出报错命令,解决办法是在root/bin下面的sh文件,原来它一直都在,只是我未曾发现

好在独自解决出来了,颇有收获,花费些许时间,但我却记住了这辈子可能都还记得的一个知识点,继续加油!

sudo xsync.sh /home/star/bin

运行 “xsync.sh” 脚本,并将 “/home/star/bin” 目录中的文件同步到集群中的其他机器。

成功结果页面:


实训Day01  小累 大收获

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/768259.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

好展位,抢先订!2024年亚洲(泰国) 国际电力能源展

2024年亚洲(泰国) 国际电力能源展 Powerex Asia & Electric Asia 2024 ▏发电设备 ▏输配电 ▏电网 ▏太阳能光伏 ▏储能 ▏氢能 ▏生物能源 ▏风能 ▏智慧能源 ▏ 能源部官方批复亚洲重点电力及新能源展 展会时间:2024 年 10 月 16-…

R可视化数据必要格式——长格式

一、引言 我们在对数据进行可视化时遇到最头疼、最常见的问题是什么?数据问题。 因为我们往往不会从零自己编程进行可视化,往往是现有模板或积累,而正确的数据格式对应正确的图形包要求,一定会正确出图,所以只有一个问…

鸿蒙开发设备管理:【@ohos.settings (设置数据项名称)】

设置数据项名称 说明: 本模块首批接口从API version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 本模块提供设置数据项的访问功能相关接口的说明及示例。 导入模块 import settings from ohos.settings;settings.getUri…

Pointnet++改进即插即用系列:全网首发GLSA聚合和表示全局和局部空间特征|即插即用,提升特征提取模块性能

简介:1.该教程提供大量的首发改进的方式,降低上手难度,多种结构改进,助力寻找创新点!2.本篇文章对Pointnet++特征提取模块进行改进,加入GLSA,提升性能。3.专栏持续更新,紧随最新的研究内容。 目录 1.理论介绍 2.修改步骤 2.1 步骤一 2.2 步骤二 2.3 步骤三 1.理论介…

Java中==和equals()的区别

Java中和equals()的区别 1、操作符2、equals()方法3、总结 💖The Begin💖点点关注,收藏不迷路💖 在Java中,和equals()是两个常用的比较操作符和方法,但它们之间的用法和含义却有着本…

GPT-5即将登场:AI赋能下的未来工作与日常生活新图景

随着OpenAI首席技术官米拉穆拉蒂在近期采访中的明确表态,GPT-5的发布已不再是遥不可及的梦想,而是即将在一年半后与我们见面的现实。这一消息无疑在科技界乃至全社会引发了广泛关注和热烈讨论。从GPT-4到GPT-5的飞跃,被形容为从高中生到博士生…

03.C1W2.Sentiment Analysis with Naïve Bayes

目录 Probability and Bayes’ RuleIntroductionProbabilitiesProbability of the intersection Bayes’ RuleConditional ProbabilitiesBayes’ RuleQuiz: Bayes’ Rule Applied Nave Bayes IntroductionNave Bayes for Sentiment Analysis P ( w i ∣ c l a s s ) P(w_i|clas…

【笔记】太久不用redis忘记怎么后台登陆了

!首先启动虚拟机linux的centos7 2.启动finalshell 我的redis启动在根目录用 redis-server redis.conf --启动 systemctl status redis --查看redis状态 是否active redis-cli -h centos的ip地址 -p 你要用的redis端口号(默认为6379) -a 你…

JavaSE阶段面试题(一)

目录 1.int a 1, int b 1, Integer c 1, Integer d 1;四个区别和联系,以及c和d是同一个吗? 2.为什么重写HashCode必须重写euqals,两者之间的关系? 3.创建对象的方式有哪些 4.重写和重载的区别 5.抽象类和接口…

firewalld(6)自定义services、ipset

简介 在前面的文章中我们已经介绍了zone、rich rule 、--direct等功能和基本配置。在前面文章中,我们提到过firewalld内置了很多服务,可以通过firewall-cmd --get-services来查看服务,也可以通过配置文件查看这些服务/var/lib/firewalld/ser…

汽车IVI中控开发入门及进阶(三十三):i.MX linux开发之开发板

前言: 大部分物料/芯片,不管MCU 还是SoC,都会有原厂提供配套开发板,有这样一个使用原型,在遇到问题时或者进行开发时可以使用。 i.MX 8QuadXPlus MEK board: 1、要测试display显示器,可使用i.MX mini SAS将“LVDS1_CH0”端口连接到LVDS到HDMI适配器的cable。 2、要测试…

12. Revit API: Document、Element

12. Revit API: Document、Element 前言 还是先讲一下Document吧,不然Selection不好讲,那涉及到了挺多东西的,比元素(Element)和各类Filter,这些都与Document有关,所以先简单讲一下这个。 一、…

解码AWS EC2:塑造云服务器新标杆的五大核心优势

在云计算领域,亚马逊弹性计算云(Amazon Elastic Compute Cloud, 简称EC2)作为AWS的明星服务,凭借其卓越的性能、灵活性和广泛的生态系统,已经成为企业构建云上基础设施的首选。EC2不仅仅是一个简单的云服务器租用服务&…

【C++】多态详解

💗个人主页💗 ⭐个人专栏——C学习⭐ 💫点击关注🤩一起学习C语言💯💫 目录 一、多态概念 二、多态的定义及实现 1. 多态的构成条件 2. 虚函数 2.1 什么是虚函数 2.2 虚函数的重写 2.3 虚函数重写的两个…

【坚果识别】果实识别+图像识别系统+Python+计算机课设+人工智能课设+卷积算法

一、介绍 坚果识别系统,使用Python语言进行开发,通过TensorFlow搭建卷积神经网络算法模型,对10种坚果果实(‘杏仁’, ‘巴西坚果’, ‘腰果’, ‘椰子’, ‘榛子’, ‘夏威夷果’, ‘山核桃’, ‘松子’, ‘开心果’, ‘核桃’&a…

C++基础(三):C++入门(二)

上一篇博客我们正式进入C的学习,这一篇博客我们继续学习C入门的基础内容,一定要学好入门阶段的内容,这是后续学习C的基础,方便我们后续更加容易的理解C。 目录 一、内联函数 1.0 产生的原因 1.1 概念 1.2 特性 1.3 面试题 …

nohup java -jar 启动java项目

hi,我是程序员王也,一个资深Java开发工程师,平时十分热衷于技术副业变现和各种搞钱项目的程序员~,如果你也是,可以一起交流交流。 今天我们聊聊linux中运行java jar包的问题~ 理解nohup命令 nohup命令的基本概念 noh…

Flutter Navigator.popUntil 参数传递

Flutter 使用页面传参 以下是 在flutter 中页面传参的常用形式,都可以有有直接的传值参数提供。 Navigator.push #跳转到指定页面 压栈路由表Navigator.pushReplacement #关闭当前页面 跳转到指定页面压栈路由表Navigator.pus…

[单master节点k8s部署]16.监控系统构建(一)Prometheus介绍

prometheus prometheus是继k8s之后,第二个被托管到CNCF的项目,是一个开源的监控报警系统。 1.prometheus支持多维数据模型,每一个时间序列数据都由metric度量指标名称和它的标签label组成一组键值对。 2.Prometheus有自己的PromQL查询语言…

【刷题汇总--简写单词、dd爱框框、除2!】

C日常刷题积累 今日刷题汇总 - day0031、简写单词1.1、题目1.2、思路1.3、程序实现 - 思路11.4、程序实现 - 思路2(优化) 2、dd爱框框2.1、题目2.2、思路2.3、程序实现 - 蛮力法2.4、程序实现 - 同向双指针(滑动窗口) 3、除2!3.1、题目3.2、思路3.3、程序实现 4、题目链接 今日…