Memecahkan masalah jaringan dengan menggunakan metrik dan log Network Watcher

Selesai

Jika Anda ingin mendiagnosis masalah dengan cepat, Anda harus memahami informasi yang tersedia di log Azure Network Watcher.

Di perusahaan teknik Anda, Anda ingin meminimalkan waktu yang diperlukan staf Anda untuk mendiagnosis dan menyelesaikan masalah konfigurasi jaringan. Anda ingin memastikan bahwa mereka mengetahui informasi mana yang tersedia dan di log mana.

Dalam modul ini, Anda akan berfokus pada log aliran, log diagnostik, dan analitik lalu lintas. Anda akan mempelajari bagaimana alat-alat ini dapat membantu memecahkan masalah jaringan Azure.

Penggunaan dan kuota

Anda dapat menggunakan setiap sumber daya Microsoft Azure hingga batas kuotanya. Setiap langganan memiliki kuota terpisah, dan penggunaan dilacak per langganan. Hanya satu instans Network Watcher yang diperlukan per langganan per wilayah. Instans ini memberi Anda tampilan penggunaan dan kuota, sehingga Anda dapat melihat apakah Anda berisiko mencapai kuota.

Untuk melihat informasi penggunaan dan kuota, buka Semua Layanan>Jaringan>Network Watcher, lalu pilih Penggunaan dan kuota. Anda akan melihat data terperinci berdasarkan penggunaan dan lokasi sumber daya. Data untuk metrik berikut ditangkap:

  • Antarmuka jaringan
  • Network security groups (NSG)
  • Jaringan virtual
  • Alamat IP publik

Berikut adalah contoh yang menunjukkan penggunaan dan kuota di portal:

Screenshot showing usage and quotas by using Network Watcher.

Log

Log diagnostik jaringan menyediakan data terperinci. Anda akan menggunakan data ini untuk memahami masalah konektivitas dan performa dengan lebih baik. Ada tiga alat tampilan log di Network Watcher:

  • Log alur NSG
  • Log Diagnostik
  • Analitik lalu lintas

Mari kita lihat tiap-tiap alat ini.

Log alur NSG

Dalam log alur NSG, Anda dapat melihat informasi tentang lalu lintas IP masuk dan keluar pada kelompok keamanan jaringan. Log alur memperlihatkan alur keluar dan masuk dengan basis aturan, berdasarkan adaptor jaringan yang diterapkan alur tersebut. Log aliran NSG menunjukkan apakah lalu lintas diizinkan atau ditolak berdasarkan informasi 5-tuple yang ditangkap. Informasi ini mencakup:

  • IP Sumber
  • Port Sumber
  • IP Tujuan
  • Port tujuan
  • Protokol

Diagram ini memperlihatkan alur kerja yang diikuti NSG.

Screenshot showing the workflow that the NSG follows from inbound traffic to rule matches to allowing or denying a packet.

Log alur menyimpan data dalam file JSON. Mungkin sulit untuk mendapatkan wawasan tentang data ini dengan mencari file log secara manual, terutama jika Anda memiliki penyebaran infrastruktur yang besar di Azure. Untuk mengatasi masalah ini, gunakan Power BI.

Di Power BI, Anda dapat memvisualisasikan log alur NSG dengan banyak cara. Misalnya:

  • Top talker (alamat IP)
  • Aliran berdasarkan arah (masuk dan keluar)
  • Aliran berdasarkan keputusan (diizinkan dan ditolak)
  • Aliran menurut port tujuan

Anda juga dapat menggunakan alat sumber terbuka untuk menganalisis log Anda, seperti Elastic Stack, Grafana, dan Graylog.

Catatan

Log alur NSG tidak mendukung akun penyimpanan di portal klasik Azure.

Log Diagnostik

Di Network Watcher, log diagnostik adalah tempat terpusat guna mengaktifkan dan menonaktifkan log untuk sumber daya jaringan Azure. Sumber daya ini mungkin mencakup NSG, IP publik, load balancer, dan gateway aplikasi. Setelah mengaktifkan log yang Anda inginkan, Anda bisa menggunakan alat untuk membuat kueri dan menampilkan entri log.

Anda bisa mengimpor log diagnostik ke Power BI dan alat lain untuk menganalisisnya.

Analitik lalu lintas

Untuk menyelidiki aktivitas pengguna dan aplikasi di seluruh jaringan cloud Anda, gunakan analitik lalu lintas.

Alat ini memberikan wawasan tentang aktivitas jaringan di seluruh langganan. Anda dapat mendiagnosis ancaman keamanan seperti port terbuka, VM yang berkomunikasi dengan jaringan buruk yang telah diketahui, dan pola arus lalu lintas. Analitik lalu lintas menganalisis log aliran NSG di seluruh wilayah dan langganan Azure. Anda dapat menggunakan data untuk mengoptimalkan performa jaringan.

Alat ini memerlukan Log Analytics. Ruang kerja Log Analytics harus ada di wilayah yang didukung.

Menggunakan skenario kasus

Sekarang, mari kita lihat beberapa skenario kasus penggunaan di mana metrik dan log Azure Network Watcher dapat membantu.

Laporan pelanggan tentang performa lambat

Untuk mengatasi performa lambat, Anda perlu menentukan akar penyebab masalah:

  • Apakah terlalu banyak lalu lintas yang membatasi lalu lintas server?
  • Apakah ukuran VM sudah sesuai untuk pekerjaan itu?
  • Apakah ambang batas skalabilitas sudah ditetapkan dengan tepat?
  • Apakah terjadi serangan berbahaya?
  • Apakah konfigurasi penyimpanan VM sudah benar?

Pertama, periksa apakah ukuran VM sudah sesuai untuk pekerjaan tersebut. Selanjutnya, aktifkan Azure Diagnostics pada VM untuk mendapatkan lebih banyak data terperinci untuk metrik tertentu, seperti penggunaan CPU dan penggunaan memori. Untuk mengaktifkan diagnostik VM melalui portal, buka VM, pilih Pengaturan Diagnostik, lalu aktifkan diagnostik.

Mari kita asumsikan bahwa Anda sudah memiliki VM yang telah berjalan dengan baik. Namun, performa VM baru-baru ini terdegradasi. Untuk mengidentifikasi apakah Anda memiliki hambatan sumber daya, Anda perlu meninjau data yang diambil.

Mulailah dengan rentang waktu data yang diambil sebelum, selama, dan setelah masalah yang dilaporkan guna mendapatkan tampilan performa yang akurat. Grafik ini juga dapat berguna sebagai rujukan beragam perilaku sumber daya dalam periode yang sama. Anda akan memeriksa:

  • Hambatan CPU
  • Hambatan memori
  • Hambatan disk

Hambatan CPU

Saat Anda melihat masalah performa, Anda dapat memeriksa tren untuk memahami apakah itu memengaruhi server Anda. Untuk melihat tren, dari portal, gunakan grafik pemantauan. Anda mungkin melihat berbagai jenis pola pada grafik pemantauan:

  • Lonjakan terisolasi. Lonjakan mungkin terkait dengan tugas terjadwal atau peristiwa yang diharapkan. Jika Anda tahu apa tugas ini, apakah berjalan pada tingkat performa yang diperlukan? Jika performanya OK, Anda mungkin tidak perlu meningkatkan kapasitasnya.
  • Lonjakan naik dan konstan. Beban kerja baru dapat menyebabkan tren ini. Aktifkan pemantauan di VM untuk mengetahui proses apa yang menyebabkan beban tersebut. Peningkatan konsumsi mungkin karena kode yang tidak efisien atau mungkin konsumsi normal beban kerja baru. Jika konsumsi normal, apakah proses beroperasi pada tingkat performa yang diminta?
  • Konstan. Apakah VM Anda selalu seperti ini? Jika demikian, Anda harus mengidentifikasi proses yang mengonsumsi sebagian besar sumber daya dan mempertimbangkan penambahan kapasitas.
  • Peningkatan stabil. Apakah Anda melihat peningkatan konsumsi yang konstan? Jika demikian, tren ini mungkin menunjukkan kode yang tidak efisien atau proses yang mengambil lebih banyak beban kerja pengguna.

Jika Anda mengamati penggunaan CPU yang tinggi, Anda dapat:

  • Meningkatkan ukuran VM untuk menskalakan dengan lebih banyak core.
  • Selidiki masalah ini lebih lanjut. Temukan aplikasi dan prosesnya, dan pecahkan masalah yang diperlukan.

Jika Anda meningkatkan VM dan CPU masih berjalan di atas 95 persen, apakah performa aplikasi lebih baik, atau apakah throughput aplikasi lebih tinggi ke tingkat yang dapat diterima? Jika tidak, pecahkan masalah tiap-tiap aplikasi tersebut.

Hambatan memori

Anda dapat melihat jumlah memori yang digunakan oleh VM tersebut. Log akan membantu Anda memahami tren dan jika memetakan ke waktu ketika Anda melihat masalah. Anda tidak boleh memiliki kurang dari 100 MB memori yang tersedia kapan saja. Perhatikan tren berikut:

  • Lonjakan dan konsumsi konstan. Penggunaan memori yang tinggi mungkin bukan penyebab performa buruk. Beberapa aplikasi, seperti mesin database relasional, intensif memori berdasarkan desain. Tetapi jika ada beberapa aplikasi yang haus memori, Anda mungkin melihat performa yang buruk karena pertikaian memori menyebabkan pemangkasan dan paging ke disk. Proses ini akan menyebabkan dampak performa negatif.
  • Konsumsi yang terus meningkat. Tren ini mungkin merupakan pemanasan aplikasi. Ini umum terjadi ketika mesin database dimulai. Namun, masalah ini mungkin juga merupakan tanda kebocoran memori di aplikasi.
  • Penggunaan file halaman atau file pertukaran. Periksa apakah Anda menggunakan file halaman Windows dengan sangat, atau file swap Linux, yang terletak di /dev/sdb.

Untuk mengatasi penggunaan memori yang tinggi, pertimbangkan solusi ini:

  • Untuk bantuan segera atau penggunaan file halaman, tingkatkan ukuran VM untuk menambahkan memori, lalu pantau.
  • Selidiki masalah ini lebih lanjut. Temukan aplikasi atau proses yang menyebabkan kemacetan dan atasi masalahnya. Jika Anda mengetahui aplikasinya, lihat apakah Anda dapat menutup alokasi memorinya.

Hambatan disk

Performa jaringan mungkin juga terkait dengan subsistem penyimpanan VM. Anda dapat menyelidiki akun penyimpanan untuk VM di portal. Untuk mengidentifikasi masalah dengan penyimpanan, lihat metrik performa dari diagnostik akun penyimpanan dan diagnostik VM. Cari tren utama ketika masalah terjadi dalam rentang waktu tertentu.

  • Untuk memeriksa batas waktu Azure Storage, gunakan metrik ClientTimeOutError, ServerTimeOutError,AverageE2ELatency, AverageServerLatency, dan TotalRequests. Jika Anda melihat nilai dalam metrik TimeOutError, operasi I/O memakan waktu terlalu lama dan waktu habis. Jika Anda melihat peningkatan AverageServerLatency pada saat yang sama dengan TimeOutErrors,itu mungkin masalah platform. Sampaikan kasus kepada dukungan teknis Microsoft.
  • Untuk memeriksa pembatasan Azure Storage, gunakan metrik akun penyimpanan ThrottlingError. Jika Anda melihat pembatasan, Anda mencapai batas IOPS akun. Anda dapat memeriksa masalah ini dengan menyelidiki metrik TotalRequests.

Untuk mengatasi masalah pemanfaatan dan latensi disk yang tinggi:

  • Optimalkan VM I/O untuk menskalakan batas virtual hard disk (VHD).
  • Tingkatkan throughput dan kurangi latensi. Jika Anda mendapati bahwa Anda memiliki aplikasi peka latensi dan memerlukan throughput tinggi, migrasikan VHD Anda ke Azure Premium Storage.

Aturan firewall komputer virtual yang memblokir lalu lintas

Untuk memecahkan masalah aliran NSG, gunakan alat verifikasi alur IP Network Watcher dan pencatatan alur NSG untuk menentukan apakah NSG atau User Defined Routing (UDR) mengganggu arus lalu lintas.

Jalankan verifikasi aliran IP, dan tentukan VM lokal dan VM jarak jauh. Setelah Anda memilih Periksa, Azure menjalankan pengujian logis pada aturan di tempat. Jika hasilnya adalah akses tersebut diperbolehkan, gunakan log aliran NSG.

Di portal, buka NSG. Pada pengaturan log alur, pilih Aktif. Sekarang coba sambungkan lagi ke VM. Gunakan analitik lalu lintas Network Watcher untuk memvisualisasikan data. Jika hasilnya adalah bahwa akses diizinkan, tidak ada aturan NSG yang sedang berjalan.

Jika Anda telah mencapai titik ini dan masih belum mendiagnosis masalahnya, mungkin ada sesuatu yang salah pada VM jarak jauh. Nonaktifkan firewall pada VM jarak jauh, lalu uji ulang konektivitas. Jika Anda dapat menyambungkan ke VM jarak jauh dengan firewall dinonaktifkan, verifikasi pengaturan firewall jarak jauh. Kemudian aktifkan kembali firewall.

Ketidakmampuan subnet front end dan back end untuk berkomunikasi

Secara default, semua subnet dapat berkomunikasi di Azure. Jika dua VM pada dua subnet tidak dapat berkomunikasi, harus ada konfigurasi yang memblokir komunikasi. Sebelum Anda memeriksa log alur, jalankan alat verifikasi aliran IP dari VM ujung depan ke VM ujung belakang. Alat ini menjalankan uji logis pada aturan di jaringan.

Jika hasilnya adalah NSG pada subnet back end yang memblokir semua komunikasi, konfigurasi ulang NSG tersebut. Untuk tujuan keamanan, Anda harus memblokir beberapa komunikasi dengan ujung depan karena ujung depan terpapar ke internet publik.

Dengan memblokir komunikasi ke ujung belakang, Anda membatasi jumlah paparan jika terjadi malware atau serangan keamanan. Namun, jika NSG memblokir semuanya, berarti salah dikonfigurasi. Aktifkan protokol dan port tertentu yang diperlukan.