博客
关于我
spark安装一半,先记录下
阅读量:491 次
发布时间:2019-03-06

本文共 3298 字,大约阅读时间需要 10 分钟。

虚拟机网络配置

准备3台虚拟机

network settings 在每台虚拟机上进行设置

查看IP、网关、子网掩码

在 Windows 电脑上,运行 ipconfig 查看每台虚拟机的 IP 地址、子网掩码和网关。

查看虚拟机的虚拟网络接口

在每台虚拟机上运行 ifconfig 检查虚拟网络接口信息,默认情况下,网络接口名为 "ens33"。

设置静态 IP

使用以下命令设置静态 IP。

sudo gedit /etc/network/interfaces

在文件中添加以下内容:

# 主网络界面
auto ens33
iface ens33 inet static
address 192.168.31.180
gateway 192.168.31.1
netmask 255.255.255.0

重启网络

service networking restart

在运行完成后检查 ifconfig 查看每台虚拟机是否获得预期的静态 IP。

检查网络连通性

使用 ping 检查与外部网络是否能够通信。

ping 8.8.8.8

如信息无法访问外网,说明可能存在 DNS 配置问题,检查 /etc/resolv.conf 文件:

sudo gedit /etc/resolv.conf

添加以下 DNS 服务器地址:

nameserver 8.8.8.8
nameserver 8.8.4.4

配置 hosts 文件

虚拟机上

sudo gedit /etc/hosts

在文件末尾添加以下内容:

192.168.31.180 spark1
192.168.31.181 spark2
192.168.31.182 spark3

添加内容后,各虚拟机之间可以通过 ping 命令进行测试。

Windows 主机上

打开 C:\Windows\System32\drivers\etc\hosts 文件,按照上述格式添加相同内容。

关闭防火墙和安全状态

关闭防火墙

sudo ufw disable

关闭 Selinux(针对 RedHat/CentOS)

sudo setenforce 0

(备注:由于安装的是 Ubuntu,可能这步骤可以跳过。)

安装 secureCRT 并支持远程连接

安装 SSH 客户端

确保所有虚拟机上都有最新的 SSH 客户端支持。

sudo apt-get install openssh-client

默认情况下,SSH 支持 22 端口。

安装 winscp 并支持文件复制

上传文件权限设置

若是新安装的虚拟机通常会使用新的 root 密码。

设置 root 密码

sudo passwd root

配置 SSH 访问权限

sudo gedit /etc/ssh/sshd_config

在文件末尾添加以下修改:

PermitRootLogin yes

并确保设置的 root 密码已知。

上传文件到虚拟机

在 winscp 中添加各虚拟机的 SSH 连接,并上传所需文件。

安装 telnet 协议

sudo apt-get install telnet

虚拟机之间文件共享

使用 scp 命令进行文件传输和共享,如:

scp filename.txt erin@spark2:/path/to/destination

公钥 免密登录

生成 SSH 认证密钥

在所有虚拟机上生成私钥文件和公钥文件:

ssh-keygen -t rsa

默认生成的文件位于 ~/.ssh/id_rsa~/.ssh/id_rsa.pub

配置服务器受信公钥文件

将每台虚拟机的公钥添加到其他虚拟机的 ~/.ssh/authorized_keys 文件中。

在主机上测试免密登录:

ssh spark1

如需远程登录到另一台机器,完成公钥传递:

ssh-copy-id -i 
username@other-host

安装 Hadoop 集群

安装 Java 开发环境

由于 Hadoop 对 Java 环境有要求,我们需要安装最新的 Java JDK。

下载并上传 JDK

从 UB部门下载 JDK 软件包,通过 winscp 上传到 /usr/local 文件夹中,因该目录通常只有 root 具有读写权限。

解压 JDK

sudo tar -zxvfjdk-
.tar.gz -C /usr/local/jvm/

配置环境变量

sudo gedit /etc/profile

在文件末尾添加以下内容:

export JAVA_HOME=/usr/local/jvm/jdk-
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=/.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=/usr/local/jvm/jdk-
/bin:$PATH

验证 Java 环境

java -version

配置 SSH 集群 免密登录

基于-connected machines

在尚未生成公钥的环境中,选择一个主机进行配置,然后将该主机的公钥添加到其他虚拟机的 authorized_keys 文件中。

使用 SSH 无密码登录

ssh spark2

生成各虚拟机的密钥文件

在每台虚拟机上进行密钥生成并发布:

cd ~/.ssh
ssh-keygen -t rsa

机器间互相登录

ssh spark1

安装 Hadoop 集群

使用 winscp 安装 Hadoop

将解压后的 Hadoop 软件包通过 winscp 上传到对应的路径,并解压。

解压 Hadoop

sudo tar -zxvf hadoop-2.7.7.tar.gz
sudo mv hadoop-2.7.7 hadoop

配置 Hadoop 环境变量

sudo gedit /etc/profile

在文件末尾添加:

export HADOOP_HOME=/usr/local/hadoop
export PATH=/usr/local/hadoop/bin:/usr/local/hadoop/sbin:$PATH

启动 Hadoop 集群

进行集群格式化和启动操作:

hdfs namenode -format
start-dfs.sh
start-yarn.sh

通过 JPS 检查各个进程是否正常运行。

安装 Hive

为支持 spark sql,需要在 Hive 服务器上配置合适的元数据文件。

如使用 HortonWorks 的 Hive Setup,按照以下步骤进行:

配置 Hive

sudo mkdir -p /usr/local/hive
sudo chown -R hive /usr/local/hive

创建元数据目录

创建 metastore 目录及其数据库。

配置 Hive 的数据库和权限

按照教程中的步骤进行数据库创建和表结构初始化。

安装 Kafka

安装和配置 Zookeeper

为 Kafka 集群配置 Zookeeper,普通服务器运行:

zookeeper-server-start -Dzookeeperusterityview=true

在生产环境中,应配置分区和副本。

配置 Kafka 生产者和消费者

在 each of your machines 上配置 Kafka 运行配置文件:

按需安装服务

根据实际应用场景选择 Kafka 的安装模式(单机模式、分布式模式等)。

系统优化

系统资源管理

交换分区

默认情况下,swap 空间足够应对内存不足。

用户管理

创建用户和组,并适当设置访问权限,避免文件名冲突。

备份和恢复

定期进行系统备份,如使用 rsync 对应用程序和数据库的数据进行备份。

"""

额外附录

额外的步骤和配置文件示例在文档的附录部分。

转载地址:http://neldz.baihongyu.com/

你可能感兴趣的文章
Objective-C实现double linear search 双线性搜索算法(附完整源码)
查看>>
Objective-C实现DoublyLinkedList双链表的算法(附完整源码)
查看>>
Objective-C实现DoublyLinkedList双链表算法(附完整源码)
查看>>
Objective-C实现DPLL(davisb putnamb logemannb loveland)算法(附完整源码)
查看>>
Objective-C实现Edmonds-Karp算法(附完整源码)
查看>>
Objective-C实现EEMD算法(附完整源码)
查看>>
Objective-C实现EM算法(附完整源码)
查看>>
Objective-C实现EM算法(附完整源码)
查看>>
Objective-C实现entropy熵算法(附完整源码)
查看>>
Objective-C实现euclidean distance欧式距离算法(附完整源码)
查看>>
Objective-C实现Euclidean GCD欧几里得最大公约数算法(附完整源码)
查看>>
Objective-C实现euclideanDistance欧氏距离算法(附完整源码)
查看>>
Objective-C实现euler method欧拉法算法(附完整源码)
查看>>
Objective-C实现euler modified变形欧拉法算法(附完整源码)
查看>>
Objective-C实现eulerianPath欧拉路径算法(附完整源码)
查看>>
Objective-C实现Eulers TotientFunction欧拉函数算法(附完整源码)
查看>>
Objective-C实现EulersTotient欧拉方程算法(附完整源码)
查看>>
Objective-C实现eval函数功能(附完整源码)
查看>>
Objective-C实现even_tree偶数树算法(附完整源码)
查看>>
Objective-C实现Exceeding words超词(差距是ascii码的距离) 算法(附完整源码)
查看>>