Sử dụng CPU đỉnh cao trên các bộ điều khiển miền


25

Chúng tôi có hai Bộ điều khiển miền Windows Server 2008 SP2 (đáng buồn thay là 2008 R2) trong một miền máy khách 150 nhỏ đang thể hiện mức độ sử dụng CPU rất "đỉnh". Cả hai Bộ điều khiển miền đều thể hiện cùng một hành vi và được lưu trữ trên vSphere 5.5.0, 1331820. Cứ sau hai hoặc ba giây, mức sử dụng CPU tăng vọt lên tới 80 - 100% rồi nhanh chóng giảm xuống, duy trì ở mức thấp trong một hoặc hai giây và sau đó nhảy lên lần nữa.

Hiệu suất quản lý tác vụ DC3


Nhìn vào dữ liệu hiệu suất lịch sử cho máy ảo cho thấy tình trạng này đã diễn ra ít nhất một năm nhưng tần suất đã tăng lên kể từ tháng Ba.

Hiệu suất máy ảo DC3



Quá trình vi phạm là SVChost.exe đang bao bọc các dịch vụ DHCP Client (dhcpcsvc.dll), EventLog (wevtsvc.dll) và LMHOSTS (lmhsvc.dll). Tôi chắc chắn không phải là chuyên gia nội bộ Windows nhưng dường như tôi không thể tìm thấy bất cứ điều gì đặc biệt là không ổn khi xem quy trình với Process Explorer ngoài sự xuất hiện của EventLog đang kích hoạt hàng tấn cuộc gọi RpcBindingUnbind .

Trình khám phá quy trình DC3 cho SVCHost.exe



Tại thời điểm này tôi hết cà phê và ý tưởng. Làm thế nào tôi nên tiếp tục khắc phục sự cố này?


Chỉ cần spitballing ở đây: 1. Bạn có hệ thống giám sát truy vấn nhật ký sự kiện trên DC không? 2. Bạn có bất kỳ loại kiểm toán nào được kích hoạt có thể dẫn đến hoạt động Nhật ký sự kiện nặng nề trên DC không?
joeqwerty

1
Muốn hòa nhập khi chủ đề này xuất hiện trên một tìm kiếm của Google cho Nhật ký sự kiện CPU cao. Vấn đề này vẫn còn trên Máy chủ 2012. Chỉ cần giải quyết chính xác vấn đề tương tự trên Máy chủ 2012 DC. Kiểm tra kích thước tệp nhật ký. Đường dẫn nhật ký mặc định là% SystemRoot% \ System32 \ Winevt \ Logs \ Ghi đè lên tùy chọn radio gặp sự cố khi xử lý các kích thước tệp nhật ký lớn hơn. Tôi đặt của tôi để Lưu trữ nhật ký khi đầy đủ và cuộn qua.
KraigM

Đối với những người đến từ Google, sự cố dịch vụ Nhật ký sự kiện này cũng áp dụng cho các máy Windows Server không điều khiển. Trong trường hợp của tôi, việc có đủ người dùng với mmc.exe(có thể là cửa sổ "Trình quản lý máy chủ" mặc định?) Mở cũng đạt được các mức tăng đột biến.
Nickolay

Câu trả lời:


25

TL; DR: Tệp EventLog đã đầy. Các mục ghi đè rất tốn kém và / hoặc không được triển khai tốt trong Windows Server 2008.


Tại @pk. và đề xuất @joeqwerty và sau khi hỏi xung quanh, tôi đã quyết định rằng dường như rất có thể việc triển khai giám sát bị lãng quên đang làm mất các bản ghi sự kiện.

Tôi đã cài đặt Trình giám sát mạng của Microsoft trên một trong các Bộ điều khiển miền và bắt đầu lọc cho MSRPC bằng ProtocolName == MSRPCbộ lọc. Có rất nhiều lưu lượng truy cập nhưng tất cả nằm giữa RODC của trang web từ xa của chúng tôi và không may không sử dụng cùng một cổng đích như quy trình lắng nghe EventLog. Chết tiệt! Có lý thuyết đó.

Để đơn giản hóa mọi thứ và giúp chạy phần mềm giám sát dễ dàng hơn, tôi đã quyết định mở dịch vụ EventLog từ SVCHost. Lệnh sau và khởi động lại Bộ điều khiển miền dành một quy trình SVCHost cho dịch vụ EventLog. Điều này làm cho việc điều tra dễ dàng hơn một chút vì bạn không có nhiều dịch vụ được đính kèm với PID đó.

SC config EventLog Type= own

Sau đó, tôi đã viện đến ProcMon và thiết lập một bộ lọc để loại trừ mọi thứ không sử dụng PID đó. Tôi đã không thấy hàng tấn nỗ lực thất bại của EventLog để mở các khóa đăng ký bị thiếu như được chỉ ra là nguyên nhân có thể xảy ra ở đây (rõ ràng các ứng dụng tào lao có thể đăng ký làm Nguồn sự kiện theo những cách cực kỳ kém). Có thể đoán được tôi đã thấy rất nhiều mục ReadFile thành công của Nhật ký sự kiện bảo mật (C: \ Windows \ System32 \ WinEvt \ Logs \ Security.evtx).

ReadFile Security.evtx

Dưới đây là một cái nhìn về Stack về một trong những sự kiện đó: RpcBindingUnbind

Trước tiên, bạn sẽ nhận thấy RPCBinding và sau đó là RPCBindingUnbind. Có rất nhiều trong số này. Giống như hàng ngàn mỗi giây. Nhật ký bảo mật thực sự bận hoặc có gì đó không hoạt động đúng với Security.evtxnhật ký.

Trong EventViewer, Nhật ký bảo mật chỉ đăng nhập từ 50 đến 100 sự kiện mỗi phút có vẻ phù hợp với miền có kích thước này. Chết tiệt! Có lý thuyết số hai rằng chúng tôi đã có một số ứng dụng với việc kiểm tra sự kiện rất dài được bật bên trái trong một góc bị lãng quên vẫn đang vất vả bỏ đi. Vẫn còn rất nhiều (~ 250.000) sự kiện được ghi lại mặc dù tỷ lệ các sự kiện được ghi lại là thấp. Kích thước bản ghi có lẽ?

Nhật ký bảo mật - (Nhấp chuột phải) - Thuộc tính ... và kích thước nhật ký tối đa được đặt cho 131.072 KB và kích thước nhật ký hiện đang giữ ở mức 131.072 KB. Nút radio 'Ghi đè các sự kiện khi cần thiết' đã được chọn. Tôi hình dung rằng việc liên tục xóa và ghi vào tệp nhật ký có lẽ là công việc khó khăn, đặc biệt là khi nó quá đầy nên tôi đã chọn Xóa Nhật ký (tôi đã lưu nhật ký cũ trong trường hợp chúng tôi cần kiểm tra sau) và để dịch vụ EventLog tạo một tập tin trống mới. Kết quả: việc sử dụng CPU trở về mức lành mạnh khoảng 5%.


Công việc tốt đẹp. Ngoài ra, di chuyển TL; DR lên đầu câu trả lời?
Zlatko

Chỉ cần FYI ... điều này vừa đạt được một loạt các bộ điều khiển miền của chúng tôi, hầu hết trong số đó là 2012/2012 R2. Vì vậy, có vẻ như nó cũng không được triển khai tốt trong các phiên bản Windows Server mới hơn.
Vô vọngN00b

Vì vậy, đây là vấn đề của tôi, NHƯNG tôi đã thiết lập để lưu trữ khi đầy đủ và không viết quá nhiều. Kích thước nhật ký tối đa là 1 GB và kích thước hiện tại là 639 MB. Không biết phải làm gì ngoài việc có thể xóa nhật ký dưới dạng thử nghiệm. Đây là trên 2008 R2 Std và đang ảnh hưởng đến PDC và DC thứ cấp. Cả hai đều là VM. Tôi đã phải phân bổ 2 ổ cắm / 1 lõi cho mỗi DC hoặc cả hai sẽ chốt ra 1/1 phân bổ và không phản hồi nữa. Thêm RAM không làm gì cả. Tại thời điểm này, nó liên tục sử dụng từ 60 đến 100% CPU.
Travis

Đã lưu / xóa nhật ký bảo mật. Vẫn chạy 74% sử dụng CPU.
Travis

5

Bạn có thể theo đuổi điều này bằng cách tạo một Bộ thu thập dữ liệu nhỏ.

  • Mở Trình theo dõi hiệu suất và tạo Bộ thu thập dữ liệu do người dùng xác định mới.
  • Chọn Thủ công (không có mẫu) và chỉ chọn dữ liệu theo dõi sự kiện .
  • Thêm dịch vụ miền Active Directory: Dữ liệu cốt lõi và lưu tập hợp.
  • Thay đổi Điều kiện dừng trong Thuộc tính thành 1 phút.
  • Bắt đầu thiết lập và chờ đợi.
  • Khi hoàn tất, chuyển đổi tệp .etl đã lưu thành .csv bằng cách sử dụngtracerpt –l “file.etl” –of CSV
  • Phân tích dữ liệu tóm tắt.csvdumpfile.csv trong Excel. Bạn có thể muốn tải xuống tài liệu Nhập-DC-Info.xlsm này để giúp bạn phân tích.

Nếu linh cảm của tôi là chính xác, bạn sẽ thấy một số thiết bị (IP: port) đập vào DC của bạn.


1

Chắc chắn là một khó khăn. Ngoài việc chỉ để nó một mình (1 CPU / tải 50% .. ai quan tâm?), Bạn có thể thử thiết lập bộ điều khiển miền mới và xem sau vài ngày nếu cái này cho bạn hành vi tương tự. Nếu đúng như vậy, bạn có thể muốn thử với dấu vết của Wireshark (rõ ràng, sau đó có một cái gì đó từ Mạng gây ra điều này)

Điều tiếp theo gây chú ý là một cuộc gọi đơn giản tới microsoft


-2

Travis, "kho lưu trữ" không giúp bạn. Trên thực tế, ngay cả việc xóa nhật ký sự kiện khi nó được phát triển 2/3 cũng không giúp ích gì cho bạn. Nhưng "kho lưu trữ" đã giúp KraigM.

kce: đã xóa tệp "ghi đè" 131 MB và thấy hiệu suất giảm từ 55% o 5% nhưng CÂU HỎI: có lẽ cuối cùng bạn đã thấy mức sử dụng cao trở lại vì điều này có thể (a) chỉ được kích hoạt khi đạt đến điều kiện ghi đè hoặc (b) nó có thể trở nên tồi tệ hơn khi tệp bị xóa tăng từ kích thước 0mb lên kích thước 131MB.

Một số người nhìn thấy điều này cho security.evtx và một người đã thấy nó cho nhật ký hoạt động của Trình lập lịch tác vụ. Tôi đề nghị gỡ cài đặt hoàn toàn AV của bạn (cái nào bạn đang sử dụng) và thử. Kẻ xâm nhập cần ẩn dấu vết của chúng và các bản nhạc của chúng được thực hiện trong các tác vụ theo lịch trình mà chúng thiết lập hoặc đăng nhập chúng thực hiện. Vì vậy, họ sẽ ẩn dấu vết của mình bằng cách ngắt tay cầm cho các bản ghi sự kiện này và viết lại chúng để bỏ qua các bản nhạc của chúng. AV có thể đang phát hiện điều này theo cách có lỗi vì nếu là Microsoft, phần lớn mức độ sử dụng cao này sẽ được báo cáo nhưng tôi chỉ thấy một vài bài đăng ít ỏi khi Google. Tôi cũng thấy điều này trên máy chủ 2008 R2 cho nhật ký security.evtx. Không có thuê bao đăng nhập sự kiện, không có màn hình bên ngoài. Tôi đã quan sát thấy một vài dịch vụ AV (McAfee) đang chạy và chúng có tổng mức sử dụng rất thấp cho một máy chủ trong nhiều ngày nên tôi nghi ngờ nó đã được gỡ cài đặt và chỉ một phần vì vậy (có thể cần trình gỡ cài đặt đặc biệt của McAfee) và tôi tự hỏi liệu có móc nối nào không dịch vụ McAfee (hoặc thậm chí được cài đặt bình thường) Dịch vụ McAfee hoặc trình điều khiển bộ lọc McAfee đang chạy bằng cách nào đó ghi một bản ghi bình thường vào nhật ký sự kiện và quyết định trong bộ lọc của họ rằng họ cần phải chuyển toàn bộ thành toàn bộ nhật ký sự kiện. Tin tôi đi, trình điều khiển bộ lọc của bên thứ ba từ một số công ty AV có lỗi và chắc chắn là lỗi gấp 10000 lần so với việc Microsoft thực hiện ghi nhật ký sự kiện, rất có thể là hoàn hảo. Tóm lại, 100% gỡ cài đặt TẤT CẢ av CỦA BẠN VÀ XEM NẾU vấn đề được giải quyết. Nếu vậy, hãy làm việc với công ty AV của bạn để sửa AV của họ. Đó là khuyến khích để làm cho ngoại lệ tập tin cho.

Ngoài ra, khi sử dụng procmon, hãy chú ý đến các cuộc gọi WriteFile vì Writefile là thứ sẽ kích hoạt trình quản lý bộ lọc để đọc toàn bộ tệp. Trong trường hợp của tôi, việc đọc được bắt đầu khoảng 30 giây sau khi viết xong có thể là do thiết kế. Nhưng nó phù hợp và trong trường hợp của tôi, tệp là 4GB và tệp đọc có liên quan đến 64K Readfiles mỗi chiều dài 64KB và nó đã sử dụng 35% CPU để thực hiện việc này. Rất buồn.


Cập nhật 23/03/2016 Tôi đã xem xét các trình điều khiển bộ lọc trên máy này sau khi kết luận rằng điều này phải do một trong số chúng gây ra (cơ chế nhật ký sự kiện không bao giờ có lỗi trên chính nó hoặc số báo cáo loại này sẽ đáng kinh ngạc và không phải vậy). Tôi thấy một số trình điều khiển bộ lọc từ AV và từ một công ty bên thứ 3 nổi tiếng, giúp tăng hiệu suất đĩa máy ảo bằng cách đọc trước và hỏi kiến ​​trúc sư trưởng của họ (người rất tốt bụng và duyên dáng) nếu sản phẩm của anh ta có thể đọc quá mức toàn bộ nhật ký sự kiện bảo mật (đã xảy ra rõ ràng trên mỗi procmon). Điều này sẽ hữu ích cho các bản ghi bảo mật nhỏ hơn nhưng không phải là các kích thước được báo cáo ở đây. Không có cách nào anh nói. Anh ấy đồng ý nó có thể là AV.

Như tôi đã nói với đồng nghiệp Azure bên dưới, chúng tôi không có sự theo dõi từ Poster gốc nếu sự cố lại xuất hiện sau khi xóa nhật ký sự kiện vì đó là giải pháp phổ biến và bị nhầm lẫn do hiệu suất giảm dần theo thời gian. Điều này được gọi là "theo dõi" và tôi thấy tận mắt giải pháp của người đăng ban đầu có thể đánh lừa những người không theo dõi tin rằng họ đã giải quyết được vấn đề. Tôi gần như bị lừa là tốt. Tôi đã xóa nhật ký sự kiện và hiệu suất được cải thiện - nhưng tôi đã sử dụng procmon và thấy vấn đề sẽ phát triển và tăng chậm theo thời gian cho đến khi nó trở thành vấn đề. Vì một số lý do, đồng nghiệp Azure chỉ trích tôi gay gắt khi người đăng ban đầu không theo dõi (có thể đã chết, bị sa thải, bỏ việc hoặc bận rộn). Các thành viên Azure dưới đây nghĩ rằng nếu người đăng ban đầu không theo dõi thì đó phải là một vấn đề cố định. Điều này thật khó chịu và khó hiểu bởi vì tôi không thể nghĩ về bất cứ ai được đánh giá cao về mặt kỹ thuật sẽ đảm nhận vị trí này. Tôi xin lỗi nếu tôi châm chọc một dây thần kinh. Có lẽ trong hoạt động của tôi ở nơi khác trên Internet nơi tôi gọi mọi người, tôi cảm thấy lo lắng - ở đây (serverfault) Tôi chỉ đơn giản là tốt bụng và chia sẻ kiến ​​thức kỹ thuật sâu sắc và kết quả từ ông Azure là bắt nạt về việc đóng góp kỹ thuật của tôi thậm chí là cần thiết hoặc là cho một số blog của tôi (tôi không có blog như vậy). Tôi chưa có ý định gửi liên kết này tới khoảng nửa tá bạn thân tại Microsoft và hỏi họ chuyện gì đang xảy ra với kiểu bắt nạt này từ một nhân viên chính của MSFT vì tôi đặc biệt tập trung vào việc có lợi ích tốt nhất cộng đồng trong tâm trí và những phản hồi dưới đây từ ông Azure, trong một vài từ, không thể tin được, có sức sống, đáng sợ và bắt nạt - mà tôi chắc chắn một số người thích làm với người khác. Ban đầu tôi cảm thấy bị xúc phạm nhưng tôi biết rằng, những người đọc thụ động hoặc chủ động sẽ đánh giá cao những gì tôi đang nói và đánh giá cao ý kiến ​​của tôi - tôi đứng sau 100% mà không quan tâm đến lý do pháp lý tại sao nó không phù hợp một cách tinh tế ở đây hay không. M. Azure, xin vui lòng thực hành lòng tốt và kiềm chế không đưa ra nhận xét của tôi trong một ánh sáng kém. Chỉ cần vượt qua nó và thể hiện sự kiềm chế và không bình luận lại. xin vui lòng thực hành lòng tốt và kiềm chế để bình luận của tôi trong một ánh sáng kém. Chỉ cần vượt qua nó và thể hiện sự kiềm chế và không bình luận lại. xin vui lòng thực hành lòng tốt và kiềm chế để bình luận của tôi trong một ánh sáng kém. Chỉ cần vượt qua nó và thể hiện sự kiềm chế và không bình luận lại.

Harry


Có vẻ như bạn đang giải quyết những người đã bình luận, chứ không phải OP và câu hỏi ban đầu. Và bạn đang đưa ra đề xuất như loại bỏ AV. OP đã giải quyết vấn đề của họ và xác định đây là sự cố Nhật ký sự kiện. Tôi không thấy đây là một câu trả lời hợp lệ.
David Makogon

Điều này đã không được giải quyết nếu bạn đọc các áp phích cẩn thận và tóm tắt của tôi. Bạn phải chịu đựng vấn đề này để phân tích lời nói của họ cẩn thận hơn sau đó bạn đã làm và thấy điều này. Tôi xin lỗi bạn không thể làm như vậy và đánh giá tôi rất khắc nghiệt. Ví dụ, OP cho biết họ đã trả lại mức 5% nhưng nó có thể dễ dàng quay trở lại sau khi xóa nhật ký và anh ta đã không theo dõi - thực tế điều này đã xảy ra với một người bình luận khác. Do đó, không có gì được giải quyết vì anh ta không xác minh kết quả ở mức 5% vĩnh viễn.
harry

Xin lỗi Harry - đây không phải là một câu trả lời; bạn đang tuyên bố về phần mềm lỗi và bảo OP làm việc với công ty chống vi-rút của họ. Điều này rất tốt cho blog cá nhân hoặc một bài viết của bạn, nhưng biên tập không phải là câu trả lời, cho câu hỏi hai năm tuổi với câu trả lời được chấp nhận, với nguyên nhân sâu xa không liên quan đến chống vi-rút.
David Makogon

@harry thật ngạc nhiên khi tôi quay lại đây một lần nữa để cố gắng tìm ra nó một lần nữa :) Không có AV trên hệ thống. Tôi đã thực hiện một vài cập nhật windows và thay đổi tệp nhật ký tối đa để lưu trữ thành 500 MB từ 1 GB. Ngay cả ở mức 1 GB, nó chỉ lăn qua một lần trong 8 tháng trong khi DC khác của tôi lại lăn hơn một chút. Tôi đã làm theo gợi ý "SC config EventLog Type = own" để thoát ra khỏi tệp nhật ký. Sau khi khởi động lại, quy trình chẵn đã giảm xuống dưới 1%. "Dhcp và lmhosts" được gắn vào quá trình cũng dưới 1% CPU. Tôi chỉ đăng ký khoảng 15 sự kiện bảo mật / giây.
Travis

Tôi nghi ngờ một tác nhân SSO mà tôi đã chạy có liên quan đến nó vì nó có nhiều lỗi nhưng việc vô hiệu hóa dịch vụ đã không làm giảm việc sử dụng CPU ngay cả sau khi khởi động lại. Tác nhân SSO đã sao lưu và CPU vẫn còn thấp nên ai biết được.
Travis
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.