Ambari-RangerコンポーネントがMySQLのデフォルトポートを変更し、起動に失敗して問題を解決しました(通信リンクの失敗)

目次

1.問題のシナリオ

二、解決策

問題解決プロセス1

問題解決プロセス2


1.問題のシナリオ

       Ambari + HDPクラスターをインストールし、MySQLのデフォルトポートを変更します。インストール中に問題はありません。レンジャー管理者は、起動時に次のエラーを報告します。

問題の説明:  Ambariページで、Rangerコンポーネントをインストールすると、バックグラウンドで使用されるMySQLデータベースのポートが次のように変更されました:デフォルト以外のポート3306。Ranger コンポーネントの起動と再起動時にエラーが報告されました:
/usr/jdk64/java/bin/java -cp /usr/hdp/current/... jdbc:mysql://namenode/ranger -u 'ranger' -p '******' -noheader ......
ポート番号がありません: 3906、実際には次のようになります。...... jdbc:mysql://namenode:3906/ranger ......

最終的なエラーは次のとおりです。

原因:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信リンク障害問題を解決するためのこの情報によると、迂回後に問題の根本原因が見つかりませんでした。


二、解決策

問題解決プロセス1

最初は、それがMySQL接続タイムアウトの理由だと本当に思っていましたが、以前はMySQLのデフォルトのポートに問題がなかったため、まだわかりませんでした。

原因:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信リンク障害

データベースが再起動するか、データベースのアイドル接続が設定された最大タイムアウト時間を超えると、データベースは既存のリンクを強制的に切断します。最大タイムアウト時間は、次のコマンドでshow global variables like "wait_timeout";照会できます

mysql> show global variables like "wait_timeout";
+---------------+-------+
| VARIABLE_NAME | VALUE |
+---------------+-------+
| wait_timeout  | 28800 |
+---------------+-------+
1 row in set (0.00 sec)

しかし、上記の設定を行った後、私なしで元に戻し、この可能性を排除したので、レンジャーの穴だと思ったので、インターネットで検索したところ、誰かが遭遇しました。

問題解決プロセス2

レンジャーのMBARIのビッグピット----ポートのデフォルトは、手動で変更する必要がある、3306です

ambariがレンジャーをインストールするときは、データベースに接続する必要があります。mysqlデータベースが使用されます。このとき、rootユーザーに接続して新しいユーザーを作成する必要があるため、データベースのrootユーザー名とパスワードを入力する必要があります。およびデータベース

実稼働環境でMySQLのデフォルトのポートが変更されたため、問題はここにありますが、レンジャーの開始スクリプトはデフォルトのMySQLポートを使用します。

/usr/jdk64/java/bin/java -cp /usr/hdp/current/... jdbc:mysql://namenode/ranger -u 'ranger' -p '******' -noheader ......
欠落しているポート番号:33066、実際には:...... jdbc:mysql://namenode:33066/ranger ......

そこで、起動スクリプトを入力しました:vim /usr/hdp/current/ranger-admin/db_setup.py jisql_cmd    の場所を検索し、jdbc:mysql://の場所を見つけて、手動で変更します。Ambariのバージョンは異なります。 、およびjdbc:myqlの場所は異なる場合があります。

注意:最初の%sの後に変更されたMySQLポートです

 可能性のある問題:/usr/hdp/current/ranger-admin/db_setup.pyは、ファイルを編集した後に保存することはできませんvimの、それは読み取り専用である、あなたが試すことができますのsudo vimのをroot権限でファイルを入力します。

おすすめ

転載: blog.csdn.net/qq_35995514/article/details/108253976