Instance kontainer elastis (pod) mendukung alamat IPv4 dan IPv6. Dibandingkan dengan IPv4, IPv6 menyediakan lebih banyak alamat IP. Topik ini menjelaskan cara menetapkan alamat IPv6 ke sebuah pod.
Informasi latar belakang
Alamat IPv4 banyak digunakan, namun jumlahnya yang terbatas membatasi perkembangan Internet. Dibandingkan dengan IPv4, IPv6 menyediakan lebih banyak alamat IP dan memungkinkan lebih banyak perangkat untuk mengakses Internet. Untuk informasi lebih lanjut, lihat Apa itu gateway IPv6?
Berikut adalah batasan yang berlaku saat menetapkan alamat IPv6 ke pod:
Anda hanya dapat menetapkan satu alamat IPv6 ke sebuah pod.
Semua instance kontainer elastis yang dibuat dengan menentukan jumlah vCPU dan ukuran memori dapat diberikan alamat IPv6. Untuk instance kontainer elastis yang dibuat dengan menentukan tipe instance Elastic Compute Service (ECS), pastikan bahwa tipe instance ECS yang ditentukan mendukung alamat IPv6 sebelum menetapkan alamat tersebut. Untuk informasi tentang dukungan alamat IPv6 pada tipe instance ECS, lihat Ikhtisar keluarga instance.
Prasyarat
Blok CIDR IPv6 harus diaktifkan untuk virtual private cloud (VPC) tempat pod berada serta untuk vSwitch yang terhubung ke pod tersebut. Untuk informasi lebih lanjut, lihat Mengaktifkan IPv6 untuk VPC dan Mengaktifkan IPv6 untuk vSwitch.
Deskripsi konfigurasi
Dalam skenario yang melibatkan Kubernetes, Anda dapat menambahkan anotasi ke metadata pod untuk menetapkan alamat IPv6 ke pod. Setelah itu, Anda dapat mengonfigurasi dan mengaktifkan bandwidth Internet dari alamat IPv6 tersebut. Tabel berikut menjelaskan anotasi tersebut.
Anotasi | Contoh | Wajib | Deskripsi |
k8s.aliyun.com/eci-enable-ipv6 | "true" | Ya | Menentukan apakah akan menetapkan alamat IPv6 ke pod. |
k8s.aliyun.com/eci-ipv6-bandwidth-enable | "true" | Tidak | Menentukan apakah akan mengaktifkan akses Internet melalui alamat IPv6 untuk pod. |
k8s.aliyun.com/eci-ipv6-bandwidth | 200 | Tidak | Menentukan bandwidth puncak Internet dari alamat IPv6. Nilai yang valid:
Catatan Jika Anda tidak mengonfigurasi anotasi ini saat mengaktifkan akses Internet melalui alamat IPv6 untuk pod, bandwidth Internet default dari alamat IPv6 yang ditetapkan ke pod sama dengan bandwidth Internet maksimum yang didukung oleh gateway IPv6. |
Anotasi harus ditambahkan ke metadata dalam file konfigurasi pod. Sebagai contoh, saat membuat Deployment, tambahkan anotasi di bagian spec.template.metadata.
Untuk menggunakan fitur Elastic Container Instance, Anda hanya dapat menambahkan anotasi saat membuat pod berbasis Elastic Container Instance. Jika anotasi ditambahkan atau dimodifikasi saat memperbarui pod, anotasi tersebut tidak akan berlaku.
Contoh:
apiVersion: apps/v1
kind: Deployment
metadata:
name: test
labels:
app: test
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
name: nginx-test
labels:
app: nginx
alibabacloud.com/eci: "true"
annotations:
k8s.aliyun.com/eci-enable-ipv6: "true" # Menetapkan alamat IPv6 ke pod.
k8s.aliyun.com/eci-ipv6-bandwidth-enable: "true" # Mengaktifkan akses Internet melalui alamat IPv6 untuk pod.
k8s.aliyun.com/eci-ipv6-bandwidth: 100M # Mengonfigurasi bandwidth puncak Internet dari alamat IPv6.
spec:
containers:
- name: nginx
image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
ports:
- containerPort: 80Setelah membuat pod, jalankan perintah kubectl describe pod untuk melihat detail pod. Dalam anotasi yang dikembalikan, Anda dapat memperoleh alamat IPv6 pod dari bidang k8s.aliyun.com/allocated-ipv6Address.