Developerサイトに移行します。見た目やトピックエリアなど更新されますが、開発者に必要とされるコンテンツを引き続き提供していきます。イメージを複製して、別の異なる環境で再利用できることです。複製するときには、再構成に関する問題が起こりがちです。サーバー・サイドのサービスを実装するアプリケーションを扱っている場合は、再構成に問題があることは珍しくありません。プロセスとして知られています。用いた手法や、アプリケーションに固有のアクティベーション・スクリプトを用いた手法が活用されます。このような状況でイメージ再アクティベーション・プロセスを使用する場合の問題は、このプロセスでは常に、アプリケーションの構成の誤りをすべて正しく再構成するために実行できる適切なスクリプトの存在が前提となるという点です。この記事では、この問題を解決するための方法として従来の方法に代わる方法について説明します。ない場合や、アプリケーション固有の構成成果物を修復するために事前ビルドされたアクティベーション・スクリプトを利用できない場合に役に立ちます。存在するアプリケーションに対して使用できる再有効化スクリプトがない場合には、環境に関する情報が不完全になりがちです。呼ぶ方法がより効果を発揮するはずです。この方法は、個々のアプリケーションにはとらわれません。コマンドライン・インターフェースのプロトタイプを作成したので、これを使用して、この記事で説明するネットワーク構成手法を画策あるいは実装することができます。これらの手法を使用すれば、複製による不適切な構成の問題を解決することができます。完璧な複製を作成することが必ずしも良いとは限りませんクラウド指向の環境では、マシン・プロビジョニングが中心的な機能となります。定期的に新しい物理マシンがネットワークに接続されたり、新しい仮想マシンが作成されたりします。既存のマシンや有用なテンプレートのリポジトリーから複製されることは珍しくありません。よって変わってくる情報がランタイム・イメージに含まれることです。イメージに組み込まれたオペレーティング・システムやアプリケーションは、必要な再構成を行わない限り、おそらく正常には機能しないでしょう。ありがちなエラーとしては、例えば以下のものが挙げられます。ネットワーク・ソケットでのバインディング試行が失敗します。必要なネットワーク・サービスへのアクセス試行が失敗します。アドレスを公開すると、ランダム接続の失敗、切断、そしてネットワークが不安定になるなどの深刻な問題が間違いなく発生します。アドレスの情報は、オペレーティング・システムの構成ファイルの中にあります。アドレスに置き換えることです。この作業は、スクリプトやツールによって、現在使用している特定のオペレーティング・システムに応じた方法でランタイム・イメージの内容を直接操作するという方法で自動化することができます。システムの場合にはレジストリーのエントリーを変更したりします。インストールされているアプリケーションに、ネットワーク構成から導き出される内部構成や、インストール時に取り込まれる内部構成が含まれることはよくあります。アドレスやホスト名などの情報を、独自の構成データに保存することがあります。つの方法は、アプリケーションを再インストールすることですが、これは基本的に、「事前に構成されたマシンの複製を作成する」手法から「マシンを一からインストールする」という手法に変えることを意味します。それでは厄介であり、非効率的です。仮想マシンを素早く確実に一貫した方法で作成できるというメリットをはじめとする、複製に伴うすべてのメリットが台無しになってしまいます。内のソフトウェアを再びアクティブにするために従来使われているのはどのような手法なのでしょうか。内のソフトウェアを再びアクティブにするために通常採っている手法は、不適切な構成ファイルをその保存場所によらず片っ端から修正することです。これは、ケース・バイ・ケースで個々の構成ファイルを修正するという方法で、皆さんはそのために必要な作業については理解できるはずです。含まれていなければならないアプリケーションと、それぞれのアプリケーションで行われなければならない操作を極めて正確に把握する必要があります。イメージでスクリプトとして実行することも、実行中のマシンで最初のブートとして、またはエージェント・レベルで実行することもできます。この手法では、何を行わなければならないかを完全に把握しているとすれば、最終的に最適な結果が得られます。アプリケーションは、「正しく」インストールしたアプリケーションとまったく同じように機能するようになります。その一方で、この手法はかなり危うい手法でもあります。しただけでも悪夢のような記録維持の作業が必要になる可能性があります。アプリケーションに固有の情報を把握せずに構成を修正しようとすると、失敗しがちです。置き換えるなどという作業は、決して真剣に検討するような対象にはなりません。それよりも有効な戦略があります。私たちはこの戦略を「ネットワークのトリック」と呼んでいます。ネットワークのトリック関連するソフトウェアについての具体的な情報がなくても、複製された構成のエラーを修正するために代わりに使用できる革新的な手法が、これから説明しようとしている手法です。シナリオを用意します。あるケースとして、外部から到達可能なデーモンを介してサービスをエクスポートしているマシンについて考えてみましょう。アドレスを構成ファイルに保存するので、自らをネットワーク・インターフェースにバインドすることができません。そのため残念ながら、複製したマシンでは起動に失敗するはずです。アプリケーションの構成ファイルを修正する代わりにネットワーク構成環境の形を変えることで、誤った構成でも動作するようにアプリケーションにトリックを仕掛けます。このトリックを支援するのは、マシン自体のオペレーティング・システムです。全体のプロセスを説明したものです。(「ターゲット・マシン」と呼びます。つのアプリケーションがインストールされていました。アドレスを使用するという設定です。到達できなくなることです。使用することができません。つのアプリケーションを起動することができないためです。(手始めとしてのステップ)最初のステップとして、追加のネットワーク・インターフェースを作成します。必要な数だけインターフェースのエイリアスを作成することができます。エイリアスとして生成することができます。生成することも可能です。追加インターフェースを作成した後、誤って構成されているアプリケーションは、この偽のインターフェースで起動してバインドできるようになります。外部マシンからの接続は、まだ受け入れることができません。設定されたインターフェースでリッスンするプロセスはないため、パケットは複製されたマシンに到達するとすぐに破棄されてしまいます。バインドして起動に成功したデーモンが示されています。リダイレクトについて検討します。(新しいアドレスを古いアドレスにリダイレクトするということです)。ルールとして、カーネル・レベルで簡単に設定することができます。リダイレクトがパフォーマンスに重大な影響を与えることはありません。これは、ファイアウォールとゲートウェイで一般に使用されるトリックとしてよく知られています。リダイレクトを行います。宛てのトラフィックが実際にマシンに到達できるように、クライアント・マシンとすべての中間ノードのルーティング・ルールを設定する必要もあります。最後の注意として、リダイレクトは特定のポートに対して行う必要があります。機能しなくなってしまうため、リダイレクトするポートを把握する必要があります。(実際ここでは、どのアプリケーションを修正しようとしているのかを把握していることすら前提にしていません)。なると、使用されるポートを自動的に検出する方法が必要になってきます。設定されたインターフェースを介してリッスンされているポートのリストを要求します。実行することで取得します。リダイレクトを調整します。堅牢性を向上させるために、このスキャンとリダイレクト・フェーズを数秒間隔で繰り返します。それによって、起動に時間がかかるアプリケーションや、ポートを動的にバインドおよびアンバインドするアプリケーションにも対処することができます。ウォッチドッグの動作を示します。リダイレクトするルールを作成したことがわかります。指すことによって、サーバーに接続できるようになりました。割り当てられています。複製される前と同じように、マシンは着信ネットワーク・リクエストに対応することができます。まとめると、この手法は以下の作業内容で構成されています。持つダミー・インターフェースを設定することで、構成に誤りがあるデーモンが、ネットワーク構成の問題を生じることなく起動できるようにします。設定したダミー・インターフェースに対するリッスン用テーブルの各項目に関してポーリングを行うウォッチドッグ・デーモンをセットアップします。ポート・リダイレクトを調整します。バインドしても機能します。トリックのおかげです。ソリューションをさらに完全にするためには、実質的な再構成のトリックが他にもいくつかあります。エイリアシング・メカニズムは、ここでの目的のほとんどを果たしていますが、以下に挙げる構成のトリックを使用すれば、より完全なソリューションの実現を画策することもできます。ホストでの偽のインターフェースの構成には、喜ばしくない副次効果を伴います。リクエストが、任意のインターフェースで応答されることです。複数の複製を作成する場合や、同じネットワーク・セグメント内にソース・マシンの複数のコピーを作成する場合には尚更のこと、完璧な秘密工作が望まれます。回避することができます。返されるようにする必要もあります。構成ファイルを更新することです。プロキシーをインストールします。ファイルに従った応答を返すようになります。つの構成戦略は、関数コールを取得する「フック」です。全体に適用されるようにネストしたり、ある低いレベルのユーザー権限で実行されるプロセスに作用するようにネストしたりするなど、さまざまなユーザー・レベルでネストすることができます。コマンドラインがあります。仮想システムでの構文と使用例を記載します。-dnatまとめこの記事で紹介した手法を実際に実装したところ、非常に効果があることが証明されました。構成を使ってインストールしなければならない環境です。複製した後、この環境は機能しなくなりました。構成のままになっていたためです。手法によってこの問題は回避され、サーバー・ソフトウェア・スタックは、まだ古い環境内にあると認識しているにも関わらず、新しい環境で機能できるようになりました。この手法には、主要な製品の使用ケースのリグレッション・テストが必要です。イメージ再アクティベーションの手法は、常に検討すべき有効な代替手段であることを忘れないでください。古いアプリケーション構成を「取り除き」、新しい構成に置き換えることを目的としたイメージ再アクティベーションは、「外科的」で明確な手法です。コストがかかるため、最善の手法にはならない場合があります。手法を検討するべきです。これに対してユーザーが次のような難点を指摘する可能性があります。デーモンがリダイレクトを調整するまでにはタイムラグがあることです。その数秒の間には、何が起こるのでしょうか。外部クライアントには単にサービスが使用不可能のように見えるというのが、その答えです。外部クライアントの視点からは、数秒後に、サービスが正常に開始したように見えます。適切なポーリング間隔を使用していれば、重大な悪影響はないはずです。秒間隔に緩めてください。使用して首尾良くプロトタイプ化されています。タスクの実行方法についての詳細は、以下のリソースにアクセスしてください。クラウド開発者向けリソースで、クラウド開発プロジェクトを作成しているアプリケーションおよびサービス開発者たちの知識と経験を調べて共有してください。アクセスする方法を調べてください。用意された製品イメージを調べてください。コメントコメントを登録するにはサインインあるいは登録してください。