Hadoopのホスト検証を無効にする


0

(自動スケーリンググループを介してデプロイされた)AWS EC2インスタンスでLinuxサービスとして実行するようにHadoopを設定し、sparkユーザーとして実行します。ただし、起動すると、Hadoopサービスのsystemctlステータスに、マスターに対して検証できないという不満のメッセージが表示されます(マスターとワーカーの自動検出にConsulを使用しています)。

Jan 11 23:40:23 ip-172-21-1-19.us-west-2.compute.internal hadoop[12095]: Stopping namenodes on [spark-master.service.consul]
Jan 11 23:40:23 ip-172-21-1-19.us-west-2.compute.internal hadoop[12095]: spark-master.service.consul: Host key verification failed.
Jan 11 23:40:23 ip-172-21-1-19.us-west-2.compute.internal hadoop[12095]: spark-worker.service.consul: Host key verification failed.
Jan 11 23:40:24 ip-172-21-1-19.us-west-2.compute.internal hadoop[12095]: Stopping secondary namenodes [0.0.0.0]
Jan 11 23:40:24 ip-172-21-1-19.us-west-2.compute.internal hadoop[12095]: 0.0.0.0: Host key verification failed.
Jan 11 23:40:25 ip-172-21-1-19.us-west-2.compute.internal hadoop[12095]: stopping yarn daemons
Jan 11 23:40:25 ip-172-21-1-19.us-west-2.compute.internal hadoop[12095]: no resourcemanager to stop
Jan 11 23:40:25 ip-172-21-1-19.us-west-2.compute.internal hadoop[12095]: spark-worker.service.consul: Host key verification failed.
Jan 11 23:40:25 ip-172-21-1-19.us-west-2.compute.internal hadoop[12095]: no proxyserver to stop
Jan 11 23:40:25 ip-172-21-1-19.us-west-2.compute.internal systemd[1]: Started Hadoop.

ホストの検証を無視するために、spark .sshディレクトリに設定ファイルを追加しようとしました。

Host *.service.consul
  StrictHostKeyChecking=no
  UserKnownHostsFile=/dev/null

/opt/hadoop/sbin/start-all.shSparkユーザーとして実行すると、すぐに認証されるため、動作することがわかっています。

spark-master.service.consul: Warning: Permanently added 'spark-master.service.consul,172.21.3.106' (ECDSA) to the list of known hosts.
spark-master.service.consul: starting namenode, logging to /var/log/hadoop/hadoop-spark-namenode-ip-172-21-3-106.us-west-2.compute.internal.out
spark-worker.service.consul: Warning: Permanently added 'spark-worker.service.consul,172.21.1.19' (ECDSA) to the list of known hosts.
spark-worker.service.consul: datanode running as process 7173. Stop it first.
Starting secondary namenodes [0.0.0.0]
0.0.0.0: Warning: Permanently added '0.0.0.0' (ECDSA) to the list of known hosts.
0.0.0.0: starting secondarynamenode, logging to /var/log/hadoop/hadoop-spark-secondarynamenode-ip-172-21-1-19.us-west-2.compute.internal.out
starting yarn daemons
starting resourcemanager, logging to /opt/hadoop/logs/yarn-spark-resourcemanager-ip-172-21-1-19.us-west-2.compute.internal.out
spark-worker.service.consul: Warning: Permanently added 'spark-worker.service.consul,172.21.1.19' (ECDSA) to the list of known hosts.
spark-worker.service.consul: starting nodemanager, logging to /opt/hadoop/logs/yarn-spark-nodemanager-ip-172-21-1-19.us-west-2.compute.internal.out

そして、私はサービスを開始すると、それが私のスパークユーザーとして実行されているという事実を知っています:

spark     13987      1  0 23:44 ?        00:00:00 bash /opt/hadoop/sbin/start-all.sh
spark     14000  13987  0 23:44 ?        00:00:00 bash /opt/hadoop/sbin/start-dfs.sh --config /opt/hadoop/etc/hadoop
spark     14074  14000  0 23:44 ?        00:00:00 bash /opt/hadoop/sbin/slaves.sh --config /opt/hadoop/etc/hadoop cd /opt/hadoop ; /opt/hadoop/sbin/hadoop-daemon.sh --config /opt/hadoop/etc/hadoop --script /opt/hadoop/sbin/hdfs start namenode
spark     14099  14074  0 23:44 ?        00:00:00 ssh spark-master.service.consul cd /opt/hadoop ; /opt/hadoop/sbin/hadoop-daemon.sh --config /opt/hadoop/etc/hadoop --script /opt/hadoop/sbin/hdfs start namenode

自動スケーリンググループにデプロイされたすべてのインスタンスの自動検証が必要なのは、すべてのインスタンスにログインする必要がないためです。だから誰もこれを行う方法を知っていますか?Hadoopサービスに欠落している設定はありますか?

これはサービスです:

[root@ip-172-21-1-19 ~]# cat /usr/lib/systemd/system/hadoop.service
[Unit]
Description=Hadoop
After=syslog.target network.target remote-fs.target nss-lookup.target network-online.target spark-worker.service
Requires=network-online.target spark-worker.service

[Service]
User=spark
Group=spark
Type=forking
PermissionsStartOnly=true
ExecStartPre=/usr/bin/install -o spark -g spark -d /var/run/hadoop
ExecStart=/opt/hadoop/sbin/start-all.sh
ExecStop=/opt/hadoop/sbin/stop-all.sh
WorkingDirectory=/opt/hadoop
TimeoutStartSec=2min
Restart=on-failure
SyslogIdentifier=hadoop
StandardOutput=journal
StandardError=journal
LimitNOFILE=infinity
LimitMEMLOCK=infinity
LimitNPROC=infinity
LimitAS=infinity
SuccessExitStatus=143
RestartSec=20

[Install]
WantedBy=multi-user.target

私にお知らせください。ありがとう。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.