既存の MID サーバーインストールをホストサーバー間で移動する方法Issue データセンターの変更や容量の増加などを行うために、アクティブな MID サーバーのインストールをあるホストから別のホストに移動する必要がある場合があります。 これを行うには、次の 2 つの方法があります。 新しいホストに新しい 2 番目の MID サーバーをセットアップして起動し、代わりに新しい MID サーバーを使用するようにインスタンス内のすべてのジョブを再構成します。この移行は、MID サーバーを使用する機能の数と、その機能内で構成されている個々のジョブの数に応じて、かなりの作業量になる可能性があります。 これには特別なトリックは必要ありません。インスタンス内の特定のジョブに対して MID サーバーを指定するフォームは完全に文書化されており、新しい MID サーバーのインストールは通常の文書化された手順を使用して実行できます。新しい MID サーバーを既存の MID サーバーと同じに見えるようにセットアップしてから、既存の MID サーバーをシャットダウンして、交換用の MID サーバーを起動します。インスタンス内のすべてのジョブは、インスタンスを変更することなく、実質的にインスタンスがまったく気付かないうちに、代替 MID サーバーを使用するようになります。 この記事では、既存の MID サーバーを別のホストに「移動」する 2 番目の方法について説明します。 ダウンタイムを最小限に抑えるには、既存の MID サーバーをシャットダウンしたときに、すぐに新しい MID サーバーを起動して置き換えることができるように、交換用の MID サーバーのインストールを事前にセットアップし、既存の MID サーバーとまったく同じように構成する必要があります。既存の MID サーバーがシャットダウンされるまで開始できないため、新しい MID インストールは手動で設定する必要があります。 既存のインストールフォルダを新しいサーバにコピーすることは理論的には可能ですが、古いインストールからの問題や、新しいホストに適さないファイルや設定を避けるために、以下のプロセスを使用して新しいクリーンインストールを実行することをお勧めします。 開始前に必要な情報 開始する前に、次の情報が必要です。 参照用に、古いサーバーの既存の MID サーバーインストールから .\agent\config.xml および .\agent\conf\wrapper-override.conf ファイルのコピーを取得します。config.xmlファイルを調べ、パラメーターから、MID サーバーがインスタンスへのログインに使用している「ユーザー名」を確認します。そのインスタンスユーザーのパスワードを取得する必要があります。プロキシサーバーを使用している場合は、それが新しいホストサーバーからまだ必要かどうかを検討する必要があり、必要であればプロキシサーバーユーザーのパスワードを取得する必要があります。別のプロキシが新しいサーバーから経由する必要がある場合は、同様のプロキシホスト、ポート、ユーザー名、およびパスワードの詳細を取得する必要があります。既存のホストと新しいホストの両方にリモートアクセスする必要があります。 新しいホストでの MID サーバーインストールの手動セットアップ インスタンスのリンクを使用して、MID サーバーインストールの ZIP ファイルを新しいホストにダウンロードします。MID サーバー>のダウンロード > 新しいサーバーの OS に一致するリンクを選択します。(ヒント:これは、MID サーバーサービスが将来インストールサーバーから自動アップグレード ZIP ファイルをダウンロードできることを確認する良い方法であるため、意図的に新しいホストから行ってください)。 ZIP ファイルをインストール場所に展開します。例: C:\ServiceNow_MID_Servers\<instance-path>\, そしてエージェントフォルダは C:\ServiceNow_MID_Servers\<instance-path>\agent\ となります。 テキストエディタで agent\config.xml ファイルを開きます(理想的には、パラメータを見つけて間違いを避けるのに役立つため、XMLを色付けする方法を知っているNotepad ++やTextWranglerなど) [必須パラメーター] セクションで、既存の MID サーバーの同じファイルと同じ値を使用して、パラメーター「url」、「mid.instance.username」、および「name」の値を入力します。「mid.instance,password」をプレーンテキストとして再度入力します。 <!-- ************************************************************************************* * REQUIRED Parameters * * This section contains parameters that MUST be included in EVERY Mid Server * configuration. ************************************************************************************* --> <!-- Tells the MID server where to contact its associated Service-now instance. Edit this value to provide the URL of your organization's Service-now instance. --> <parameter name="url" value="https://<instance-name>.service-now.com/"/> <!-- If your Service-now instance has authentication enabled (the normal case), set these parameters to define the user name and password the MID server will use to log into the instance. --> <parameter name="mid.instance.username" value="mid_user"/> <parameter encrypt="true" name="mid.instance.password" value="midpassword123"/> <!-- Defines the name by which your MID server is known on the Service-now instance. Edit this value to provide the name you want, or leave it blank and the MID server will make up a name. --> <parameter name="name" value="MID Server 1"/> 「共通のオプションパラメーター」セクションでは、新しいホストに必要な場合にプロキシサーバー設定を追加する必要があります。これらは、たとえばサイトまたはデータセンター間を移動する場合など、古いホストとは異なる場合があります。これは、MID サーバーがインスタンスに接続するために経由する必要があるプロキシです。これらを埋める必要がある場合は、最初にそれらの周りから<!-- and -->コメントタグを削除する必要があります。また、入力する「threads.max」の設定を、デフォルトの 25 よりも高く設定することもできます。 <!-- ************************************************************************************* * COMMON OPTIONAL Parameters * * This contains selected parameters that MAY be included in ANY Mid Server * configuration. These parameters were chosen because they are commonly needed. To * include any particular parameter or group of parameters, uncomment the parameter(s) * you want. ************************************************************************************* --> <!-- Controls the number of execution threads (simultaneous work) that may be used by probes. --> <parameter name="threads.max" value="50"/> <!-- These parameters specify a proxy server the MID server will use BOTH for contacting your Service-now instance AND for downloading upgrades. --> <parameter name="mid.proxy.use_proxy" value="true"/> <parameter name="mid.proxy.host" value="proxy.<your-domain>.com"/> <parameter name="mid.proxy.port" value="8080"/> <!-- Set these parameters ONLY if your proxy requires a user name and password. --> <parameter name="mid.proxy.username" value="proxy_user"/> <parameter name="mid.proxy.password" value="proxy_password" encrypt="true"/> [自動的に入力される必須パラメーター] セクションは空になりますが、mid_sys_idパラメーターを手動で追加する必要があります。既存の MID サーバー構成ファイルからこの行をコピーします。これは、インスタンスをだまして、これが以前と同じ MID サーバーであると認識させるための鍵です。 <!-- ************************************************************************************* * REQUIRED Parameters that are AUTOMATICALLY filled in. * * This section contains parameters that are required, but will be automatically filled in * after the MID server first made contacts to your Service-now instance. ************************************************************************************* --> <!-- Records the unique ID of the MID server's record on the Service-now instance. On installation of the MID server, this value should be empty. The MID server will fill in this value after it first contacts your Service-now instance. --> <parameter name="mid_sys_id" value="4ef8f4fadbfffa0062be3600ad961971"/> 「keypairs.mid_id」パラメータをコピーすると問題が発生するため、コピーしないでください(インストールフォルダ全体を単純にコピーしない理由の1つにすぎません)。 これらは、MID サーバーがインスタンスにログインして通信できるようにするための重要なパラメーターです。元の MID サーバーの config.xml ファイルに追加、変更、または設定された他のパラメーターが表示される場合があります。例: debug=true です。必要に応じてこれらのパラメーターを入力することもできますが、インスタンスがこれらのパラメーターを記録し、MID サーバーが稼働後にそれらを同期するため、入力する必要はありません。 変更を保存します。 テキストエディターで agent\conf\wrapper-override.conf ファイルを開きます。 追加の MID サーバーが同じサーバーにインストールされている場合にサービス名が競合する問題を回避し、どの Windows サービスがどのインスタンスとインストールと一致するかを識別しやすくするために、「名前」と「表示名」を変更することは常に良い考えです。これは、既存の MID サーバーのインストールと一致する必要はありません。 ################################################################################# Windows Service################################################################################# The following properties must be unique per MID installed on the same system.## REQUIRED: Name token of the servicewrapper.name=snc_mid_<instance-name>_1# REQUIRED: Display name of the servicewrapper.displayname=ServiceNow MID Server <instance-name> 1 Since around the Geneva release the default java heap space (the amount of RAM the operating system allows the MID Server to use) defaults to 1GB. If your existing MID Server is still set on 512MB then this is a good opportunity to allow it to use 1GB, so don't change this. However if you were using a higher maxmemory setting in your existing MID Server, then un-comment and set this. ################################################################################# System resources################################################################################# Memory, CPU, etc. Remember to refer to < conf/wrapper.conf > for defaults.## OPTIONAL: Maximum Java Heap Size (in MB)wrapper.java.maxmemory=2048 変更を保存します。 MID サーバーはまだ起動しないでください。 既存の MID サーバーから新しい MID サーバーへの切り替えの実行 これは、新しい MID サーバーが起動しない場合に問題が発生する可能性がある部分です。移行が必要と思われる MID サーバーの 1 つを含む準本番インスタンスでこの手順を既に試しているか、最初にこれを試すために古い MID サーバーの横に追加の MID サーバーをインストールしていることを前提としています。 新しい MID サーバーが期待どおりに機能しない場合は、単純にシャットダウンして、理由がわかるまで古いサーバーを再起動できます。 インスタンスで、MID サーバーフォームを開きます。これを使用して、稼働中/停止ステータスを監視できます。新しいホストで、アドミニストレーターとして実行するコマンドプロンプトウィンドウ(cmd.exe)を開きます。ディレクトリーを新規インストールのエージェントフォルダーに変更します。既存の MID サーバーホストで、Windows サービスを停止します。おそらく「ServiceNow MID Server」などと呼ばれるでしょう。複数ある場合は、正しいものを選択するように注意してください。サービスリストを更新して、MID サーバーサービスが停止したことを確認します。ただちに、新しい MID サーバーホストのコマンドプロンプトウィンドウで、アドミニストレーターとして実行して、start.batを実行しますインスタンスで、MID サーバーが再び稼働しているかどうかを確認します。ステータス = アップ (Up) になるまで、MID サーバーフォームを 1 分または 2 分更新しますMID サーバーフォームで、新しい MID サーバーであるかのように関連リンクの [検証] をクリックします。ECC キューをチェックして、MID サーバーが停止している間にキューに入れられたジョブを MID サーバーが処理していることを確認します。 MID サーバーのダウンタイムは、一般的に心配する必要はありません。中断されたジョブはすべて再実行され、MID サーバーが停止している間に ECC キューに追加された新しいジョブは、新しい MID サーバーが再び起動したときに実行されます 潜在的なリスクとその他の質問 1. MID サーバーのホストのホスト名と IP アドレスが変更されます。それは問題を引き起こすのでしょうか? MID サーバーがそのジョブを実行するためにインスタンスにアクセスしたり、一部の内部デバイスにアクセスしたりするためのファイアウォールルールが実装されている場合 (インポート元のデータベースサーバーなど)、ソースホスト名/IP アドレスの変更に合わせてそれらのファイアウォールルールを更新する必要があります。 2.この変更は、受信/送信メールに影響しますか? いいえ。メールは MID サーバーを経由しません。 3. この変更は、インスタンスにログインするユーザーの LDAP 認証に影響しますか? いいえ。定期的なユーザーインポートと LDAP リスナーに MID サーバーが使用されている場合でも、リアルタイム LDAP 認証は MID サーバーを介して行われません。 4.MID サーバーは、変更の影響を受ける可能性がある、私が知らないかもしれない何かに使用されていますか? 多分。MID サーバーで使用される機能は、ドキュメント「 MID サーバーの概要」に記載されています。 次のリスト URL には、過去数日間に MID サーバーを介して設定されているプローブとコマンドの種類を示すフィルターがあります。これは、使用していることに気づかなかった機能を特定するのに役立ちます。/ecc_queue_list.do?sysparm_query=topic!%3DHeartbeatProbe%5EORtopic%3DNULL%5Etopic!%3Dqueue.processing%5EORtopic%3DNULL%5Etopic!%3DSystemCommand%5EORtopic%3DNULL%5Etopic!%3Dqueue.stats%5EORtopic%3DNULL%5EGROUPBYtopic&sysparm_first_row=1&sysparm_view= 5.私の証明書はどうなりますか? Java keytool ユーティリティを使用して (プロキシサーバーやデータベースサーバーなどで) cacerts ファイルに証明書を追加した場合は、新しいインストールに再度追加する必要があります。理論的には、cacerts ファイルをコピーできます。MID サーバーと証明書を参照してください。 6.以前の MID サーバーに追加されたすべての追加の JAR/スクリプト/スクリプトインクルード/MIB ファイルについてはどうでしょうか。彼らも追加する必要がありますか? Calgary リリース頃から、extlib 内のこれらのファイルはすべてインスタンス内の関連テーブルに追加する必要があります。そうすると、新しいファイルを含むすべての MID サーバーに自動的に同期されます。この機能が製品に追加される前に残ったファイルを手動で追加した場合は、関連するテーブルのインスタンスに追加する必要があります。 異なるバージョンの MID サーバーの lib フォルダーの JAR ファイルを置き換えた場合は、「 KB0862383」でより適切な回避策を参照してください。