Bagikan melalui


Studi Kasus: Penskalaan IIS 8 Pada Sistem Soket Prosesor DL980 G7 8-Proliant HP

oleh Microsoft

Whitepaper ini mengkompilasi temuan dari upaya bersama antara HP dan tim produk IIS untuk menilai kemampuan performa IIS yang berjalan pada sistem 8 arah HP. Laporan resmi ini juga berfungsi sebagai panduan penyebaran yang dapat digunakan oleh pelanggan untuk mengonfigurasi IIS pada sistem tersebut.

Abstrak: Studi kasus ini menjelaskan cara menyebarkan dan mengoptimalkan Microsoft IIS 8.0 Server pada sistem 8 arah dari HP.

Penulis: Hewlett-Packard (HP), IIS Product Group (IIS), Pusat Teknik Perusahaan Microsoft (EEC)

Pengantar

Beban kerja Server Web biasanya dikaitkan dengan server komoditas pada model peluasan skala. Ketika daya pemrosesan tambahan diperlukan, komputer tambahan ditambahkan ke kumpulan. Ini adalah model yang sangat umum, dan Microsoft Internet Information Services (IIS) memiliki beberapa fitur untuk membuat pendekatan seperti itu mudah dikonfigurasi dan disebarkan.

Biasanya model peningkatan skala dikaitkan dengan beban kerja lain, misalnya: SQL Server. Kenyataannya, meskipun, adalah bahwa selama Rilis Windows Server 2012, beberapa investasi dilakukan dalam infrastruktur IIS untuk lebih memungkinkan model peningkatan skala. Sebagai hasil dari investasi tersebut, IIS 8.0 dapat disebarkan dengan cara yang memanfaatkan semua karakteristik server skala besar tersebut. Ini memungkinkan pelanggan untuk melepaskan semua daya dan keandalan mesin tersebut.

Sebagai bagian dari siklus pengembangan Windows Server 2012, serangkaian pengujian performa dilakukan untuk mencirikan beban kerja IIS dalam hal performa. Pengujian tersebut dilakukan pada HP DL980 G7 menggunakan fasilitas di Pusat Teknik Perusahaan (EEC) Microsoft, yang merupakan fasilitas Validasi Pelanggan Microsoft untuk Windows Server.

Whitepaper ini mengkompilasi temuan dari upaya bersama antara HP dan tim produk IIS untuk menilai kemampuan performa IIS yang berjalan pada sistem 8 arah HP. Laporan resmi ini juga berfungsi sebagai panduan penyebaran yang dapat digunakan oleh pelanggan untuk mengonfigurasi IIS pada sistem tersebut.

Masalah Pelanggan

Secara umum, meningkatkan jumlah inti harus mengakibatkan peningkatan performa. Ketika pelanggan IIS menyebarkan aplikasi mereka pada perangkat keras sadar Non-Uniform-Memory-Access (NUMA) dengan Windows Server 2008 R2, mereka melihat bahwa setelah titik tertentu meningkatkan jumlah inti mengakibatkan penurunan performa. Hal ini terjadi karena biaya sinkronisasi memori perangkat lunak menimbang manfaat inti tambahan pada perangkat keras NUMA. IIS 8.0 di Windows server 2012 mengatasi masalah ini dengan mendistribusikan afinitas utas secara cerdas untuk proses pada perangkat keras NUMA, dan bukti konsep ini telah memungkinkan mengidentifikasi sistem operasi dan penyetelan IO jaringan untuk memastikan skalabilitas optimal IIS 8.0.

IIS 8.0

Internet Information Services (IIS) pada Windows Server 2012 sadar NUMA dan menyediakan konfigurasi optimal untuk administrator TI. Bagian berikut menjelaskan bagaimana IIS 8.0 memanfaatkan perangkat keras NUMA untuk memberikan performa yang optimal.

IIS mendukung dua cara berikut untuk mempartisi beban kerja:

  1. Jalankan beberapa proses pekerja dalam satu kumpulan aplikasi (yaitu taman web).
    Jika Anda menggunakan mode ini, secara default, kumpulan aplikasi dikonfigurasi untuk berjalan dalam satu proses pekerja. Untuk performa maksimum, Anda harus mempertimbangkan untuk menjalankan jumlah proses pekerja yang sama dengan simpul NUMA, sehingga ada afinitas 1:1 antara proses pekerja dan simpul NUMA. Ini dapat dilakukan dengan mengatur pengaturan AppPool " Proses Pekerja Maksimum" ke 0. Ketika pengaturan ini dikonfigurasi, IIS akan menentukan berapa banyak simpul NUMA yang tersedia pada perangkat keras dan akan memulai jumlah proses pekerja yang sama.
  2. Jalankan beberapa kumpulan aplikasi dalam beban kerja/situs tunggal.
    Dalam konfigurasi ini, beban kerja/situs dibagi menjadi beberapa kumpulan aplikasi. Misalnya, situs mungkin berisi beberapa aplikasi yang dikonfigurasi untuk dijalankan di kumpulan aplikasi terpisah. Secara efektif, konfigurasi ini menghasilkan menjalankan beberapa proses pekerja IIS untuk beban kerja/situs dan IIS dengan cerdas mendistribusikan afinitas proses untuk performa maksimum.

Bergantung pada beban kerja, administrator mempartisi beban kerja ke dalam beberapa proses pekerja. Setelah beban kerja dipartisi dengan benar, IIS 8.0 mengidentifikasi simpul NUMA yang paling optimal ketika proses pekerja IIS akan dimulai. Secara default, IIS memilih simpul NUMA dengan memori yang paling tersedia. IIS memiliki pengetahuan tentang konsumsi memori oleh setiap simpul NUMA dan menggunakan informasi ini untuk "menyeimbangkan beban" proses pekerja IIS. Opsi ini berbeda dari default Windows round-robin dan dirancang khusus untuk beban kerja IIS.

Terakhir, ada dua cara berbeda untuk mengonfigurasi afinitas untuk utas dari proses pekerja IIS ke simpul NUMA.

  1. Afinitas Lunak (default)
    Dengan afinitas lunak, jika simpul NUMA lain memiliki siklus yang tersedia, utas dari proses pekerja IIS mungkin dijadwalkan ke simpul NUMA yang tidak dikonfigurasi untuk afinitas. Pendekatan ini membantu memaksimalkan semua sumber daya yang tersedia pada sistem secara keseluruhan.
  2. Afinitas Keras
    Dengan afinitas keras, terlepas dari beban yang mungkin ada pada simpul NUMA lain pada sistem; semua utas dari proses pekerja IIS ditetapkan ke simpul NUMA yang dipilih yang dipilih untuk afinitas menggunakan desain di atas.

Meskipun Hard Affinity dapat memberikan performa keseluruhan yang lebih baik, menyiapkan Hard Affinity membutuhkan lebih banyak konfigurasi dan pemahaman perangkat keras yang lebih dalam. Selain itu, jika dikonfigurasi dengan tidak benar, itu juga menghasilkan performa yang lebih buruk. Jadi, konfigurasi defaultnya adalah Soft Affinity.

HP Platform

Latar belakang HP DL980 G7

DL980 G7 adalah server penskalaan HP Proliant pertama dengan 8 soket prosesor, menggunakan arsitektur HP PREMA yang menggabungkan pengontrol simpul dengan penembolokan CPU pintar dan fabric sistem redundan. Iterasi pertama server DL980 G7 menggunakan prosesor Intel® Xeon® seri 7500/6500 (alias Nehalem-EX) prosesor (SKU 4, 6- dan 8-core), 128 soket DIMM dan 16 slot PCIe. Versi kedua mendukung prosesor Intel® Xeon® E7-8800/4800/2800 (alias Westmere-EX) prosesor (hingga SKU 10-core). Dengan konfigurasi Intel Nehalem-EX saat ini dengan 8 prosesor, masing-masing dengan 8 core dan dengan hyper threading diaktifkan, Windows Server 2008 R2 memungkinkan total 128 Prosesor Logis, dukungan OS maksimum 2TB RAM dan 16 slot PCIe. Dengan prosesor SKU Intel Westmere-EX 10-core dan hyper threading diaktifkan, Windows Server 2008 R2 memungkinkan total 160 Prosesor Logis untuk DL980 G7. Dan hari ini, Windows Server 2012 memungkinkan 4TB RAM yang didukung platform ini.

Kemampuan performa dan skalabilitas server berbasis Intel 8 arah ini dengan pengontrol simpul skalabilitas HP melebihi apa pun yang sebelumnya ada di Intel/AMD dan memenuhi atau melebihi performa banyak platform UNIX, melakukannya pada titik harga yang jauh lebih rendah daripada platform UNIX. Selain itu Nehalem-EX baru ini & Westmere-EX hampir setara dengan platform UNIX sehubungan dengan set fitur R.A.S menurut Gartner dan analis industri lainnya.

Penginstalan dan konfigurasi HP DL980 berbeda dari server SMP yang lebih sederhana sebelumnya dalam sejumlah hal:

  • Penempatan kartu PCIe seperti kartu HBA dan Jaringan sangat penting
  • Driver Perangkat harus sadar Windows KGROUP dan sadar NUMA

Meskipun dukungan server peningkatan skala oleh Windows Server 2012 sangat ditingkatkan, untuk versi Sistem Operasi Windows sebelumnya dan Aplikasi harus menjadi versi dan patch yang benar untuk sepenuhnya mendukung dan menskalakan pada platform DL980 G7.

Karena Windows x64 Server dan beban kerja penggunanya menggunakan konfigurasi dengan 8 soket atau lebih, konfigurasi yang salah atau penggunaan platform ini seperti HP DL980 G7 dapat mengakibatkan penalti performa yang substansial. Dengan konfigurasi 8 prosesor ini, driver perangkat yang salah atau aplikasi yang sadar non-NUMA mungkin tidak memberikan keuntungan skalabilitas yang mungkin diharapkan pengguna. Masalah umum yang dapat terjadi termasuk membanjiri transaksi yang tidak dapat diskalakan, interkoneksi chipset QPI, IO Hub, dan PREMA

Tim Microsoft SQL Server, SAP, dan IIS telah secara ekstensif menguji, menyebarkan, dan membuat tolok ukur produk mereka pada DL980 G7, dan telah menunjukkan hasil yang sangat baik. HP DL980 G7 dan sistem 8 prosesor lainnya telah menunjukkan hasil yang sangat baik sebagai Server Database tetapi juga sekarang sebagai Server Informasi Internet

Gambar berikut mengilustrasikan diagram blok DL980 G7, dan disediakan sebagai kenyamanan untuk pembaca karena ia mengikuti berbagai opsi konfigurasi dan penyetelan yang disajikan dalam paragraf berikut:

Diagram konfigurasi D L 980 G 7.

Opsi konfigurasi:

DL980 G7 dikirim dalam berbagai konfigurasi: model soket prosesor 4 dan 8 tersedia. Selain itu, ada beberapa konfigurasi berbeda untuk slot ekspansi PCI. Ini didokumenkan dalam Panduan Referensi Teknis HP untuk DL980

Sepanjang dokumen ini, kami dengan merujuk pada Prosesor dalam hal bagaimana Windows mengenali dan menjelaskannya, Prosesor 0 - 7 dan simpul NUMA 0 - 7.

Foto baki prosesor atas dan bawah pada D L 980 G 7.

DL980 G7 memiliki dua "baki". Baki atas memegang Prosesor 0-3 dan secara langsung mengontrol papan Utama dan Sub IO. Baki bawah memegang Prosesor 4-7 dan mengontrol papan IO "Opsi" atau Profil Rendah (LP).

DL980 G7 memiliki tiga papan IO:

Diagram opsi slot ekspansi I/O pada D L 980 G 7.

  1. Papan PCI utama - Terhubung langsung ke Prosesor 0-1, papan ini menyediakan 5x slot IO PCIe Gen 2 [ 2 (x8) dan 3 (x4) konektor listrik] yang cocok untuk perangkat PCI bandwidth tinggi seperti HBA tinggi penuh, kartu NIC dan FusionIO /SSD Ini juga menghubungkan perangkat yang disematkan seperti LAN On Motherboard (LOM -NC375i), video, pengontrol disk internal (Smart array P410i), DVD SATA, port USB, ...
  2. Papan PCI Sub IO (opsional) - Terhubung langsung ke Prosesor 2-3, papan ini menyediakan 5 slot PCIe Gen2 [4 (x8) dan 1 (x4) konektor listrik] dan 1 PCIe Gen 1 (x4) - slot ID 1 - (secara opsional slot PCI-X - tidak disarankan) yang cocok untuk perangkat bandwidth tinggi tinggi penuh.
  3. Papan IO Profil Rendah (LP) - Terhubung langsung ke Prosesor 4-5, papan ini menyediakan 4 x PCIe x8 dan 1 x PCIe x4 slot. Slot ini hanya setengah tinggi, jaringan terbaru dan kartu HBA dikirim dengan braket profil rendah yang dapat menggantikan yang standar agar pas dalam setengah slot tinggi.

RAM

DL980 G7 memiliki prosesor yang sangat kuat, masing-masing berisi 2 pengontrol memori dan mampu throughput IO besar ketika dikonfigurasi dengan benar. Platform ini dikonfigurasi sehingga akses memori tersebar merata di kedua pengontrol memori setiap prosesor. Untuk memastikan desain sistem "seimbang", kami merekomendasikan setidaknya RAM 512GB, dengan penyebaran yang lebih khas dengan RAM 1TB seperti pada Mei 2011. DL980 G7 dengan RAM kurang dari 512GB-1 TB mungkin tidak pernah dapat memanfaatkan prosesor yang sangat kuat karena RAM yang tidak mencukuum. Sebagian besar pelanggan akan mengamati penurunan IOPS yang dramatis dan peningkatan besar baik dalam IO maupun penskalaan performa dengan Windows Server 2012, berkat peningkatan kesadaran IO NUMA dan peningkatan penskalaan NUMA dalam versi sistem operasi Windows ini.

Harap perhatikan fakta konfigurasi memori berikut:

  • DDR3 DIM saja.

  • Setiap prosesor terhubung ke 2 Memory Riser, dengan setiap riser mendukung 1 pengontrol memori dan 8 konektor DIMM.

  • Hanya mendukung DIMM Terdaftar (RDIMM). DIMM yang tidak dibuffered (UDIMM) tidak didukung.

    • LR atau DDR3L hanya didukung dengan prosesor Westmere-EX.
  • Mendukung modul DIMM peringkat tunggal (SR), peringkat ganda (DR) dan peringkat quad (QR)

  • Teknologi DRAM 1 GB dan 2 GB didukung dengan prosesor Nehalem-EX dan 4 GB juga didukung dengan prosesor Westmere-EX.

  • DIM ditambahkan dalam Quad di 2 pengontrol memori.

  • Mendukung Advanced ECC, Online Rank Sparing, dan Mirroring.

  • Dukungan ECC memori mencakup koreksi chip x4 dan x8 gagal.

Jaringan

  • Adaptor jaringan gigabit direkomendasikan sebagai standar. 1 Adaptor jaringan Gigabit kemungkinan besar menjadi hambatan pada sistem yang kuat ini.
  • Kurangi jumlah total Adaptor Jaringan yang diperlukan untuk mencapai performa jaringan yang diperlukan.
  • Adaptor jaringan 10 Gigabit memiliki driver perangkat dan opsi konfigurasi driver perangkat yang ditingkatkan secara signifikan.
  • Kartu jaringan HP 10Gb NC550SFP (Intel) telah diuji dan terbukti berkinerja sangat tinggi; ini membutuhkan slot PCIe x8 pada Papan Utama atau Sub IO untuk mencapai performa penuh.
  • HP DL980s mendukung hingga 4 NIC 10GbE seperti NC550SFP dan NC523SFP (lihat dokumen spesifikasi cepat HP DL980 untuk informasi terbaru) dengan jumlah total 8 port 10GbE.
  • Untuk tujuan penyeimbangan beban, kartu 10 Gigabit dapat diseimbangkan antara papan Utama dan Sub IO. (Misalnya: 2 x Dual port 10G NIC pada Main Board dan 2 x Dual port 10G pada Sub IO Board).
  • Seperti yang akan diwujudkan pembaca dalam kertas penskalan IIS, disarankan untuk mengaktifkan Receive Side Scaling (RSS) pada Adaptor Jaringan yang lebih modern dan driver Perangkat modern. 1 Gigabit Network Adaptor biasanya hanya mendukung hingga 8 RSS "Rings" atau "Queues". Adaptor 10 Gigabit mendukung setidaknya 16 Ring/Antrean. Receive Side Scaling adalah mekanisme untuk menyeimbangkan offload DPC di beberapa prosesor logis. Ini menghindari masalah kadang-kadang terlihat selama aktivitas jaringan yang sangat tinggi di mana waktu kernel tinggi terlihat pada satu prosesor saja (seringkali prosesor logis 0 atau 1, tetapi tidak selalu). Catatan: Implementasi RSS untuk Windows Server 2008 R2 hanya mencakup prosesor logis di Windows KGROUP prosesor pertama (KGROUP#0) tetapi pembatasan ini telah dihilangkan dengan Windows Server 2012 dan beberapa driver kotak masuk mendukungnya pada penginstalan pertama.

HBA & IO

  • Untuk aplikasi IO penyimpanan tinggi, instal setidaknya 2 x HBA port ganda, konfigurasi yang lebih umum adalah HBA port ganda 4 x.
  • Penting bahwa semua port HBA terhubung dan aktif. Jika perangkat lunak mul MPIO harus diinstal dan dikonfigurasi dengan benar. Penyeimbangan Beban Otomatis (ALB) direkomendasikan untuk HP EVA series SAN.
  • HBA yang berbeda memiliki pengaturan yang berbeda dan model SAN yang berbeda memiliki kemampuan yang berbeda, namun sebagai panduan umum disarankan:
  • Emulex - atur Kedalaman Antrean HBA ke sekitar 64-254 di "OC Manager / HBA Anywhere" di sebagian besar konfigurasi
  • QLogic - atur Pembatasan Eksekusi ke 64-96 di "SanSurfer"
  • Brokade - Kedalaman Antrean didokumenkan dalam Panduan Admin Brosur
  • Kartu HBA harus ditempatkan kartu harus didistribusikan di semua 3 IO Hub sesuai dengan karakteristik antarmuka PCIe mereka. Kami akan selalu cenderung menempatkan kartu berkemampuan x8 di slot x8 untuk mendapatkan manfaat dari fitur lengkapnya dan menyeimbangkan beban di seluruh sistem.

Catatan Khusus tentang Perangkat FusionIO (umumnya berlaku untuk kartu SSD lainnya):

FusionIO (papan akselerator HP IO) dan OCZ menyediakan akses ultra cepat (hingga 10.000 kali lebih cepat daripada disk mekanis). Sejauh ini pengujian ekstensif hanya dilakukan dengan kartu FusionIO. Hasilnya telah luar biasa dengan ketentuan sebagai berikut:

  • Minimal, gunakan driver perangkat FusionIO 2.2.3 atau yang lebih baru - K-Group Aware (tersedia dari situs web FusionIO).

  • Tempatkan kartu FusionIO di Papan Utama atau SubIO saja: mereka bukan kartu profil rendah. Slot IO yang direkomendasikan adalah: 3, 5, 9 dan 11.

  • Jika Anda menggunakan lebih dari 4 akselerator HP IO, modifikasi harus dilakukan dalam BIOS untuk memungkinkan lebih banyak pendinginan dan Anda harus mempertimbangkan kabel daya eksternal atau menggunakan fitur penggantian daya FusionIO dengan VSL 3.x dan memungkinkan daya tambahan untuk bersumber dari slot PCIe.

  • Tumpukan FusionIO saat ini masih membutuhkan peningkatan skalabilitas dan FusionIO masih mengerjakannya. Sementara itu, harap dicatat bahwa dengan jumlah kartu IO Fusion yang lebih besar dalam sistem ini, kami telah mendorong lebih dari 1 juta IOP dan di atas 16GB/dtk. Dengan implementasi driver FusionIO saat ini, Anda mungkin menemukan:

    • Pemanfaatan prosesor yang sangat tinggi pada subset prosesor logis. Ini terkait dengan fakta bahwa FusionIO HBA saat ini tidak mendukung MSI-X dan setiap HBA mengirim interupsi ke satu prosesor logis. Selain itu, implementasi saat ini mendukung utas pekerja penyelesaian DPC dan FusionIO untuk setiap HBA saja. Untuk beban kerja IO penskalaan yang sangat menuntut, pengguna hampir diharapkan mengidentifikasi prosesor logis ini dengan memeriksa pemanfaatan CPU pada 100% atau hampir 100% pada prosesor logis khusus ini. FusionIO telah membuat parameter konfigurasi yang tersedia untuk mengurangi sebagian ini dengan memungkinkan spesifikasi prosesor logis mana yang didedikasikan untuk tugas-tugas ini. Dalam cputime IO tinggi ini, Anda dapat masker afinitas di tingkat aplikasi untuk menghindari prosesor logis ini.
    • Ketidakseimbangan throughput IO. Performa IO terbaik diperoleh dengan menghasilkan permintaan baca/tulis pada soket yang sama dengan tempat utas penyelesaian FusionIO berjalan. DL980 G7 BIOS menyediakan IO NUMAness untuk sistem operasi Windows dan komponen IO-nya: storport dan ndis/netio untuk miniport mereka untuk digunakan dan diselaraskan.
    • Modifikasi throughput karena dampak merawat SSD, masalah yang terlihat dengan SSD generasi sebelumnya dan saat ini.

BIOS

Disarankan untuk mengubah nilai default berikut di BIOS DL980 G7 untuk IIS:

NAMA PENGATURAN PENGATURAN YANG DISARANKAN PENGATURAN DEFAULT
Profil Hp Power Kustom (Default Balanced Power & Perf)
HP Power Regulator Mode Kontrol OS (Mode Penghematan Daya Dinamis HP default)
Prosesor HyperThreading Lihat paragraf di bawah ini tentang jenis beban kerja IIS 8.0 dan dampak HyperThreading Aktif
Status Pwr Menganggur Prosesor Min Tidak ada C-States (tidak ada Perolehan Daya Prosesor) atau C1e (untuk tetap mendapatkan perolehan Daya Prosesor dan performa yang memadai) (Status C6 default)
Pembatasan Daya Memori Nonaktif (default Diaktifkan)
Kontrol Daya Kolaboratif Nonaktif (default Diaktifkan)
Mode Tabel MPS APIC Tabel Lengkap (default)
Mode Alamat 44-bit Aktif (default Dinonaktifkan)
Konfigurasi Termal meningkatkan pendinginan atau bahkan "kipas maks -(blowout), jika menggunakan banyak HP IO accelerator/Fusion IO HBA. (pendinginan optimal)
Debugging Windows: Status ASR (dinonaktifkan ketika tidak ada debugger yang terpasang) Dinonaktifkan jika debugger OS terpasang. (default Diaktifkan)
Windows Debugging: iLO Cli (dari sesi iLO) Dinonaktifkan jika debugger OS terpasang. (default Diaktifkan)

Dengan platform DL980 G7, Windows Server 2012 akan secara otomatis mengalihkan prosesor dan IOH dalam mode x2APIC dan dengan mode pengiriman gangguan fisik. Untuk mengaktifkan x2APIC dengan Windows Server 2008 R2 SP1 untuk meningkatkan Penskalan IO, beberapa QFEs Windows harus diinstal pada platform dan perintah Opt-In BCDEDIT tambahan untuk dijalankan. Mengaktifkan x2APIC dan spesifikasi QFEs disajikan dalam Database Pengetahuan Microsoft

Firmware

Sangat penting bahwa firmware untuk komponen di bawah ini diperbarui ke yang terbaru yang tersedia seperti misalnya, banyak peningkatan IO NUMA ditambahkan dalam rilis Oktober 2012.

  • Sistem DL980 G7
  • Kartu HBA
  • Kartu Jaringan
  • Kartu FusionIO (jika digunakan)

Sangat disarankan untuk memverifikasi firmware komponen-komponen ini di situs web Dukungan HP DL980.

Konfigurasi & versi Windows

Sebagai bagian dari penawaran Mission Critical untuk pelanggan Windows, HP memiliki CD QFE Pembaruan Cerdas untuk mengatur dan menyetel Windows secara otomatis dengan QFEs Microsoft penting terbaru: https://www.hpe.com/us/en/servers/smart-update.html. Pembaruan dan penyetelan ini telah diterapkan dengan Microsoft dan divalidasi di laboratorium HP DL980. HP merekomendasikan pelanggannya untuk menjalankan pembaruan ini.

  • Windows Server 2012 - Pengaturan IIS untuk mode kernel, manajemen cache, manajemen permintaan dan koneksi dan mode pengguna tidak berubah dari Windows Server 2008 R2, silakan lihat penyetelan spesifik IIS yang dijelaskan dalam dokumen "Panduan Penyetelan Performa untuk Windows Server 2008 R2 ". .
  • Untuk Windows 2008 R2, SP1 atau yang lebih tinggi disarankan. Paket Layanan 1 berisi banyak perbaikan performa penting untuk > 64 dukungan prosesor logis.
  • Windows 2008 tidak dapat mendukung alamat 44 bit dengan benar dan tidak boleh diinstal pada DL980 G7. Jika karena alasan tertentu Windows 2008 (versi non-R2) disebarkan pada DL980 baik hyper threading maupun memori 44 Bit harus dinonaktifkan, sistem kemudian terbatas pada prosesor logis 64 dan RAM 1 TB. Windows Server 2008 SP2 adalah satu-satunya versi Windows Server 2008 Server yang didukung pada HP DL980 G7. Jika Windows Server 2008 masih diperlukan, silakan lihat situs web dan organisasi Dukungan HP untuk daftar lengkap QFEs Windows untuk Windows Server 2008 SP2 di HP DL980 G7.

Metodologi Pengujian

Skenario Pengujian

Tujuan dari pengujian ini adalah untuk menguji skalabilitas IIS Server sambil meningkatkan jumlah inti/soket CPU pada perangkat keras sadar NUMA:

  • Halaman pengujian dinamis ASP.net sederhana digunakan sebagai konten situs web
  • Web Capacity Analysis Tool (WCAT) digunakan untuk menghasilkan permintaan HTTP
  • Utilitas HP Core Disable digunakan untuk menurunkan skala server dengan menonaktifkan soket & inti CPU, sambil menghormati konfigurasi IO

Lingkungan pengujian menunjukkan bagaimana aplikasi Web ASP.NET menskalakan pada server dengan perangkat keras NUMA yang menjalankan IIS 8.0. Tujuannya adalah untuk menekankan server untuk menentukan jumlah permintaan per detik yang diproses oleh penyebaran, atau hampir pada, pemanfaatan CPU 100%.

Konfigurasi berikut digunakan untuk mengukur performa IIS

  1. Web Garden (1xN) - Kumpulan aplikasi tunggal, satu proses per soket. Ini mewakili skenario Enterprise di mana satu aplikasi perlu ditingkatkan skalanya.
  2. Hosting (Nx1) - Satu kumpulan aplikasi per soket, satu proses per kumpulan aplikasi. Ini mewakili skenario hosting, di mana beberapa aplikasi dihosting di satu server.
  3. Default (1x1) - Satu kumpulan aplikasi dan satu proses terlepas dari jumlah soket. Ini mewakili konfigurasi out of the box.

Pengujian diulang selama 20/40/80 core (soket prosesor 2/4/8). Kami juga melakukan pengujian tambahan untuk 180 core (Hyper Threading diaktifkan) untuk melihat bagaimana manfaat IIS dari HT.

Penyiapan Pengujian

Server

Sebanyak 6 mesin digunakan untuk melakukan pengujian

  • 4 komputer yang berfungsi sebagai Klien WCAT (Pengaturan WCAT: 100 Klien Virtual per klien fisik)
  • 1 mesin bekerja sebagai pengontrol WCAT
  • 1 HP9L980G7 sebagai server IIS 8.0

Jaringan

Lingkungan pengujian disiapkan dengan empat komputer klien dan satu server. Masing-masing komputer klien menggunakan empat NIC 1 Gb. Server menggunakan enam belas 1 Gb NIC. Enam belas subnet dikonfigurasi, memasangkan setiap NIC klien ke NIC server unik.

Pengaturan RSS

Performa jaringan pada server dioptimalkan menggunakan pengaturan RSS.

Untuk memastikan bahwa lalu lintas yang diterima pada NIC tertentu akan diproses oleh inti pada IO Hub yang sama dengan NIC, setiap NIC dikaitkan dengan simpul NUMA pada IO Hub yang sama menggunakan pengaturan NumaNode.

Jumlah total antrean RSS di semua NIC dibuat sama dengan jumlah total prosesor logis pada komputer. Ini dilakukan dengan mengatur NumberOfReceiveQueues untuk setiap NIC.

Antrean RSS pada setiap NIC kemudian dipetakan ke serangkaian inti tertentu pada node NUMA yang ditetapkan menggunakan pengaturan BaseProcessorNumber dan MaxProcessors.

Temuan

Grafik berikut menangkap bagaimana performa IIS (Jumlah permintaan yang diproses per detik) berubah dengan peningkatan inti CPU.

Meningkatkan jumlah inti CPU dari 20 menjadi 40 (2 soket menjadi 4 soket):

20 nomor inti diambil sebagai garis besar. Ketika jumlah CPU meningkat dari 20 menjadi 40, kami mengamati peningkatan permintaan 67% yang diproses dalam skenario hosting web, peningkatan 41% dalam skenario taman web dan penurunan 2% dalam skenario default. Ini menunjukkan bahwa skenario hosting dan kebun web dapat memperoleh manfaat paling besar dari peningkatan inti CPU. Konfigurasi default tidak dapat memanfaatkan peningkatan CPU karena satu proses tidak dapat menskalakan untuk memanfaatkan perangkat keras NUMA.

Perbandingan antara 80 core dan 40 core

Tren serupa terlihat setelah meningkatkan jumlah inti dari 40 menjadi 80. Skenario hosting mampu memproses 64% lebih banyak permintaan dan skenario kebun web memproses 31% lebih banyak permintaan. Performa konfigurasi default semakin terdegradasi sebesar 3%.

Bagan kolom yang membandingkan penskalan R P S antara inti C P U dengan 80 versus 40 core.

Dampak Hyperthreading

Setelah mengaktifkan Hyperthreading, konfigurasi Hosting memproses 18% lebih banyak permintaan. Konfigurasi Web Garden memproses 4% lebih sedikit permintaan sementara konfigurasi default memproses 3% lebih banyak permintaan. Biasanya HT dapat menghasilkan performa hingga 20% lebih baik. Konfigurasi hosting dapat memanfaatkan HT sepenuhnya.

Bagan kolom yang membandingkan hasil mengaktifkan Hyperthreading.

Ringkasan

IIS 8.0 sadar perangkat keras NUMA dan mampu menskalakan secara positif pada perangkat keras NUMA tidak seperti versi IIS sebelumnya.

Throughput IIS 8.0 meningkat 67% pada peningkatan soket CPU dari 2 menjadi 4 dan semakin meningkat 64% pada peningkatan soket CPU dari 4 menjadi 8. Mengaktifkan HyperThreading menghasilkan throughput tambahan 18%.

HP Proliant DL980-G7 menyediakan platform yang solid untuk menyebarkan aplikasi IIS yang tinggi, menawarkan skalabilitas aplikasi dengan solusi konsolidasi server pada platform dengan keandalan, ketersediaan, dan layanan HW yang lebih tinggi.

Pelanggan yang ingin menskalakan penyebaran IIS mereka harus mempertimbangkan untuk menyebarkan IIS pada perangkat keras sadar NUMA dan mendapat manfaat dari opsi perluasan skala &.

Lebih banyak karakterisasi IIS 8.0 dengan penyebaran HyperV Server 2012 pada HP DL980-G7 sedang dipertimbangkan dan hasil ini juga akan dibagikan.

Lampiran

PowerShell

Latar belakang

Secara tradisional, setiap prosesor pada sistem multi-soket mengakses memori dan IO melalui bus yang sama. Menjadi semakin umum bagi sistem skala besar untuk menggunakan NUMA (akses memori non-seragam) untuk menghindari penyempitan bus. Pada model ini, berbagai bagian IO dan memori terhubung ke soket yang berbeda sehingga berarti bahwa performa operasi IO dan memori dipengaruhi oleh seberapa dekat soket terhubung ke beberapa bagian memori dan IO.

Receive Side Scaling (RSS) memungkinkan pemrosesan jaringan yang diterima oleh beberapa prosesor.

Mengonfigurasi Afinitas RSS

Dimulai dengan Windows Server 2012, dimungkinkan untuk mengonfigurasi afinitas RSS ke simpul NUMA tertentu dengan menggunakan PowerShell. Tim Core Networking melakukan pekerjaan yang bagus untuk menyediakan serangkaian cmdlet yang memberikan kontrol penuh atas tumpukan RSS.

Lebih khusus lagi, afinitas NUMA dapat dikonfigurasi menggunakan cmdlet berikut: Set-NetAdapterRSS. Cmdlet ini mengambil beberapa parameter yang terkait dengan topologi perangkat keras Server. Parameternya adalah: BaseProcessorGroup, BaseProcessorNumber, MaxProcessors, dan NumaNode.

Ada dua cara untuk mengumpulkan nilai properti tersebut: Manual dan melalui PowerShell.

Untuk mengonfigurasi pengaturan afinitas NUMA dengan benar, sangat penting untuk mengidentifikasi koneksi fisik adaptor jaringan ke simpul NUMA tertentu.

Mengumpulkan Informasi Topologi secara manual

Saat ini, proses ini terdiri dari langkah-langkah berikut:

  1. Temukan adaptor Jaringan target dengan menggunakan Panel Kontrol\Network dan Internet\Network Connections. Properti yang menarik untuk langkah berikutnya "Nama Perangkat" seperti yang digambutkan pada cuplikan layar di bawah ini.
    Cuplikan layar tab Koneksi Jaringan di Panel Kontrol. Bidang nama perangkat disorot.
  2. Temukan NIC melalui Manajer Perangkat. Untuk itu, kami menggunakan properti "Nama Perangkat" yang dikumpulkan di langkah sebelumnya.
    Cuplikan layar Jendela Manajer Server pada tab Manajer Perangkat. Nama perangkat disorot di menu yang diperluas.
  3. Panggil dialog properti untuk NIC yang ditentukan. Tab "Umum" akan menampilkan slot, perangkat, dan nomor fungsi untuk NIC tertentu.
    Cuplikan layar kotak dialog Properti pada tab Umum. Output Lokasi disorot.
  4. Dengan informasi bus di tangan, dimungkinkan untuk mengidentifikasi di mana simpul NUMA yang terhubung dengan NIC dengan menghubungkan informasi ini ke diagram topologi perangkat keras seperti yang disediakan di "Bagian Perangkat Keras" di atas.
Mengumpulkan Topologi Perangkat Keras melalui PowerShell

Informasi topologi perangkat keras yang dapat digunakan untuk mengatur nilai afinitas RSS yang benar dapat diperoleh dengan menggunakan sampel Cmdlet PowerShell Manajemen Perangkat yang tersedia di TechNet Gallery (https://gallery.technet.microsoft.com/Device-Management-7fad2388). Sampel ini menyediakan cmdlet untuk menghitung, mengontrol, dan mengelola perangkat.

Modul saat ini mengekspos cmdlet berikut:

  • Get-Device
  • Get-Driver
  • Get-Numa
  • Enable-Device
  • Disable-Device
Mencantumkan Perangkat & Informasi Topologi NUMA

Get-Device | Sort-Object -Nama Properti | Nama ft, NumaNode, UINumber -AutoSize

Prosesor Logis dan Informasi NUMA

Get-Numa

Tabel Firmware

$hardwareTopology = Get-Numa; $hardwareTopology

WCAT

Web Capacity Analysis Tool (WCAT) adalah alat pembuatan beban HTTP ringan yang terutama dirancang untuk mengukur performa server Web dalam lingkungan yang terkontrol. WCAT dapat mensimulasikan ribuan pengguna bersamaan yang membuat permintaan ke satu situs Web atau ke beberapa situs Web.

Ini dapat ditemukan di https://www.iis.net/downloads/community/2007/05/wcat-63-(x86)

Tentang

Grup Produk IIS

Tim IIS di Microsoft bertanggung jawab untuk mengirim server IIS sebagai bagian dari Windows Server. Tim ini juga merilis dan memelihara berbagai produk terkait yang ditemukan @ https://www.iis.net/downloads.

Hewlett-Packard (HP)

Hewlett-Packard Company (HP) sebuah perusahaan teknologi informasi multinasional Amerika yang berpusat di Palo Alto, California, Amerika Serikat. Ini menyediakan produk, teknologi, perangkat lunak, solusi dan layanan kepada konsumen, bisnis kecil dan menengah dan perusahaan besar, termasuk pelanggan di sektor pemerintah, kesehatan dan pendidikan. HP adalah perusahaan terkemuka di dunia dalam pendapatan dan unit Microsoft Windows di seluruh dunia (IDC Worldwide Quarterly Server Tracker untuk 2Q12, Agustus 2012). Dalam divisi HP Business Critical Server, lab Mission Critical Windows Engineering memiliki lebih dari satu dekade rekayasa bersama untuk memberikan Microsoft Windows yang kuat dan solusi SQL Server. Dengan proyek penskalaan IIS ini, tim telah bekerja sama dengan tim Microsoft IIS untuk memastikan skalabilitas dan performa optimal.

EEC

Pusat Teknik Perusahaan (EEC) Microsoft berutang keberadaannya pada ide sederhana: Untuk memberi Pelanggan Microsoft yang terbesar dalam laboratorium validasi dan kolaborasi.

EEC dilengkapi dengan perangkat keras kelas dunia dan staf dengan tim yang sangat berbakat dan bersemangat. Karena kami berlokasi di kampus Redmond (di pusat tim pengembangan produk Microsoft), kami dapat menyatukan pelanggan, mitra, dan teknisi grup produk Microsoft untuk memvalidasi solusi perusahaan besok.