Rackspace クラウド サーバーに保存されているサーバー イメージをダウンロードする方法を知っている人はいませんか。検索してみましたが、Rackspace ナレッジ ベースでも何も見つかりません。ファイル システムに保存されていることはわかっていますが、正確にはどこにあるのでしょうか。
サーバーからイメージをダウンロードすれば、ディスク容量を節約できますし、いつか (絶対にそんなことは起きないことを願いますが) イメージから復元する必要が本当に生じた場合には、イメージを簡単にアップロードし直すことができます。しかし、Rackspace のこの情報は非常にわかりにくいです。この質問だけのためにチケット/サポートを開きたくありません。同じ問題を抱えている人が他にもいて、助けてくれることを願っています。
私は CentOS 6.4 を使用しています。どんな助けでもいただければ大変ありがたいです。つまり、ファイル システムのどこにイメージが保存されているかがわかっていれば、それだけで十分です。
乾杯! ;)
答え1
現在、サーバーイメージをダウンロードする方法はありません。
今すぐできることはサーバーのイメージを作成する(これは保存された画像セクションを参照し、そこからイメージを復元します。これはあなたが求めているものではありませんが、現時点ではこれが限界です。
イメージ保存はOpenStackプロジェクトの一部であり、一目および OpenStack Swift (実質的には CloudFiles に保存されます)。この機能は存在しますが、現在 Rackspace では公開/実装されていません。
答え2
ステップ1、Rackspace クラウド コントロール パネル内の [ストレージ] > [ファイル] の下に、「export」という名前のコンテナーを作成します。
ステップ2、このスクリプトをカスタマイズして任意のUNIXマシンで実行しますまたは他の方法については、以下のドキュメントをお読みください。
#!/bin/bash
sudo apt-get install python-dev gcc python-pip
sudo pip install swiftly eventlet
SWIFTLY_AUTH_URL=https://identity.api.rackspacecloud.com/v2.0
# your Rackspace cloud username
# Username used to login to control panel
SWIFTLY_AUTH_USER=myuser
CUSTOMERID=123456798
# your Rackspace cloud API key
# Find the APIKey in the 'account settings' part of the menu of the control panel
APIKEY='fake0u23jiofds9032ijofds09823rijpo'
SWIFTLY_AUTH_KEY=$APIKEY
# 3 char region code for where your exported image is located (e.g., ORD)
SWIFTLY_REGION=DFW
REGION_EXPORTING_FROM=dfw
# what you want the downloaded image file to be named
LOCALFILENAME=MyDownloadedServer
# the container in Cloud Files containing your exported image
CONTAINER=export
# Find the image ID you'd like to make available on cloud files
# set the image id below of the image you want to copy to cloud files, see in control panel
IMAGEID=fake581e-c14561-3c46-45687-e045646675
IMAGEFILENAME=$IMAGEID # the name of your exported image in Cloud Files
# This section simply retrieves the TOKEN
TOKEN=$(curl -s https://identity.api.rackspacecloud.com/v2.0/tokens -X POST -d '{"auth":{"RAX-KSKEY:apiKeyCredentials":{"username":"'${SWIFTLY_AUTH_USER}'","apiKey":"'${APIKEY}'"}}}' -H "Content-type: application/json" | python -c 'import json, sys; data = json.loads(sys.stdin.read()); print data["access"]["token"]["id"]')
# IMPORTANT: change receiving_swift_container to whatever $CONTAINER is
# This section requests the Glance API to copy the cloud server image uuid to a cloud files container called export
curl "https://$REGION_EXPORTING_FROM.images.api.rackspacecloud.com/v2/$CUSTOMERID/tasks" -X POST -H "X-Auth-Token: $TOKEN" -H "Content-Type: application/json" -d '{"type": "export", "input": {"image_uuid": "'"$IMAGEID"'", "receiving_swift_container": "export"}}'
# The above command simply set a pending command. Go play a game while it finishes.
sleep 4h;
swiftly --auth-url=$SWIFTLY_AUTH_URL --auth-user=$SWIFTLY_AUTH_USER --auth-key=$SWIFTLY_AUTH_KEY --region=$SWIFTLY_REGION --verbose get --output=${LOCALFILENAME} ${CONTAINER}/${IMAGEFILENAME}
詳細情報については、
1) 画像をクラウドファイルにエクスポートする
API を使用して、Rackspace から Cloud Files コンテナにイメージをエクスポートできます。以下の記事でそのプロセスについて説明します。
Rackspace Cloud からクラウド サーバー イメージをエクスポートする
https://community.rackspace.com/products/f/25/t/7089?_ga=1.161905660.1332227198.1487618904
「Pitchfork」というツールも使用できます。ユーザー名と API キーを使用して Pitchfork にログインしたら、「画像」セクションに移動して「エクスポート」を選択します。その API 呼び出しを実行すると、1 つまたは複数の Cloud Files コンテナに画像が表示されるまでにしばらく時間がかかります。
ピッチフォーク:https://pitchfork.rax.io/
https://community.rackspace.com/products/f/25/t/6432?_ga=1.161936636.1332227198.1487618904
2) クラウドファイルから画像をダウンロードする
Swiftly を使用して、クラウド ファイルから画像をダウンロードできます。クラウド ファイル内のオブジェクトは 5 GB を超えることはできません。画像がこれより大きい場合は、複数のクラウド ファイル オブジェクトに分割され、Swiftly を使用してローカルにダウンロードして再構築できます。
https://support.rackspace.com/how-to/use-swiftly-to-download-an-exported-image/
答え3
Rackspace は現在、サーバー イメージをダウンロードする機能を公開していませんが、だからといって決して入手できないというわけではありません。
これは Rackspace によってまったく文書化されていませんが、過去には他の顧客のリクエストに応じて実行されています。
サーバーが応答せず、サポート チケットを入力すると、通常、Rackspace はサーバーの緊急スナップショットを取得し、そのダウンロード リンクを提供します。Linuxインスタンスの場合Rackspace はディスク/パーティションの gzip 圧縮された生のイメージを提供します。Windowsインスタンスの場合VHD を受け取ります。