最后的话
最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!
资料预览
给大家整理的视频资料:
给大家整理的电子书资料:
如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
3.1 解压
# 解压安装包并移动到/usr/local/下
tar -zxvf hadoop-3.1.3.tar.gz
mv ./hadoop-3.1.3 /usr/local/
3.2 配置环境变量
配置环境变量的方法比较多,这里统一将环境变量放在 /etc/profile.d/my_env.sh 内。
# 配置环境变量:
vim /etc/profile.d/my_env.sh
# 添加 Hadoop的PATH要配置上bin和sbin
export HADOOP\_HOME=/usr/local/hadoop-3.1.3
export PATH=$PATH:$HADOOP\_HOME/bin
export PATH=$PATH:$HADOOP\_HOME/sbin
# 使得配置的环境变量立即生效:
# 首先是要赋权限【只操作一次就行】
chmod +x /etc/profile.d/my_env.sh
source /etc/profile.d/my_env.sh
3.3 修改Hadoop配置
进入 ${HADOOP_HOME}/etc/hadoop/ 目录下,修改以下配置:
- hadoop-env.sh 【JDK安装路径配置】
# 查询jdk路径
[root@tcloud ~]# echo $JAVA\_HOME
/usr/local/java
[root@tcloud ~]# vim /usr/local/hadoop-3.1.3/etc/hadoop/hadoop-env.sh
# 添加jdk路径
export JAVA\_HOME=/usr/local/java
- core-site.xml
[root@tcloud ~]# vim /usr/local/hadoop-3.1.3/etc/hadoop/core-site.xml
<configuration>
<!--指定 namenode 的 hdfs 协议文件系统的通信地址-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://tcloud:8020</value>
</property>
<!--指定 hadoop 存储临时文件的目录-->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
</property>
<!-- 设置用户及代理 -->
<property>
<name>hadoop.http.staticuser.user</name>
<value>root</value>
</property>
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
<!-- 不开启权限检查 -->
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
</configuration>
- hdfs-site.xml
[root@tcloud ~]# vim /usr/local/hadoop-3.1.3/etc/hadoop/hdfs-site.xml
<configuration>
<!--由于我们这里搭建是单机版本,所以指定 dfs 的副本系数为 1-->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<!-- 开启webhdfs -->
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<!-- 配置namenode和datanode -->
<property>
<name>dfs.namenode.http-address</name>
<value>tcloud:9870</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>tcloud:9868</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///${hadoop.tmp.dir}/dfs/name1,file:///${hadoop.tmp.dir}/dfs/name2</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///${hadoop.tmp.dir}/dfs/data1,file:///${hadoop.tmp.dir}/dfs/data2</value>
</property>
</configuration>
- slaves 特别注意:hadoop3.0 以后 slaves 变为 workers。
[root@tcloud ~]# vim /usr/local/hadoop-3.1.3/etc/hadoop/workers
# 配置所有从属节点的主机名或 IP 地址,由于是单机版本,所以指定本机即可【原文件配置的是localhost】:
tcloud
3.4 关闭防火墙
不关闭防火墙可能导致无法访问 Hadoop 的 Web UI 界面【使用云服务器还需要在安全组内开启端口】:
# 查看防火墙状态
[root@tcloud hadoop]# firewall-cmd --state
not running
# 如果是开启状态,关闭防火墙:
[root@tcloud hadoop]# systemctl stop firewalld.service
3.5 初始化
第一次启动 Hadoop 时需要进行初始化,进入 ${HADOOP_HOME}/bin/ 目录下,执行以下命令:
[root@tcloud bin]# ./hdfs namenode -format
3.6 修改启动和停止shell脚本
[root@tcloud hadoop]# vim /usr/local/hadoop-3.1.3/sbin/start-dfs.sh
[root@tcloud hadoop]# vim /usr/local/hadoop-3.1.3/sbin/stop-dfs.sh
start-dfs.sh,stop-dfs.sh 这两个文件顶部添加以下参数:
HDFS\_DATANODE\_USER=root
HDFS\_DATANODE\_SECURE\_USER=hdfs
HDFS\_NAMENODE\_USER=root
HDFS\_SECONDARYNAMENODE\_USER=root
3.7 启动HDFS
进入 ${HADOOP_HOME}/sbin/ 目录下,启动 HDFS:
[root@tcloud sbin]# ./start-dfs.sh
3.8 验证是否启动成功
方式一:执行 jps 查看 NameNode、SecondaryNameNode 和 DataNode 服务是否已经启动:
[root@tcloud ~]# jps
27346 DataNode
27603 SecondaryNameNode
29398 Jps
27198 NameNode
方式二:查看 Web UI 界面
根据配置的地址进行访问:
<property>
<name>dfs.namenode.http-address</name>
<value>tcloud:9870</value>
</property>
至此,Hadoop单机版安装部署成功。
为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。
本份面试集锦涵盖了
- 174 道运维工程师面试题
- 128道k8s面试题
- 108道shell脚本面试题
- 200道Linux面试题
- 51道docker面试题
- 35道Jenkis面试题
- 78道MongoDB面试题
- 17道ansible面试题
- 60道dubbo面试题
- 53道kafka面试
- 18道mysql面试题
- 40道nginx面试题
- 77道redis面试题
- 28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高
- 174道运维工程师面试题
1、什么是运维?
2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
3、现在给你三百台服务器,你怎么对他们进行管理?
4、简述raid0 raid1raid5二种工作模式的工作原理及特点
5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!