Isilon:ゲートウェイ接続ステータスに「Disconnected, Internal Error 401 Unauthorized」応答コードが表示される
Summary: [Gateway Connectivity Status]に[Disconnected]と表示され、Internal Error 401 Unauthorized応答コードが表示されます(ユーザー修正可能)。
Symptoms
以前は動作していて接続されていたクラスターのGateway Connectivity Statusには、Disconnectedと表示されます。401 Unauthorized 無効なユーザー名とパスワードとは無関係のSecure Connect Gatewayからの応答が表示されます
セキュア コネクト ゲートウェイを使用するIsilonクラスターでは、 isi esrs view は、ゲートウェイ接続ステータスが切断されていることを示しています。以前は、構成は正しく機能していました。
無効化と再有効化の試行 isi_esrs_d と isi_rsapi_d 接続の復元を支援しません
を使用して構成の変更を試みる username セキュア コネクト ゲートウェイ(--enabled=false)を再作成しようとして失敗します。
同様のエラーは、 isi esrs modify --enabled==false コマンドを使用して実行できます。
Internal error:
ESRSBadCodeError: ESRS Delete Device failed. Error response code from gateway: 401, Unauthorized. Response dictionary was: {{'http_response_code': 401, 'curl_trace': "* Trying 1.2.3.4:9443...\n* TCP_NODELAY set\n* Name '1.2.3.4' family 2 resolved to '1.2.3.4' family 2\n* Local port: 0\n* Connected to 1.2.3.4 (1.2.3.4) port 9443 (#0)\n* ALPN, offering http/1.1\n* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH\n* SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384\n* ALPN, server accepted to use http/1.1\n* Server certificate:\n* subject: C=US; ST=MA; L=SO; O=EMC; OU=ESRS; CN=myname\n* start date: Dec 4 12:20:29 2019 GMT\n* expire date: Dec 4 12:20:29 2039 GMT\n* issuer: C=US; ST=MA; L=SO; O=EMC; OU=ESRS; CN=myname\n* SSL certificate verify result: unable to get local issuer certificate (20), continuing anyway.\n> DELETE /esrs/v1/devices/ISILON-GW/ELMISLxxxxxxxx HTTP/1.1\r\nHost: 1.2.3.4:9443\r\nUser-Agent: PycURL/7.43.0 libcurl/7.66.0 OpenSSL/1.0.2r-fips zlib/1.2.11\r\nAccept: */*\r\nAuthorization: ISILON-GW:ELMISLxxxxxxxx:keykeykeyGYskKOwNZQg7SGOgC8=,domain=Device\r\nDate: Wed, 04 Nov 2020 19:15:47 GMT\r\n\r\n* Mark bundle as not supporting multiuse\n< HTTP/1.1 401 Unauthorized\r\n< Date: Wed, 04 Nov 2020 19:15:48 GMT\r\n< Server: Apache PivotalWebServer\r\n< Strict-Transport-Security: max-age=31536000; includeSubDomains;\r\n< Content-Security-Policy: frame-ancestors 'self'\r\n< Transfer-Encoding: chunked\r\n< \r\n* Connection #0 to host 1.2.3.4 left intact\n"}}
401メッセージにテキスト文字列が含まれている場合 Invalid username and passwordの場合、この記事は適用されません。
Cause
上記の応答で、Isilonが
HTTP DELETE コマンドを使用して実行できます。
DELETE /esrs/v1/devices/ISILON-GW/ELMISLxxxxxxxx
デバイス キーは、Isilonとセキュア コネクト ゲートウェイ間の通信を認証するために使用されます。
Authorization: ISILON-GW:ELMISLxxxxxxxx:keykeykeyGYskKOwNZQg7SGOgC8=
ゲートウェイが再インストールされた場合、または別の理由でデバイス キーを紛失した場合、キーを使用した REST-API 認証は失敗し、
401 Unauthorized エラー。
セキュア コネクト ゲートウェイの状態を判断できない場合は、 Dellサポート と連携して調査できる場合があります。デバイス キーは、ゲートウェイが再インストールされた場合に失われますが、ゲートウェイが(キーが作成または更新される前に)古いスナップショットにロールバックされた場合にも失われる可能性があります。さらに、Secure Connect Gatewayのディスク領域が不足し、その間に新しいデバイスが追加された場合、Secure Connect Gateway上のデバイス キーのデータベースを拡張することはできません。
Resolution
最も簡単かつ適切な解決策は、次のコマンドを実行して設定を無効化し、新しい登録を使用してIsilonの新しいデバイス キーを生成することです。「 --force フラグは、最初に登録解除するためにゲートウェイへの接続を試行せずに、セキュア コネクト ゲートウェイ サービスを無効にするようにIsilonに指示します。
isi esrs modify --enabled=false --force isi esrs modify --enabled=true --username=DellSupportEmail --password=MYPASS
これらのコマンドが機能しない場合は、 Dellサポート と連携して、キーを手動でクリアし、セキュア コネクト ゲートウェイとIsilonクラスター間の通信をリセットできます。この記事を引用してサービス リクエストを開きます。
経験豊富な管理者は、次のコマンドを実行して、クラスター上の関連サービスの無効化、セキュア コネクト ゲートウェイの手動無効化、クラスター側の既存の認証キーのクリアを行う必要があります。
- 関連するサービスが実行されている場合は、無効化します。これらのサービスは、セキュア コネクト ゲートウェイ接続用のセキュア コネクト ゲートウェイ サービスと REST-API サービスを実行するデーモンを表します。これらのサービスを無効化しても、クラスターへのクライアント アクセスには影響しません。
isi services -a isi_esrs_d disable isi services -a isi_rsapi_d disable
- Secure Connect Gatewayを手動で強制的に無効にします。
isi_gconfig -t esrs esrs.enabled=false
- 通信に使用しているキーをクリアします。
isi_gconfig -t esrs esrs.esrs_api_key=""
NOTE: if secondary Gateway is configured, clear the API key for secondary Gateway using command below:
isi_gconfig -t esrs esrs.secondary_esrs_api_key=""
- 次のみ有効にします。
rsapiサービスのためにすべてのジュークボックス操作を管理するRPCベースのサービスを提供します。
isi services -a isi_rsapi_d enable
- 通常のコマンドを使用して、セキュア コネクト ゲートウェイの構成を有効にします。
isi esrs modify --enabled=true --username=DELL-Support-Account --password=MYPASS
- REST応答の待機中にコマンドがタイムアウトした場合は、次のコマンドを入力します。
isi --timeout=600 esrs modify --enabled=true --username=DELL-Support-Account --password=MYPASS
- コマンドでまだエラーが表示される場合は、Isilonで新しい収集を開始し、 Dellサポートにお問い合わせください。
これらの手順は、Isilonとセキュア コネクト ゲートウェイ間の通信を再作成および再確立するために使用されます。
Additional Information
プライマリー ノードに障害が発生した場合、クラスターは新しいプライマリーを選択し、ランディングIPは REST プロトコルを使用してセキュア コネクト ゲートウェイに更新されます。「isi_esrs_d」サービスと「isi_rsapi_d」サービスの両方が、クラスター内のすべてのノードで実行されている必要があります。プライマリーは、ゲートウェイ アクセス プールに構成されたノードに基づいて選択されます。
プライマリーは、ログを確認するか、次のコマンドを発行することで特定されます。
sqlite3 /ifs/.ifsvar/modules/tardis/namespaces/esrs.registered.state.sqlite 'select value from kv_table where key == "esrs_registered_lnn";' 5
上記の例では、プライマリー ノードはノード5です。このノードのゲートウェイ アクセス プールからIPアドレスを調べたところ、これがセキュア コネクト ゲートウェイのELM*クラスター ライセンスに使用されているIPアドレスであることが判明しました。Dellサポート担当者は、クラスターへのダイヤル インに使用しているServiceLinkセキュア コネクト ゲートウェイ システムでもこのIPアドレスを確認できます。