Layanan EC2 Metadata Instans Amazon - AWS SDK untuk Go v2

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Layanan EC2 Metadata Instans Amazon

Anda dapat menggunakan AWS SDK untuk Go untuk mengakses Layanan Metadata EC2 Instans Amazon. Paket feature/ec2/imdsGo menyediakan tipe Klien yang dapat digunakan untuk mengakses Layanan Metadata EC2 Instans Amazon. Operasi Client dan terkait dapat digunakan mirip dengan klien AWS layanan lain yang disediakan oleh SDK. Untuk mempelajari informasi selengkapnya tentang cara mengonfigurasi SDK, dan menggunakan klien layanan, lihat Konfigurasikan SDK danGunakan AWS SDK untuk Go v2 dengan AWS layanan.

Klien dapat membantu Anda dengan mudah mengambil informasi tentang instance di mana aplikasi Anda berjalan, seperti AWS Wilayah atau alamat IP lokal. Biasanya, Anda harus membuat dan mengirimkan permintaan HTTP untuk mengambil metadata instance. Sebagai gantinya, buat imds.Client untuk mengakses Layanan Metadata EC2 Instans Amazon menggunakan klien terprogram seperti Layanan lainnya. AWS

Misalnya untuk membangun klien:

import "context" import "github.com/aws/aws-sdk-go-v2/config" import "github.com/aws/aws-sdk-go-v2/feature/ec2/imds" // ... cfg, err := config.LoadDefaultConfig(context.TODO()) if err != nil { log.Printf("error: %v", err) return } client := imds.NewFromConfig(cfg)

Kemudian gunakan klien layanan untuk mengambil informasi dari kategori metadata seperti local-ipv4 (alamat IP pribadi dari instance).

localIp, err := client.GetMetadata(context.TODO(), &imds.GetMetadataInput{ Path: "local-ipv4", }) if err != nil { log.Printf("Unable to retrieve the private IP address from the EC2 instance: %s\n", err) return } content, _ := io.ReadAll(localIp.Content) fmt.Printf("local-ip: %v\n", string(content))

Untuk daftar semua kategori metadata, lihat Kategori metadata instans di Panduan Pengguna Amazon. EC2