vim /etc/hostname # 该命令需要重启后生效# 还有另外一种方式,执行该命令后立即生效,只不过需要重启Xshell连接hostnamectl set-hostname node1.ambari.com
vim /etc/hosts
注:主机名修改后需要重启机器才可彻底生效。如果用户不想重启,可使用命令 hostnamectlset-hostname node1.ambari.com
来修改主机名,可使用命令 hostname
来检验主机名是否修改成功。这种修改方式只是暂时的,待机器重启后就恢复原样 localhost
了。
# 查看防火墙状态systemctl status firewalld# 查看开机是否启动防火墙服务systemctl is-enabled firewalld# 关闭防火墙systemctl stop firewalldsystemctl disable firewalld# 再次查看防火墙状态和开机防火墙是否启动systemctl status firewalldsystemctl is-enabled firewalld
# 永久性关闭selinux(重启服务器生效)sed -i 's/SELINUX=enforcing/SELINUX =disabled/' /etc/selinux/config# 临时关闭selinux(立即生效,重启服务器失效)setenforce 0# 查看selinux状态getenforce# disabled为永久关闭,permissive为临时关闭,enforcing为开启
各个主机均执行以下操作:
## 生成密钥对ssh-keygen -t rsa ## 一路回车即可## 进入.ssh目录,如果目录不存在则创建cd ~/.ssh## 将公钥导入至authorized_keyscat id_rsa.pub >> authorized_keys## 修改文件权限chmod 700 ~/.sshchmod 600 authorized_keys
在node1.ambari.com上执行:
## 配置主从互相免密登陆[root@node1 ~]# cat ~/.ssh/id_rsa.pub | ssh root@node2.ambari.com 'cat - >> ~/.ssh/authorized_keys'[root@node1 ~]# cat ~/.ssh/id_rsa.pub | ssh root@node3.ambari.com 'cat - >> ~/.ssh/authorized_keys'ssh node2.ambari.com ssh node3.ambari.com # 验证主机点是否可以免密登陆从节点,执行exit命令退出即可。
备注:要想实现多主机互相免密,可参考文章:Linux多台主机互相免密登陆
下载链接: https://pan.baidu.com/s/1rlqZejpZZqio9RPzgnGOEg 提取码: j47n ;内有 jdk-8u151-linux-x64.tar.gz
和 mysql-connector-java.jar
文件。
# 编辑/etc/profile,文末插入以下内容:# set javaexport JAVA_HOME=/usr/java/jdk1.8.0_151export PATH=$JAVA_HOME/bin:$PATH
mysql5.7 centos7:
https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
mysql5.7 centos6:
https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm
mysql5.6 centos7:
https://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
mysql5.6 centos6:
https://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
rpm -qa | grep mysql# 删除相关rpm包rpm -ev <rpm包名> --nodeps
# 下载mysql5.7的rpm包wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm# 安装第一步下载的rpm文件,安装成功后/etc/yum.repos.d/目录下会增加两个文件yum -y install mysql57-community-release-el7-11.noarch.rpm# 查看mysql57的安装源是否可用,如不可用请自行修改配置文件(/etc/yum.repos.d/mysql-community.repo)使mysql57下面的enable=1# 若有mysql其它版本的安装源可用,也请自行修改配置文件使其enable=0yum repolist enabled | grep mysql
yum install mysql-community-server
# 启动mysql服务service mysqld start# 查看root密码grep "password" /var/log/mysqld.log# 登陆mysqlmysql -u root -pEnter password: # 为了可以设置简单密码set global validate_password_policy=0;set global validate_password_length=4;# 立即修改密码,执行其他操作报错:SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');# 我们创建密码为root123
mysql -uroot -proot123CREATE USER 'ambari'@'%' IDENTIFIED BY 'ambari';GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'%';CREATE USER 'ambari'@'localhost' IDENTIFIED BY 'ambari';GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'localhost';CREATE USER 'ambari'@'node1.ambari.com' IDENTIFIED BY 'ambari';GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'node1.ambari.com'; //本地主机名FLUSH PRIVILEGES;
注:删除用户命令:
Delete FROM user Where User='your_user' and Host='your_host';FLUSH PRIVILEGES;
mysql -uambari -pambariCREATE DATABASE ambari;exit;
自己写了一个脚本,前提条件是获取 /etc/hosts
文件内的主机ip
脚本如下:
#!/usr/bin/env bashhost_list=$(sed -n '3,$p' /etc/hosts | awk '{print $1}')master_hostip=$(sed -n 3p /etc/hosts | awk '{print $1}')ips_no_host=$(sed -n '4,$p' /etc/hosts | awk '{print $1}')# 遍历所有节点for host in $host_listdo # 设置时区 ssh $host ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 同步硬件时间 ssh $host hwclock --systohc # 开机自启动 ssh $host echo service ntpd restart >> /etc/rc.d/rc.local ssh $host echo "hwclock --systohc" >> /etc/rc.d/rc.local ssh $host chmod +x /etc/rc.d/rc.local # 安装ntp服务 ssh $host yum install -y -q ntpdone# 主节点操作,修改配置文件sed -i -e '21 s/^/# /' -i -e '22 s/^/# /' -i -e '23 s/^/# /' -i -e '24 s/^/# /' /etc/ntp.confecho server 127.127.1.0 >> /etc/ntp.confecho fudge 127.127.1.0 stratum 10 >> /etc/ntp.confservice ntpd start# 从节点操作,开启ntp服务,使用ntpdate命令进行时钟同步for slave in $ips_no_hostdo ssh $slave service ntpd start ssh $slave ntpdate -u $master_hostipdone
# 安装httpdyum -y install httpd.x86_64systemctl enable httpd.servicesystemctl start httpd.service# 安装wgetyum -y install wget
# 将tar包下载到/var/www/htmlcd /var/www/htmlwget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.7.1.0/ambari-2.7.1.0-centos7.tar.gzwget http://public-repo-1.hortonworks.com/HDP/centos7/3.x/updates/3.0.1.0/HDP-3.0.1.0-centos7-rpm.tar.gzwget http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.22/repos/centos7/HDP-UTILS-1.1.0.22-centos7.tar.gz# 解压上面三个包tar zxvf ambari-2.7.1.0-centos7.tar.gztar zxvf HDP-3.0.1.0-centos7-rpm.tar.gztar zxvf HDP-UTILS-1.1.0.22-centos7.tar.gz
[ambari]name=ambaribaseurl=http://node1.ambari.com/CentOS-7/ambari-2.6.0.0enabled=1gpgcheck=0
[HDP]name=HDPbaseurl=http://node1.ambari.com/CentOS-7/HDPpath=/enabled=1gpgcheck=0
[HDP-UTILS]name=HDP-UTILSbaseurl=http://liuyzh1.xdata/CentOS-7/HDP-UTILSpath=/enabled=1gpgcheck=0
将以上文件放入 /etc/yum.repos.d/
目录下。
yum -y install ambari-server
echo server.jdbc.driver.path=/usr/share/java/mysql-connector-java.jar >> /etc/ambari-server/conf/ambari.properties
ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar
mysql -uambari -pambariuse ambari;source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
ambari-server start
登陆浏览器访问: http://192.168.162.41:8080/,利用界面部署集群。
默认登陆账号/密码为:admin/admin。
更多精彩内容,请关注微信公众号,欢迎您的关注
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。