Topik ini menjelaskan ID instans tambahan yang perlu Anda konfigurasikan pada klien untuk setiap tipe instans saat menghubungkan ke instans otentikasi open-source melalui titik akhir publik.
Cakupan penerapan
Hubungkan ke server menggunakan titik akhir publik instans otentikasi open-source.
Prasyarat
Sebelum melakukan koneksi, lengkapi konfigurasi berikut:
Untuk memastikan keamanan akses, Anda harus mengaktifkan daftar putih alamat IP publik saat mengakses instans melalui Internet. Tambahkan alamat IP publik atau Blok CIDR aktual dari klien ke daftar putih tersebut. Hanya klien dalam rentang daftar putih yang dapat mengakses instans.
Pada halaman Users and Permissions instans, buat username dan password kustom, lalu berikan izin operasi kepada pengguna tersebut pada vhost target dan resource terkait. Untuk informasi lebih lanjut, lihat Users and Permissions.
Tambahkan alamat IP publik atau Blok CIDR aktual dari klien ke daftar putih alamat IP publik instans. Untuk informasi lebih lanjut, lihat Whitelist.
Pada halaman Instance Details, peroleh Instance ID dan titik akhir publik. Salin langsung titik akhir publik yang ditampilkan di Konsol. Jangan menggabungkan nama domain secara manual.
Konfigurasikan Instance ID pada client
Saat melakukan koneksi melalui titik akhir publik, persyaratan konfigurasi klien berbeda-beda tergantung edisinya:
Seri instans | Edition | Instance ID diperlukan | Deskripsi |
Serverless | (Exclusive) Pay-by-Provisioned-Capacity-and-Elastic-Traffic | No | Server dapat secara otomatis mengenali instans target. |
Serverless | (Shared) Pay-by-Provisioned-Capacity-and-Elastic-Traffic | Yes | Client harus menentukan instans target melalui AMQP Client Properties. |
Serverless | (Shared) Pay-by-Messaging-Request | Yes | Client harus menentukan instans target melalui AMQP Client Properties. |
Subscription | Enterprise Platinum Edition | No | Server dapat secara otomatis mengenali instans target. |
Subscription | Enterprise Edition | Yes | Client harus menentukan instans target melalui AMQP Client Properties. |
Contoh konfigurasi Java
Jika edisi Anda memerlukan Instance ID (lihat tabel di atas), konfigurasikan titik akhir publik, username, password, dan vhost sesuai petunjuk dalam Use an SDK to send and receive messages. Kemudian, tambahkan konfigurasi berikut sebelum memanggil newConnection():
String instanceId = "rabbitmq-cn-xxxxxxxx";
// Factory telah dikonfigurasi dengan titik akhir publik, username, password, dan vhost.
Map<String, Object> clientProperties =
new HashMap<String, Object>(factory.getClientProperties());
clientProperties.put("aliyun_rabbitmq_instance_id", instanceId);
// Beberapa instans memerlukan konfigurasi ini.
// clientProperties.put("connection_name", "{__rabbitmq-cn-xxxxx__}"); // TODO: Ganti dengan Instance ID aktual.
factory.setClientProperties(clientProperties);
Connection connection = factory.newConnection();Perhatikan hal-hal berikut:
Nilai
aliyun_rabbitmq_instance_idharus berupa Instance ID yang ditampilkan di Konsol, bukan titik akhir publik.Untuk edisi (Shared) Pay-by-Provisioned-Capacity-and-Elastic-Traffic, edisi (Shared) Pay-by-Messaging-Request seri Serverless, dan edisi Enterprise Edition seri Subscription, Anda harus menyetel properti ini sebelum membuat koneksi.
Salin dan pertahankan properti default dari
factory.getClientProperties()untuk menghindari penimpaan informasi klien bawaan dari klien Java.Edisi (Exclusive) Pay-by-Provisioned-Capacity-and-Elastic-Traffic seri Serverless dan edisi Enterprise Platinum Edition seri Subscription tidak memerlukan properti ini. Jika Anda tetap menyetelnya, nilainya harus sesuai dengan Instance ID aktual.
Pemecahan masalah kegagalan koneksi
Jika koneksi publik ditolak, periksa hal-hal berikut secara berurutan:
Verifikasi bahwa alamat IP publik aktual dari klien telah ditambahkan ke daftar putih alamat IP publik instans target.
Jika Anda menggunakan edisi (Shared) Pay-by-Provisioned-Capacity-and-Elastic-Traffic, edisi (Shared) Pay-by-Messaging-Request seri Serverless, atau edisi Enterprise Edition seri Subscription, verifikasi bahwa
aliyun_rabbitmq_instance_idtelah disetel dan persis sesuai dengan Instance ID target. Edisi (Exclusive) Pay-by-Provisioned-Capacity-and-Elastic-Traffic dan edisi Enterprise Platinum Edition tidak memerlukan properti ini.Verifikasi bahwa username dan password kustom benar serta pengguna memiliki izin akses ke vhost target.
Verifikasi bahwa klien dikonfigurasi dengan titik akhir publik instans, bukan titik akhir layanan OpenAPI.
Untuk masalah terkait timeout jaringan, izin resource, atau konfigurasi SDK umum, lihat Possible causes and solutions for connection failures.