インスタンスのメタデータ取得方法二種紹介


この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

初めに

協栄情報の陸です。

やりたいこと

ここでは、Pythonを使ってインスタンスのメタデータを取得する2つの方法をご紹介します。

  • python独自のライブラリ: uillib
  • サードパーティライブラリ:requests

前提条件

メタデータを解析するためにインスタンス環境で実行する必要があり、そうしないと接続タイムアウトエラーが発生します。
file

操作

urllib

メタ・データを出力するテスト・コードを書く

テストファイルを実行すると、コンソールにメタデータのすべての情報が表示されます。
file

requests

まず requests をインストールし、[pip3 install requests] というコマンドを入力する。
file
テストコードを書き、メタデータを出力する
file
テストファイルを実行すると、コンソールにメタデータのすべての情報が表示されます。
file

他のデータ

メタデータを取得した後、URLのメタデータの後に欲しい情報のフィールドを追加すれば、特定のデータを取得することができます。以下は、インスタンスIDを取得するデモです。
file

file

code

import requests
import urllib

url="http://169.254.169.254/latest/meta-data"
meta_data = urllib.request.Request(url)
respons_message = urllib.request.urlopen(az_obj).read().decode('utf-8')

instance_id="http://169.254.169.254/latest/meta-data/instance-id"
respons_message = requests.get(instance_id).text

以上、よろしくお願いします

Last modified: 2024-02-05

Author