Bagikan melalui


Memecahkan masalah konektivitas - Azure Event Grid

Ada berbagai alasan untuk aplikasi klien tidak dapat terhubung ke topik/domain Event Grid. Masalah konektivitas yang Anda alami mungkin permanen atau sementara. Jika masalah terjadi sepanjang waktu (permanen), Anda mungkin ingin memeriksa pengaturan firewall organisasi Anda, pengaturan firewall IP, tag layanan, titik akhir pribadi, dan banyak lagi. Untuk masalah sementara, menjalankan perintah untuk memeriksa paket yang ditarik, dan mendapatkan jejak jaringan dapat membantu memecahkan masalah.

Artikel ini memberikan tips untuk memecahkan masalah konektivitas dengan Azure Event Grid.

Memecahkan masalah konektivitas permanen

Jika aplikasi sama sekali tidak dapat terhubung ke pusat aktivitas, ikuti langkah-langkah dari bagian ini untuk memecahkan masalah.

Memeriksa apakah ada penonaktifan layanan

Periksa pemadaman layanan Azure Event Grid di situs status layanan Azure.

Periksa apakah port yang diperlukan untuk berkomunikasi dengan Azure Event Grid tidak diblokir oleh firewall organisasi

Verifikasi bahwa port yang digunakan dalam berkomunikasi dengan Azure Event Grid tidak diblokir di firewall organisasi Anda. Lihat tabel berikut untuk port keluar yang perlu Anda buka untuk berkomunikasi dengan Azure Event Grid.

Protokol Port
HTTPS 443

Berikut adalah contoh perintah yang memeriksa apakah port 443 diblokir.

.\psping.exe -n 25 -i 1 -q {sampletopicname}.{region}-{suffix}.eventgrid.azure.net:443 -nobanner

Di Linux:

telnet {sampletopicname}.{region}-{suffix}.eventgrid.azure.net 443

Verifikasi bahwa alamat IP diperbolehkan di firewall perusahaan Anda

Saat Anda bekerja dengan Azure, terkadang Anda harus mengizinkan rentang alamat IP atau URL tertentu di firewall atau proksi perusahaan Anda untuk mengakses semua layanan Azure yang Anda gunakan atau coba gunakan. Verifikasi bahwa lalu lintas diperbolehkan pada alamat IP yang digunakan oleh Event Grid. Untuk alamat IP yang digunakan oleh Azure Event Grid: lihat Azure IP Ranges and Service Tag - Public Cloud dan Service tag - AzureEventGrid.

Rentang IP Azure dan Tag Layanan - Dokumen Cloud Publik juga mencantumkan alamat IP menurut wilayah. Anda dapat mengizinkan rentang alamat untuk wilayah topik dan wilayah yang disandingkan di proxy atau firewall perusahaan Anda. Untuk informasi selengkapnya, lihat Replikasi Lintas-Wilayah di Azure: Kelangsungan bisnis dan pemulihan bencana.

Catatan

Alamat IP baru dapat ditambahkan ke tag layanan AzureEventGrid, meskipun tidak biasa. Jadi ada baiknya untuk melakukan pemeriksaan mingguan pada tag layanan.

Memastikan tag layanan AzureEventGrid diizinkan di grup keamanan jaringan Anda

Jika aplikasi Anda berjalan di dalam subnet dan ada grup keamanan jaringan terkait, konfirmasi apakah internet keluar diizinkan atau tag layanan AzureEventGrid diizinkan. Lihat Tag Layanan

Periksa pengaturan IP Firewall untuk Topik/Domain Anda

Periksa apakah alamat IP publik mesin tempat aplikasi berjalan tidak diblokir oleh topik EventGrid/firewall IP domain.

Secara default, topik/domain Event Grid dapat diakses dari internet selama permintaan dilengkapi dengan autentikasi dan otorisasi yang valid. Dengan IP firewall, Anda dapat membatasinya lebih lanjut hanya untuk satu set alamat IPv4 atau rentang alamat IPv4 di notasi CIDR (Classless Inter-Domain Routing).

Aturan firewall IP diterapkan di tingkat topik/domain Event Grid. Oleh karena itu, aturan berlaku untuk semua koneksi dari klien menggunakan propenyimpananl yang didukung. Setiap upaya koneksi dari alamat IP yang tidak cocok dengan aturan IP yang diizinkan pada topik/domain Event Grid ditolak sebagai terlarang. Respons tidak menyebutkan aturan IP.

Untuk informasi selengkapnya, lihat Mengonfigurasi aturan firewall IP untuk topik/domain Event Grid Azure.

Temukan alamat IP yang diblokir oleh IP Firewall

Aktifkan log diagnostik untuk topik/domain Event Grid Aktifkan log diagnostik. Anda akan melihat alamat IP untuk koneksi yang ditolak.

{
  "time": "2019-11-01T00:17:13.4389048Z",
  "resourceId": "/SUBSCRIPTIONS/SAMPLE-SUBSCTIPTION-ID/RESOURCEGROUPS/SAMPLE-RESOURCEGROUP-NAME/PROVIDERS/MICROSOFT.EVENTGRID/TOPICS/SAMPLE-TOPIC-NAME",
  "category": "PublishFailures",
  "operationName": "Post",
  "message": "inputEventsCount=null, requestUri=https://SAMPLE-TOPIC-NAME.region-suffix.eventgrid.azure.net/api/events, publisherInfo=PublisherInfo(category=User, inputSchema=EventGridEvent, armResourceId=/SUBSCRIPTIONS/SAMPLE-SUBSCTIPTION-ID/RESOURCEGROUPS/SAMPLE-RESOURCEGROUP-NAME/PROVIDERS/MICROSOFT.EVENTGRID/TOPICS/SAMPLE-TOPIC-NAME), httpStatusCode=Forbidden, errorType=ClientIPRejected, errorMessage=Publishing to SAMPLE-TOPIC-NAME.{region}-{suffix}.EVENTGRID.AZURE.NET by client {clientIp} is rejected due to IpAddress filtering rules."
}

Periksa apakah topik/domain EventGrid hanya dapat diakses menggunakan titik akhir privat

Jika topik/domain Event Grid dikonfigurasi agar hanya dapat diakses melalui titik akhir pribadi, konfirmasikan bahwa aplikasi klien mengakses topik/domain melalui titik akhir pribadi. Untuk mengonfirmasinya, periksa apakah aplikasi klien berjalan di dalam subnet dan ada titik akhir pribadi untuk topik/domain Event Grid di subnet tersebut.

Layanan Azure Private Link memungkinkan Anda mengakses Azure Event Grid melalui titik akhir pribadi di jaringan virtual Anda. Titik akhir privat adalah antarmuka jaringan yang menghubungkan Anda secara privat dan aman ke layanan yang didukung oleh Azure Private Link. Titik akhir privat menggunakan alamat IP privat dari VNet Anda, membawa layanan ke VNet Anda secara efektif. Semua lalu lintas ke layanan dapat dialihkan melalui titik akhir privat, sehingga tidak ada gateway, perangkat NAT, koneksi ExpressRoute atau VPN, atau alamat IP publik yang diperlukan. Lalu lintas antara jaringan virtual Anda dan layanan melintasi jaringan backbone Microsoft, menghilangkan paparan dari Internet publik. Anda dapat menyambungkan ke instans sumber daya Azure, memberi Anda tingkat granularitas tertinggi dalam kontrol akses.

Untuk informasi selengkapnya, lihat Mengonfigurasi titik akhir privat.

Memecahkan masalah konektivitas sementara

Jika Anda mengalami masalah konektivitas terputus-terputus, buka bagian berikut untuk tips pemecahan masalah.

Menjalankan perintah untuk memeriksa paket yang ditarik

Ketika ada masalah konektivitas terputus-putus, jalankan perintah berikut untuk memeriksa apakah ada paket yang dihentikan. Perintah ini akan mencoba untuk membangun 25 koneksi TCP yang berbeda setiap 1 detik dengan layanan. Kemudian, Anda dapat memeriksa berapa banyak koneksi yang berhasil/gagal dan juga melihat latensi koneksi TCP. Anda dapat mengunduh versi terbaru alat psping dari sini.

.\psping.exe -n 25 -i 1 -q {sampletopicname}.{region}-{suffix}.eventgrid.azure.net:443 -nobanner

Anda bisa menggunakan perintah yang setara jika Anda menggunakan alat lain seperti tcpping tcpping.exe.

Dapatkan jejak jaringan jika langkah sebelumnya tidak membantu dan lakukan analisis menggunakan alat seperti Wireshark. Hubungi Bagian Dukungan Microsoft jika diperlukan.

Peningkatan/hidupkan ulang layanan

Masalah konektivitas sementara dapat terjadi karena peningkatan dan hidupkan ulang layanan ujung belakang. Ketika terjadi, Anda mungkin melihat gejala-gejala berikut:

  • Mungkin ada penurunan pesan/permintaan masuk.
  • File log mungkin memuat pesan kesalahan.
  • Aplikasi mungkin terputus dari layanan selama beberapa detik.
  • Permintaan mungkin dibatasi sesaat.

Menangkap kesalahan sementara ini, mundur, lalu mencoba kembali panggilan akan memastikan kode Anda tahan terhadap masalah sementara ini.

Langkah berikutnya

Jika Anda memerlukan bantuan lainnya, posting masalah Anda di forum Stack Overflow atau buka tiket dukungan.