ambari server及元数据库(postgreSQL)迁移

一、停止使用postgreSQL的组件

1.1停止Hive

1.2停止ranger

二、停止ambari-server服务

bash 复制代码
ambari-server status
bash 复制代码
ambari-server stop

备份配置文件目录

bash 复制代码
tar -czvf /tmp/ambari_server_conf_backup.tar.gz /etc/ambari-server/conf

备份密钥目录

bash 复制代码
tar -czvf /tmp/ambari_server_keys_backup.tar.gz /var/lib/ambari-server/keys

记录当前数据库连接信息

bash 复制代码
grep "jdbc" /etc/ambari-server/conf/ambari.properties

三、备份数据库(postgreSQL)

bash 复制代码
su - postgres
cd /var/lib/pgsql/backups/
ambari
pg_dump -U ambari -h ambari_server_ip_address -d ambari -F c -b -v -f ambari_backup.dump
pg_dump -U ambari -h ambari_server_ip_address -d ambari -F p -b -v -f ambari_backup.sql
hive
pg_dump -U hive -h ambari_server_ip_address -d hive -F c -b -v -f hive_backup.dumppg_dump -U hive -h ambari_server_ip_address -d hive -F p -b -v -f hive_backup.sql
ranger
pg_dump -U ranger -h ambari_server_ip_address -d ranger -F c -b -v -f ranger_backup.dump
pg_dump -U ranger -h ambari_server_ip_address -d ranger -F p -b -v -f ranger_backup.sql
rangerkms
pg_dump -U rangerkms -h ambari_server_ip_address -d rangerkms -F c -b -v -f rangerkms_backup.dump
pg_dump -U rangerkms -h ambari_server_ip_address -d rangerkms -F p -b -v -f rangerkms_backup.sql

全局角色信息

bash 复制代码
pg_dumpall -U postgres --globals-only -f postgres_globals.sql

四、目标环境准备

4.1安装postgresql

bash 复制代码
yum install postgresql-server.x86_64
/usr/bin/postgresql-setup --initdb

配置postgresql

bash 复制代码
vim /var/lib/pgsql/data/postgresql.conf
bash 复制代码
listen_addresses = '*'
max_connections = 1000
bash 复制代码
vim /var/lib/pgsql/data/pg_hba.conf
bash 复制代码
host ambari ambari 0.0.0.0/0 md5
host hive hive 0.0.0.0/0 md5
host ranger ranger 0.0.0.0/0 md5
host rangerkms rangerkms 0.0.0.0/0 md5

重启postgreSQL

bash 复制代码
systemctl restart postgresql.service

创建数据库及用户

导入全局角色

bash 复制代码
su - postgres
psql -U postgres -f /var/lib/pgsql/backups/postgres_globals.sql

角色postgres导入忽略报错

创建数据库

bash 复制代码
 psql
sql 复制代码
CREATE DATABASE ambari OWNER ambari;
CREATE DATABASE hive OWNER hive;
CREATE DATABASE ranger OWNER ranger;
CREATE DATABASE rangerkms OWNER rangerkms;

授予权限

sql 复制代码
GRANT ALL PRIVILEGES ON DATABASE ambari TO ambari;
GRANT ALL PRIVILEGES ON DATABASE hive TO hive;
GRANT ALL PRIVILEGES ON DATABASE ranger TO ranger;
GRANT ALL PRIVILEGES ON DATABASE rangerkms TO rangerkms;

4.2导入数据库

导入ambari

bash 复制代码
psql -U ambari -d ambari -h new_ambari_server_ip_address -f /var/lib/pgsql/backups/ambari_backup.sql
psql -U hive -d hive -h new_ambari_server_ip_address -f /var/lib/pgsql/backups/hive_backup.sql
psql -U ranger -d ranger -h new_ambari_server_ip_address -f /var/lib/pgsql/backups/ranger_backup.sql
psql -U rangerkms -d rangerkms -h new_ambari_server_ip_address -f /var/lib/pgsql/backups/rangerkms_backup.sql

4.3安装ambari-server

bash 复制代码
yum install ambari-server

初始化ambari

bash 复制代码
ambari-server setup
bash 复制代码
scp old_ambari_server:/var/lib/ambari-server/resources/postgresql-42.7.3.jar new_ambari_server:/tmp/
ambari-server setup --jdbc-db=postgres --jdbc-driver=/tmp/postgresql-42.7.3.jar

4.4验证导入结果

bash 复制代码
psql -U ambari -d ambari  -h new_ambari_server_ip_address -c "SELECT COUNT(*) FROM clusters;"
bash 复制代码
psql -U ambari -d ambari -h new_ambari_server_ip_address -c "SELECT COUNT(*) FROM hosts;"

五、切换ambari server

启动新的ambari-server节点:

bash 复制代码
ambari-server start

修改所有agent的配置项/etc/ambari-agent/conf/ambari-agent.ini的hostname=新的server hostname

bash 复制代码
ansible -i /home/security/hosts agent -b -m shell -a "cp /etc/ambari-agent/conf/ambari-agent.ini /etc/ambari-agent/conf/ambari-agent.ini.bak"
ansible -i /home/security/hosts agent -b -m shell -a "sed -i 's/^hostname=.*/hostname=新的AmbariServer地址/' /etc/ambari-agent/conf/ambari-agent.ini"
ansible -i /home/security/hosts agent -b -m shell -a "ambari-agent restart "

六、登录ambari修改组件配置

6.1修改Hive配置

6.2修改ranger配置

6.3重启所需的服务

相关推荐
Volunteer Technology16 小时前
Hadoop NameNode HA
大数据·hadoop·分布式
大大大大晴天16 小时前
Flink集群跨机房容灾:HDFS 快照权限踩坑与实践
hadoop·flink
Volunteer Technology17 小时前
Hadoop Federation 联邦
大数据·hadoop·分布式
Volunteer Technology2 天前
Hadoop之HDFS集群搭建与操作(二)
大数据·hadoop·hdfs
Volunteer Technology2 天前
Hadoop之HDFS shell操作篇
大数据·hadoop·hdfs
青春万岁!!2 天前
hive 动态分区参数设置错误导致数据不稳定
大数据·数据仓库·hive·hadoop
大大大大晴天️2 天前
浅聊Hadoop集群的主流安全方案(LDAP+Kerberos+Ranger)
大数据·hadoop·安全
roman_日积跬步-终至千里3 天前
为什么 Hive 无法通过同步 JDBC 导出百万级数据?
数据仓库·hive·hadoop
WL_Aurora3 天前
HDFS基础编程常用命令
大数据·hadoop·hdfs
大大大大晴天3 天前
浅聊Hadoop集群的主流安全方案(LDAP+Kerberos+Ranger)
大数据·hadoop