搭建一个大数据集群.docx
### 搭建一个大数据集群的关键知识点 #### 一、基础环境配置 ##### 1. 网络配置 - **动态分配IP**:适用于测试环境或临时搭建。 - `TYPE=Ethernet`:指定网卡类型为以太网。 - `PROXY_METHOD=none`:禁用代理方法。 - `BROWSER_ONLY=no`:不只在浏览器中使用代理。 - `BOOTPROTO=dhcp`:使用DHCP自动获取IP地址。 - `DEFROUTE=yes`:允许默认路由。 - `IPV4_FAILURE_FATAL=no`:IPv4连接失败时不会导致致命错误。 - `IPV6INIT=yes`:启用IPv6初始化。 - `IPV6_AUTOCONF=yes`:自动配置IPv6。 - `IPV6_DEFROUTE=yes`:允许IPv6默认路由。 - `IPV6_FAILURE_FATAL=no`:IPv6连接失败时不会导致致命错误。 - `NAME=enp0s3`:指定网卡名称。 - `UUID=<UUID>`:唯一标识符,由系统自动生成。 - `DEVICE=enp0s3`:指定设备名。 - `ONBOOT=yes`:开机自动启动网卡。 - **静态分配IP**:适合生产环境或需要固定IP的情况。 - `IPADDR=<IP地址>`:手动设置IP地址。 - `PREFIX=<子网掩码>`:设置子网掩码。 - `GATEWAY=<网关地址>`:设置网关地址。 - `DNS1=<首选DNS服务器地址>`:设置首选DNS服务器。 - `DNS2=<备用DNS服务器地址>`:设置备用DNS服务器。 - **重启网卡**:配置完成后,需要重启网卡以应用新的设置。 ```bash # systemctl restart network ``` ##### 2. 关闭selinux - **关闭SELinux**:在生产环境中,SELinux可能会对某些服务造成不必要的限制。 ```bash # sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config # setenforce 0 ``` ##### 3. 关闭防火墙 - **关闭防火墙**:为避免防火墙阻止必要的端口和服务。 ```bash # systemctl stop firewalld # systemctl disable firewalld ``` ##### 4. hostname相关设置 - **修改hostname**:便于管理和识别。 ```bash # hostnamectl set-hostname <新主机名> ``` - **设置hosts使hostname与IP对应**:确保所有服务器能正确解析彼此的hostname。 ```bash # vi /etc/hosts ``` 添加相应的IP和hostname映射。 ##### 5. 添加hadoop用户 - **创建hadoop用户**:用于运行Hadoop服务。 ```bash # useradd hadoop ``` ##### 6. 添加CentOS8阿里云mirror - **添加阿里云镜像源**:提高下载速度。 ```bash # vi /etc/yum.repos.d/CentOS-Media.repo ``` 编辑或创建新的repo文件,添加阿里云镜像信息。 ##### 7. 升级系统内核并开启BBR - **查看当前系统内核版本**:确认当前使用的内核版本。 ```bash # uname -r ``` - **启用ELRepo仓库**:提供额外的内核选择。 ```bash # rpm -Uvh https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm # rpm -Uvh https://mirrors.aliyun.com/elrepo/el8/elrepo-release-8.noarch.rpm ``` - **查看可用的系统内核包**:选择合适的内核版本。 ```bash # yum list available | grep kernel ``` - **安装最新版本内核**:更新内核版本。 ```bash # yum install -y kernel-ml ``` - **重启验证**:重启系统以加载新内核。 ```bash # reboot ``` - **删除旧内核**:清理不再需要的内核。 ```bash # yum remove kernel-<旧内核版本> ``` - **开启BBR**:提高网络传输效率。 ```bash # sysctl net.core.default_qdisc=fq # sysctl net.ipv4.tcp_congestion_control=bbr ``` 并将这两个参数添加到`/etc/sysctl.conf`中以永久生效。 ##### 8. 升级系统&安装所需应用 - **升级系统**:确保系统处于最新状态。 ```bash # yum update -y ``` - **安装所需应用**:根据实际需求安装必要的应用和服务。 ##### 9. 配置时间同步软件Chrony - **编辑配置文件**:确保所有节点的时间保持一致。 ```bash # vi /etc/chrony.conf ``` 添加或修改时间服务器。 - **重启chronyd服务**:应用新的配置。 ```bash # systemctl restart chronyd ``` - **chronyd服务命令**:查看状态和服务控制。 ```bash # chronyc tracking # chronyc sources # chronyc sourcestats ``` #### 二、安装和配置Hadoop ##### 11. 安装并配置Hadoop - **下载Hadoop-3.2.1**:选择合适的版本进行下载。 ```bash # wget https://mirrors.aliyun.com/apache/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz ``` - **配置hadoop环境变量**:方便后续使用。 ```bash # export HADOOP_HOME=/usr/local/hadoop # export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin ``` - **配置Hadoop**:包括`hadoop-env.sh`、`core-site.xml`、`hdfs-site.xml`、`mapred-site.xml`、`yarn-site.xml`等文件。 - `hadoop-env.sh`:设置JDK路径等。 - `core-site.xml`:配置HDFS的访问地址、临时目录等。 - `hdfs-site.xml`:设置NameNode和DataNode的相关参数。 - `mapred-site.xml`:配置MapReduce的框架类型等。 - `yarn-site.xml`:配置YARN的ResourceManager、NodeManager等参数。 ##### 12. 配置免密码登录 - **生成验证密钥**:用于SSH免密码登录。 ```bash $ ssh-keygen -t rsa -P "" ``` - **从服务器验证密钥发送给主服务器**:实现服务器之间的信任关系。 ```bash $ ssh-copy-id root@<主服务器IP> ``` - **主服务器把密钥分发给从服务器**:确保主服务器能够无密码登录从服务器。 ```bash $ ssh-copy-id root@<从服务器IP> ``` #### 三、配置Zookeeper服务器 - **下载安装Zookeeper-3.5.6**:安装Zookeeper作为协调服务。 ```bash # wget https://mirrors.aliyun.com/apache/zookeeper/zookeeper-3.5.6/zookeeper-3.5.6.tar.gz ``` - **配置zookeeper环境变量**:方便后续使用。 ```bash # export ZOOKEEPER_HOME=/usr/local/zookeeper # export PATH=$PATH:$ZOOKEEPER_HOME/bin ``` - **配置zookeeper**:设置Zookeeper的相关配置,如`myid`文件和配置文件`zoo.cfg`。 ```bash # vi dataDir/myid ``` 在其中写入该服务器的序号(0-2)。 - **重启Zookeeper服务**:确保服务正常启动。 ```bash # zkServer.sh start ``` #### 四、启动与日常操作 - **启动服务**:依次启动Zookeeper、HDFS、YARN以及MapReduce历史服务器。 ```bash # zkServer.sh start # hdfs --daemon start namenode # yarn --daemon start resourcemanager # mapred --daemon start historyserver ``` - **查看各主节点的状态**:通过命令行或Web界面检查各服务的状态。 ```bash # hdfs dfsadmin -report # yarn node -list ``` - **Web界面进行查看状态**:通过Hadoop提供的Web界面检查各个组件的状态。 - **HDFS NameNode**:http://<NameNode IP>:9870 - **DataNode节点数据**:http://<DataNode IP>:9870 - **YARN ResourceManager**:http://<ResourceManager IP>:8088 - **MapReduce历史服务器**:http://<History Server IP>:19888 - **停止服务**:依次停止HDFS、YARN和Zookeeper服务。 ```bash # hdfs --daemon stop datanode # hdfs --daemon stop namenode # yarn --daemon stop nodemanager # yarn --daemon stop resourcemanager # zkServer.sh stop ``` 以上步骤详细介绍了如何搭建一个完整的Hadoop集群,包括网络配置、操作系统优化、Hadoop安装与配置、Zookeeper安装与配置、以及日常管理和服务启动与停止。通过这些步骤,可以成功构建出高效稳定的大数据处理平台。













- 粉丝: 1
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 互联网+背景下高职语文翻转课堂教学模式构建策略.docx
- XXXX网络统一身份认证计费管理系统建设方案综合样本.doc
- HarmonyOS传感器和媒体管理.pdf
- 2019年网络推广个人年度总结.doc
- 《C语言程序设计》课后习题答案谭浩强(1).docx
- 基于PLC的自动化立体仓库设计.doc
- Windows7系统安装时出现假死机问题3种解决方案(1).doc
- 2023年计算机试卷及答案资料.doc
- 2020年电大计算机网络(本科)期末必备复习题及答案资料重要知识点.doc
- 变电站综合自动化.pptx
- 2023年7月高等教育自学考试计算机网络原理试题.doc
- NVR的SKD二次开发接口文档.doc
- 办公楼高清网络视频监控系统解决方案(27页).doc
- (完整版)基于PLC的物料分拣系统设计.doc
- GB_T_36316_2018_电子商务平台数据开放_第三方软件提供商评价准则.pdf
- 口播软件推广方案.docx


