Pemecahan Masalah: Amazon MQ Umum - Amazon MQ

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

Pemecahan Masalah: Amazon MQ Umum

Gunakan informasi di bagian ini untuk membantu Anda mendiagnosis masalah umum yang mungkin Anda temui saat bekerja dengan broker Amazon MQ, seperti masalah yang menghubungkan ke broker Anda, dan reboot broker.

Saya tidak dapat terhubung ke konsol web broker atau titik akhir saya.

Jika Anda mengalami masalah saat terhubung ke broker Anda menggunakan konsol web atau titik akhir tingkat kabel, kami merekomendasikan langkah-langkah berikut.

  1. Periksa apakah Anda mencoba terhubung ke broker Anda dari balik firewall. Anda mungkin perlu mengkonfigurasi firewall untuk memungkinkan akses ke broker Anda.

  2. Periksa apakah Anda mencoba terhubung ke broker Anda menggunakan FIPStitik akhir. Amazon MQ hanya mendukung FIPS titik akhir saat menggunakan API operasi, dan bukan untuk koneksi tingkat kabel ke instans broker itu sendiri.

  3. Periksa apakah opsi Aksesibilitas Publik untuk broker Anda diatur ke Ya. Jika ini diatur ke Tidak, periksa aturan Access Control List (ACL) jaringan subnet Anda. Jika Anda telah membuat jaringan khususACLs, Anda mungkin perlu mengubah ACL aturan jaringan untuk menyediakan akses ke broker Anda. Untuk informasi selengkapnya tentang VPC jaringan Amazon, lihat Mengaktifkan akses internet di VPCPanduan Pengguna Amazon

  4. Periksa aturan Grup Keamanan broker Anda. Pastikan Anda mengizinkan koneksi ke port berikut:

    catatan

    Port berikut dikelompokkan menurut jenis mesin karena Amazon MQ untuk ActiveMQ dan Amazon MQ untuk RabbitMQ menggunakan port yang berbeda untuk koneksi.

    Amazon MQ for ActiveMQ
    • Konsol web — Pelabuhan 8162

    • OpenWire — Pelabuhan 61617

    • AMQP— Pelabuhan 5671

    • STOMP— Pelabuhan 61614

    • MQTT— Pelabuhan 8883

    • WSS— Pelabuhan 61619

    Amazon MQ for RabbitMQ
    • Konsol dan manajemen web API — Port 443 dan 15671

    • AMQP— Pelabuhan 5671

  5. Jalankan tes konektivitas jaringan berikut untuk jenis mesin broker Anda.

    catatan

    Untuk broker tanpa aksesibilitas publik, jalankan pengujian dari EC2 instans Amazon di Amazon VPC yang sama dengan broker MQ Amazon Anda dan evaluasi tanggapannya.

    Amazon MQ for ActiveMQ
    Untuk menguji Amazon MQ Anda untuk konektivitas jaringan broker ActiveMQ
    1. Buka terminal baru atau jendela baris perintah.

    2. Jalankan nslookup perintah berikut untuk menanyakan DNS catatan broker Anda. Untuk penerapan aktif/siaga, uji titik akhir aktif dan siaga. Titik akhir aktif/siaga diidentifikasi dengan akhiran, -1 atau -2 ditambahkan ke ID broker unik. Ganti titik akhir dengan informasi Anda.

      $ nslookup b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com

      Jika kueri berhasil, Anda akan melihat output yang mirip dengan berikut ini.

      Non-authoritative answer:
      Server:  dns-resolver-corp-sfo-1.sfo.corp.amazon.com
      Address:  172.10.123.456
      
      Name:    ec2-12-345-123-45.us-west-2.compute.amazonaws.com
      Address:  12.345.123.45
      Aliases:  b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com

      Alamat IP yang diselesaikan harus sesuai dengan alamat IP yang disediakan di konsol Amazon MQ. Ini menunjukkan bahwa nama domain diselesaikan dengan benar di DNS server, dan Anda dapat melanjutkan ke langkah berikutnya.

    3. Jalankan telnet perintah berikut untuk menguji jalur jaringan untuk broker Anda. Ganti titik akhir dengan informasi Anda. Ganti port dengan nomor port 8162 untuk konsol web, atau port tingkat kabel lainnya untuk menguji protokol tambahan sesuai kebutuhan.

      catatan

      Untuk penerapan aktif/siaga, Anda akan menerima pesan Connect failed kesalahan jika Anda menjalankan telnet dengan titik akhir siaga. Ini diharapkan, karena instance siaga itu sendiri sedang berjalan, tetapi proses ActiveMQ tidak berjalan dan tidak memiliki akses ke volume penyimpanan Amazon broker. EFS Jalankan perintah untuk keduanya -1 dan -2 titik akhir untuk memastikan Anda menguji instance aktif dan siaga.

      $ telnet b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com port

      Untuk instance aktif, Anda akan melihat output yang mirip dengan berikut ini.

      Connected to b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com.
      Escape character is '^]'.
    4. Lakukan salah satu dari berikut ini.

      • Jika telnet perintah berhasil, periksa EstablishedConnectionsCountmetrik dan konfirmasikan bahwa broker belum mencapai batas koneksi tingkat kabel maksimum. Anda juga dapat mengonfirmasi apakah batas telah tercapai dengan meninjau General log broker. Jika metrik ini lebih besar dari nol, maka setidaknya ada satu klien yang saat ini terhubung ke broker. Jika metrik menunjukkan koneksi nol, maka lakukan tes telnet jalur lagi dan tunggu setidaknya satu menit sebelum memutuskan sambungan, karena metrik broker diterbitkan setiap menit.

      • Jika telnet perintah gagal, periksa status elastic network interface broker Anda, dan konfirmasikan bahwa statusnya adalahin-use. Buat log VPC aliran Amazon untuk antarmuka jaringan setiap instans, dan tinjau log aliran yang dihasilkan. Cari alamat IP broker saat Anda menjalankan telnet perintah, dan konfirmasikan paket koneksiACCEPTED, termasuk paket pengembalian. Untuk informasi selengkapnya, dan untuk melihat contoh log alur, lihat Contoh catatan log aliran di Panduan VPC Pengembang Amazon.

    5. Jalankan curl perintah berikut untuk memeriksa konektivitas ke konsol web admin ActiveMQ.

      $ curl https://b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com:8162/index.html

      Jika perintah berhasil, output harus berupa HTML dokumen yang mirip dengan berikut ini.

      <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
      <html>
          <head>
              <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
              <title>Apache ActiveMQ</title>
              ...
      
    Amazon MQ for RabbitMQ
    Untuk menguji Amazon MQ Anda untuk konektivitas jaringan broker RabbitMQ
    1. Buka terminal baru atau jendela baris perintah.

    2. Jalankan nslookup perintah berikut untuk menanyakan DNS catatan broker Anda. Ganti titik akhir dengan informasi Anda.

      $ nslookup b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com

      Jika kueri berhasil, Anda akan melihat output yang mirip dengan berikut ini.

      Non-authoritative answer:
      Server:  dns-resolver-corp-sfo-1.sfo.corp.amazon.com
      Address:  172.10.123.456
      
      Name:    rabbit-broker-1c23e456ca78-b9000123b4ebbab5.elb.us-west-2.amazonaws.com
      Addresses:  52.12.345.678
                52.23.234.56
                41.234.567.890
                54.123.45.678
      Aliases:  b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
    3. Jalankan telnet perintah berikut untuk menguji jalur jaringan untuk broker Anda. Ganti titik akhir dengan informasi Anda. Anda dapat mengganti port dengan port 443 untuk konsol web, dan 5671 untuk menguji koneksi tingkat kabelAMQP.

      $ telnet b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com port

      Jika perintah berhasil, Anda akan melihat output yang mirip dengan berikut ini.

      Connected to b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com.
      Escape character is '^]'.
      catatan

      Koneksi telnet akan menutup secara otomatis setelah beberapa detik.

    4. Lakukan salah satu dari berikut ini.

      • Jika telnet perintah berhasil, periksa ConnectionCountmetrik dan konfirmasikan bahwa broker belum mencapai nilai yang ditetapkan dalam kebijakan max-connectionsdefault. Anda juga dapat mengonfirmasi apakah batas telah tercapai dengan meninjau grup Connection.log log broker. Jika metrik ini lebih besar dari nol, setidaknya ada satu klien yang saat ini terhubung ke broker. Jika metrik menunjukkan koneksi nol, maka lakukan tes telnet jalur lagi. Anda mungkin perlu mengulangi proses ini jika koneksi ditutup sebelum broker Anda menerbitkan metrik koneksi baru. CloudWatch Metrik diterbitkan setiap menit.

      • Untuk broker tanpa aksesibilitas publik, jika telnet perintah gagal, periksa status antarmuka jaringan elastis broker Anda, dan konfirmasikan bahwa statusnya. in-use Buat log VPC aliran Amazon untuk setiap antarmuka jaringan, dan tinjau log aliran yang dihasilkan. Cari alamat IP pribadi broker saat Anda telnet perintah dipanggil, dan konfirmasikan paket koneksiACCEPTED, termasuk paket pengembalian. Untuk informasi selengkapnya, dan untuk melihat contoh log alur, lihat Contoh catatan log aliran di Panduan VPC Pengembang Amazon.

        catatan

        Langkah ini tidak berlaku untuk Amazon MQ untuk broker RabbitMQ dengan aksesibilitas publik.

    5. Jalankan curl perintah berikut untuk memeriksa konektivitas ke konsol web admin RabbitMQ.

      $ curl https://b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com:443/index.html

      Jika perintah berhasil, output harus berupa HTML dokumen yang mirip dengan berikut ini.

      <!DOCTYPE html>
      <html>
          <head>
              <meta http-equiv="X-UA-Compatible" content="IE=edge" />
              <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
              <title>RabbitMQ Management</title>
              ...

Broker saya sedang berjalan, dan saya dapat memverifikasi konektivitas menggunakantelnet, tetapi klien saya tidak dapat terhubung dan mengembalikan SSL pengecualian.

Sertifikat titik akhir broker Anda mungkin telah diperbarui selama jendela pemeliharaan broker. Sertifikat broker Amazon MQ diputar secara berkala untuk memastikan ketersediaan dan keamanan broker yang berkelanjutan.

Sebaiknya gunakan otoritas sertifikat root Amazon (CA) di Amazon Trust Services untuk mengautentikasi di toko kepercayaan klien Anda. Semua sertifikat broker Amazon MQ ditandatangani dengan root CA ini. Dengan menggunakan root CA Amazon, Anda tidak perlu lagi mengunduh sertifikat broker Amazon MQ baru setiap kali ada pembaruan sertifikat di broker.

Saya membuat broker tetapi pembuatan broker gagal.

Jika broker Anda dalam CREATION_FAILED status, lakukan hal berikut.

  • Periksa IAM izin Anda. Untuk membuat broker harus menggunakan IAM kebijakan AWS terkelola AmazonMQFullAccess atau memiliki set EC2 izin Amazon yang benar dalam IAM kebijakan kustom Anda. Untuk mempelajari lebih lanjut tentang EC2 izin Amazon yang diperlukan yang Anda perlukan, lihat IAMizin yang diperlukan untuk membuat broker Amazon MQ.

  • Periksa apakah subnet yang Anda pilih untuk broker Anda ada di Amazon Virtual Private Cloud bersama (VPC). Untuk membuat broker Amazon MQ di Amazon bersamaVPC, Anda harus membuatnya di akun yang memiliki Amazon. VPC

Broker saya memulai kembali dan saya tidak yakin mengapa.

Jika broker Anda telah memulai ulang secara otomatis, itu mungkin karena salah satu alasan berikut.

  • Broker Anda mungkin telah memulai kembali karena jendela pemeliharaan mingguan yang dijadwalkan. Secara berkala, Amazon MQ melakukan pemeliharaan pada perangkat keras, sistem operasi, atau perangkat lunak mesin dari broker pesan. Durasi pemeliharaan bervariasi, tetapi dapat bertahan hingga dua jam, tergantung pada operasi yang dijadwalkan untuk broker pesan Anda. Broker dapat memulai kembali kapan saja selama jendela pemeliharaan dua jam. Untuk informasi lebih lanjut tentang jendela pemeliharaan broker, lihatMenjadwalkan jendela pemeliharaan untuk broker Amazon MQ.

  • Jenis instans broker Anda mungkin tidak sesuai dengan beban kerja aplikasi Anda. Misalnya, menjalankan beban kerja produksi pada a mq.t2.micro dapat mengakibatkan broker kehabisan sumber daya. CPUPemanfaatan yang tinggi, atau penggunaan memori broker yang tinggi dapat menyebabkan broker tiba-tiba memulai kembali. Untuk melihat berapa banyak CPU dan memori yang digunakan oleh broker Anda, gunakan CloudWatch metrik berikut untuk jenis mesin Anda.

    • Amazon MQ untuk ActiveMQ - Periksa persentase unit EC2 komputasi Amazon CpuUtilization yang dialokasikan yang saat ini digunakan broker. HeapUsagePeriksa persentase batas memori JVM ActiveMQ yang digunakan broker saat ini.

    • Amazon MQ untuk RabbitMQ — Periksa SystemCpuUtilization persentase unit EC2 komputasi Amazon yang dialokasikan yang saat ini digunakan broker. Periksa RabbitMQMemUsed volume yang RAM digunakan dalam Bytes, dan RabbitMQMemLimit bagi dengan persentase memori yang digunakan oleh node RabbitMQ.

    Untuk informasi selengkapnya tentang jenis instans broker dan cara memilih jenis instans yang tepat untuk beban kerja Anda, lihatBroker instance types.