Планировщик задач и контроль виртуальной машины

При использовании SQL Server 2005 или великое (который я предполагаю, что Вы основаны на своем теге), можно использовать Представления управления данными SQL Server (часто называемый DMVs). Они дадут Вам целый диапазон представлений в то, что продолжается в Вашей системе. В Вашем особом случае Вы могли бы хотеть выполнить следующий запрос (или некоторое ответвление его):

ВЫБЕРИТЕ total_physical_reads, total_logical_reads, total_logical_writes, execution_count, total_worker_time, total_elapsed_time, total_elapsed_time / execution_count avg_elapsed_time, creation_time, last_execution_time, st.text
ОТ sys.dm_exec_query_stats AS qs КРЕСТ ПРИМЕНЯЮТ sys.dm_exec_sql_text (qs.sql_handle) Св. ORDER total_elapsed_time / execution_count DESC;

- порядок пунктом закажет к самому высокому среднему прошедшему времени сначала.

HTH, Dan

2
задан 19 August 2012 в 23:33
2 ответа

Похоже, что в предыдущей версии Windows Server (до 2012) модуль PowerShell не был включен для управления Hyper-V. Вы можете использовать некоторые другие модули, такие как отказоустойчивую кластеризацию и т. Д., Но вы должны использовать сценарии WMI для внесения изменений в гипервизор.

В 2012 году эта проблема очень проста:

PS C: \> Get-VM –ComputerName Server1 | Where-Object {$ _. State –eq 'Running'}

Однако похоже, что существует библиотека с открытым исходным кодом , которая абстрагирует сценарии WMI и оставляет все в PowerShell. Я посмотрю на этот модуль сегодня вечером и посмотрю, смогу ли я заставить его делать то, что я хочу.

Спасибо Бобу за то, что хотя бы указал мне в правильном направлении.

0
ответ дан 3 December 2019 в 15:40

Я бы сделал все внутри Powershell. Некоторое время назад я написал сценарий, чтобы сделать балансировку нагрузки для какого-то бедняги. Он вызвал некоторый код интерфейса командной строки для возврата состояния виртуальной машины и действовал соответствующим образом.

Вы сделаете то же самое: пусть Powershell вызовет оператор интерфейса командной строки (с помощью getstate) для получения состояния различных гостевых виртуальных машин. Если какой-либо из них не работает, отправьте электронное письмо по протоколу SMTP или используйте интерфейс командной строки для запуска виртуальной машины или что-то еще.

Запустите Powershell по расписанию с любым выбранным интервалом. Должен работать как шарм.

0
ответ дан 3 December 2019 в 15:40

Теги

Похожие вопросы