ambari配置注意事项

host文件及主机名配置

1、host文件配置

如果有三台服务器
192.168.0.51 (master)
192.168.0.52 (slave1)
192.168.0.101 (slave2)

[root@ecs-c562-0001 ~]# cat /etc/hosts
192.168.0.51 ecs-c562-0001 ecs-c562-0001.localdomain
192.168.0.52 ecs-c562-0002 ecs-c562-0002.localdomain
192.168.0.101 ecs-c562-0003 ecs-c562-0003.localdomain
::1	localhost	localhost.localdomain	localhost6	localhost6.localdomain6
127.0.0.1	localhost	localhost.localdomain	localhost4	localhost4.localdomain4
127.0.0.1	ecs-c562-0001	ecs-c562-0001

2、hostname主机名配置

修改各主分机的主机名,以master为例:

[root@ecs-c562-0001 ~]# cat /etc/hostname 
ecs-c562-0001.localdomain
[root@ecs-c562-0001 ~]# hostname
ecs-c562-0001.localdomain
[root@ecs-c562-0001 ~]# hostname -f
ecs-c562-0001

ambari配置“Confirm Hosts”出现错误解决

1、Failed to connect to https://xxxx:8440/ca due to [Errno 111] Connection 类似错误解决

一般来说 xxxx可能是localhost,完整错误有可能是这样的:

Failed to connect to https://localhost:8440/ca due to [Errno 111] Connection refused 

解决办法:

例:如果是ecs-c562-0002.localdomain出错,则在当前分机上修改ambari-agent.ini文件的hostname为master的主机名ecs-c562-0001.localdomain(对应的哪个节点报错对应改哪一个节点)
vim /etc/ambari-agent/conf/ambari-agent.ini

[server]
hostname=ecs-c562-0001.localdomain #把这个hostname修改为master的主机名
url_port=8440
secured_url_port=8441
connect_retry_delay=10
max_reconnect_retry_delay=30

修改完成后 ambari-agent restart 重启试试,应该可以。

2、Ambari Agent host cannot reach Ambari Server 'localhost:8080'.

从ambari-server传送到客户端的setupAgent.py脚本的main函数中的参数设置不对,直接在master节点上修改setupAgent.py文件的:
vim /usr/lib/ambari-server/lib/ambari_server/setupAgent.py
找到

  expected_hostname = args[0]
  passPhrase = args[1]
  #hostname = args[2]
  hostname = '192.168.0.51' #我这里直接是改成主机的IP了,也可以改成master的主机名试试
  user_run_as = args[3]
  projectVersion = ""
  server_port = 8080

然后重新执行一遍Confirm Hosts试试。

3、does not match expected ambari server hostname 错误提示解决

vm-100-5-centos主机名示例:
当报

INFO 2020-12-26 13:04:21,057 main.py:481 - Connecting to Ambari server at https://vm-100-2-centos:8440 (192.168.100.2)
INFO 2020-12-26 13:04:21,057 NetUtil.py:61 - Connecting to https://vm-100-2-centos:8440/ca
ERROR 2020-12-26 12:43:48,835 main.py:269 - Ambari agent machine hostname (vm-100-5-centos) does not match expected ambari server hostname (vm-100-5-centos.localdomain). Aborting registration. Please check hostname, hostname -f and /etc/hosts file to confirm your hostname is setup correctly

错误,在确保/etc/hostshostname没有问题的前提下,telnet vm-100-2-centos 8440,发现不通。
因为机器用的是腾讯云,除了本地机器防火墙关外,还要在腾讯云控制台上设置安全组,开放需要的端口。这样一般就可以得到解决。

3、hive报错The MySQL JDBC driver has not been set ……ambari-server setup --jdbc-db=mysql --jdbc-driver=/path/to/jdbc_driver

报错如下:

2020-12-28 20:17:49,162 - Check db_connection_check was unsuccessful. Exit code: 1. Message: The MySQL JDBC driver has not been set. Please ensure that you have executed 'ambari-server setup --jdbc-db=mysql --jdbc-driver=/path/to/jdbc_driver'.

Traceback (most recent call last):
  File "/var/lib/ambari-agent/cache/custom_actions/scripts/check_host.py", line 546, in <module>
    CheckHost().execute()
  File "/usr/lib/ambari-agent/lib/resource_management/libraries/script/script.py", line 352, in execute
    method(env)
  File "/var/lib/ambari-agent/cache/custom_actions/scripts/check_host.py", line 207, in actionexecute
    raise Fail(error_message)
resource_management.core.exceptions.Fail: Check db_connection_check was unsuccessful. Exit code: 1. Message: The MySQL JDBC driver has not been set. Please ensure that you have executed 'ambari-server setup --jdbc-db=mysql --jdbc-driver=/path/to/jdbc_driver'.


2020-12-28 20:27:00,725 - Check db_connection_check was unsuccessful. Exit code: 1. Message: The MySQL JDBC driver has not been set. Please ensure that you have executed 'ambari-server setup --jdbc-db=mysql --jdbc-driver=/path/to/jdbc_driver'.

Traceback (most recent call last):
  File "/var/lib/ambari-agent/cache/custom_actions/scripts/check_host.py", line 546, in <module>
    CheckHost().execute()
  File "/usr/lib/ambari-agent/lib/resource_management/libraries/script/script.py", line 352, in execute
    method(env)
  File "/var/lib/ambari-agent/cache/custom_actions/scripts/check_host.py", line 207, in actionexecute
    raise Fail(error_message)
resource_management.core.exceptions.Fail: Check db_connection_check was unsuccessful. Exit code: 1. Message: The MySQL JDBC driver has not been set. Please ensure that you have executed 'ambari-server setup --jdbc-db=mysql --jdbc-driver=/path/to/jdbc_driver'.

解决方法:

ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar

4、nameNode启动时报错:/usr/hdp/current/hadoop-hdfs-namenode/bin/hdfs dfsadmin -fs hdfs:……-safemode get | grep 'Safe mode is OFF'' returned 1.

报错大体内容如下:

2020-12-29 09:47:51,546 - Execute['/usr/hdp/current/hadoop-hdfs-namenode/bin/hdfs dfsadmin -fs hdfs://vm-16-2-centos.localdomain:8020 -safemode get | grep 'Safe mode is OFF''] {'logoutput': True, 'tries': 115, 'user': 'hdfs', 'try_sleep': 10}
2020-12-29 09:47:53,497 - Retrying after 10 seconds. Reason: Execution of '/usr/hdp/current/hadoop-hdfs-namenode/bin/hdfs dfsadmin -fs hdfs://vm-16-2-centos.localdomain:8020 -safemode get | grep 'Safe mode is OFF'' returned 1. 
2020-12-29 09:48:05,262 - Retrying after 10 seconds. Reason: Execution of '/usr/hdp/current/hadoop-hdfs-namenode/bin/hdfs dfsadmin -fs hdfs://vm-16-2-centos.localdomain:8020 -safemode get | grep 'Safe mode is OFF'' returned 1. 

解决方法:

# su hdfs   //切换到hdfs用户,若关闭了hdfs的权限则可略过这一步
# hadoop dfsadmin -safemode leave   //让namenode离开安全模式

Timeline Service V2.0 Reader 无法启动

报错如下:

resource_management.core.exceptions.ExecuteTimeoutException: Execution of 'ambari-sudo.sh su yarn-ats -l -s /bin/bash -c 'export  PATH='"'"'/usr/sbin:/sbin:/usr/lib/ambari-server/*:/usr/sbin:/sbin:/usr/lib/ambari-server/*:/usr/lib64/qt-3.3/bin:/usr/java/jdk1.8.0_241/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/var/lib/ambari-agent:/var/lib/ambari-agent'"'"' ; sleep 10;export HBASE_CLASSPATH_PREFIX=/usr/hdp/3.1.0.0-78/hadoop-yarn/timelineservice/*; /usr/hdp/3.1.0.0-78/hbase/bin/hbase --config /usr/hdp/3.1.0.0-78/hadoop/conf/embedded-yarn-ats-hbase org.apache.hadoop.yarn.server.timelineservice.storage.TimelineSchemaCreator -Dhbase.client.retries.number=35 -create -s'' was killed due timeout after 300 seconds
  • 解决方法:
将yarn配置文件中的is_hbase_system_service_launch和use_external_hbase勾选
posted @ 2020-12-21 17:31  源码加特灵  阅读(2431)  评论(2编辑  收藏  举报