最新のDigitalOceanクラウドへのドロップレットアップグレードを手動で開始する方法
ステータス:非推奨
この記事は非推奨になり、保守されなくなりました。
理由
これらの手順は、関連性がなくなった古いバージョンのコントロールパネル用です。
序章
Dropletがまもなく最新バージョンのクラウドにアップグレードされることを通知するEメール通知をDigitalOceanから受け取った場合、続行するには2つのオプションがあります。
- 何もせず、スケジュールされた時間に自動アップグレードを実行できるようにします
- スケジュールされた自動アップグレードの前であればいつでも、アップグレードイベントを手動で開始します
アップグレードイベントを手動で開始する2番目のオプションの主な利点は、アップグレードプロセスがいつ発生するかを制御できることです。 アップグレード中はDropletをオフラインにする必要があるため、これは、優先するメンテナンスウィンドウがある場合に使用する必要がある方法です。 何をするかに関係なく、DropletのIPアドレスは保持されます。
このチュートリアルでは、アップグレードする前に考慮すべきいくつかの考慮事項について説明し、DigitalOceanコントロールパネルとAPIを介してDropletアップグレードイベントを手動で開始する方法を示します。
クラウドのアップグレード中に何が発生しますか?
基本的に、アップグレードプロセスには、Dropletをある物理サーバーから最新バージョンのDigitalOceanのハイパーバイザーソフトウェア(DigitalOcean「クラウド」と呼ばれることもある)を実行している別のサーバーに移動することが含まれます。 アップグレードプロセスでは、ドロップレットが完了するまで電源をオフにする必要があります。
クラウドの最新バージョンにアップグレードすると、Dropletが利用可能になったときに、Dropletが存在するデータセンターの最新機能を利用できるようになります。 機能の例には、IPv6、プライベートネットワーク、およびメタデータが含まれます。
推定ダウンタイム
ドロップレットのアップグレードプロセスの推定最大ダウンタイムウィンドウは、ストレージ容量1GBあたり最大1分です。 たとえば、Dropletのストレージ容量が20 GBの場合、アップグレード全体の所要時間は、開始後20分以内に未満になります。
アップグレードが必要な理由とプロセスにかかる可能性のある時間がわかったので、DigitalOceanコントロールパネルとAPIを使用して手動でアップグレードを開始する方法について説明します。
パワーオフドロップレット
アップグレードプロセスを開始する前に、コマンドラインからドロップレットをpoweroff
することをお勧めします。 この手順により、アップグレード前にDropletが正常にシャットダウンするようになります。
sudo
アクセス権を持つユーザーとしてDropletにSSHで接続します(独自のユーザー名とIPアドレスに置き換えます)。
ssh user_name@droplet_IP_address
コマンドラインに到達したら、poweroffコマンドを発行します。
sudo poweroff
ドロップレットから切断されます。 これで、次の2つのセクションのいずれかの手順に従って、コントロールパネルまたはAPIを介してアップグレードプロセスを開始する準備が整いました。最も使いやすい方を選択してください。
DigitalOceanコントロールパネルを介したアップグレード
注:このアップグレード方法は、ドロップレットがアップグレードのためにスケジュールされた場合にのみ使用できます。 ドロップレットのいずれかがアップグレードの予定になっている場合は、ドロップレットID、名前、移行の予定日時など、関連するすべての詳細が記載された電子メール通知が届きます。
Webブラウザーで、 https://cloud.digitalocean.com/ のドロップレットページに移動します(プロンプトが表示されたらログインします)。
アップグレードメールに記載されているドロップレットの名前を見つけてクリックします。
設定ボタンをクリックしてください。 ここに、[アップグレード]タブが表示されます。 クリックして。
次に、アップグレードボタンをクリックし、確認プロンプトを受け入れて、ドロップレットのアップグレードプロセスを手動で開始します。 ドロップレットはアップグレードを開始し、プロセスが完了すると自動的に起動します。
アップグレードステータスの確認
アップグレードの処理中、Dropletの情報ページに「イベントが処理中です…」というメッセージとDropletのイベント履歴が表示されます。 アップグレードイベントは「アップグレード」と表示されます。
アップグレードプロセスが完了すると、ドロップレット情報ページが通常に戻り、ドロップレット履歴セクションに完了した「アップグレード」イベントが表示されます。
APIを介してアップグレード可能なドロップレットを表示する
アップグレードがスケジュールされているすべてのドロップレットを含む、現在アップグレード可能なドロップレットのリストを表示するには、Droplet_upgrades
APIエンドポイントを使用できます。 このエンドポイントの使用法は、ドロップレットアップグレードのリストに記載されています。
たとえば、次のcurl
コマンドを実行して、アップグレードの対象となるドロップレットのリストを要求できます。
curl -X GET -H 'Content-Type: application/json' -H 'Authorization: Bearer YOUR_API_TOKEN' "https://api.digitalocean.com/v2/droplet_upgrades"
これにより、移行がスケジュールされているすべてのドロップレットに関する、ドロップレットIDやスケジュールされた移行時間などの情報を含むJSON配列が返されます。 この配列が空の場合、ドロップレットを移行する必要はありません。
APIを介したアップグレード
DigitalOcean APIを介してアップグレードプロセスを開始する場合は、移行されるドロップレットのid
を知っている必要があります。 アップグレード通知メールを受信した場合は、ドロップレットIDがそこに含まれます。それ以外の場合は、前のセクションの指示に従って、APIを使用してアップグレード可能なドロップレットのIDを検索できます。
ドロップレットIDを取得したら、それをドロップレットアクション APIエンドポイントで使用し、type属性を「migrate_Droplet」に設定する必要があります。 このAPIの使用法について詳しくは、ドロップレットのアップグレードをご覧ください。
たとえば、curl
を使用してAPIリクエストを行う場合は、次のコマンドを使用できます(APIトークンとドロップレットIDを置き換えます)。
curl -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer YOUR_API_TOKEN' -d '{"type":"migrate_droplet"}' "https://api.digitalocean.com/v2/droplets/droplet_id/actions"
これにより、指定されたドロップレットのアップグレードプロセスが開始されます。
結論
アップグレードプロセスを開始する前にドロップレットの電源がオフになっていた場合は、アップグレードが完了してもドロップレットの電源がオフのままになります。必ず電源をオンにしてください。 すべてのサービスが期待どおりに実行されていることを確認してください。
何か問題があれば、下のコメントに残してください!