16 мая 2017 г.

Память в VMware vSphere

vlsdtv | 17:02 | Прокоментируй первым!
Попросили меня рассказать, как использует память виртуальные машины, какая и что из них означает.
Ведь если кто не сведущ в VMware vSphere или по английски - достаточно тяжело разобраться в этом хитросплетении терминов.
Если зайти VMware vSphere Client и открыть вкладку Summary для виртуальной машины, то можно увидеть что-то типа такого:

Читаем и понимаем:
Memory - это то количество оперативной памяти, которое я выделил виртуальной машине при создании. За это количество гостевая ОС никогда не выйдет при ее использовании. Это же количество памяти можно увидеть в гостевой ОС.
Memory Overhead - это количество памяти, которое может потребоваться гипервизору на поддержание работы виртуальной машины сверх используемой памяти (т.е. расчетные накладные расходы на виртуализацию, но не текущие).
Вроде как бы понятно
Смотрим на панель Resources, пытаемся расшифровать:

Consumed Host Memory - это количество физической памяти хоста ESXI, выделенной виртуальной машине. Обычно это значение не больше значения Memory на предыдущей картинке. Но может быть и больше, поскольку Consumed Host Memory включает в себя и Memory Overhead, но не с картинки выше, а реально используемый гипервизором Overhead (о котором будет идти речь ниже). И важный момент - счетчик Consumed для Memory на вкладке "Performance" не включает в себя Overhead.
Active Guest Memory - это количество памяти, которое по мнению гипервизора VMkernel активно используется гостевой операционной системой. Вычисляется этот параметр на базе статистических показателей. То есть, если ОС не очень активно использует память, то можно ей ее немного подрезать в условиях нехватки ресурсов.
Теперь идем на вкладку "Resource Allocation" vmware vsphere hypervisor. Здесь все немного сложнее:

Появляются вот такие показатели:
Для Host Memory (видим, что это 2187 МБ = сконфигурированная память 2048 МБ + Overhead):
Consumed - это, опять-таки, объем потребляемой виртуальной машиной физической памяти хоста ESXI (постоянно меняется). И он включает в себя накладные расходы гипервизора по памяти.
Оverhead Consumption - это текущий объем затрат памяти на поддержание виртуальной машины (здесь 42 МБ в отличие от расчетного в 110 МБ)

формула такова: Consumed = Private + Overhead Comsumption

Для Guest Memory (2048 МБ сконфигурировано в настройках):
Private - это объем памяти физически хранимый хостом для виртуальной машины (см. формулу выше).
Shared - это объем памяти, который отдается другим виртуальным машинам от разницы между сконфигурированным объемом (Configured Memory) и потребляемым (Consumed). Суть в том, что ОС Windows при загрузке очищает всю память виртуальной машины, но потом эти пустые страницы приложениями не используются. Поэтому гипервизор отдает их другим ВМ, пока ВМ, владеющая памятью не потребует их. Эти страницы и есть Shared. Как мы видим, Private + Shared = Guest Memory.
Swapped - это объем памяти, ушедший в файл подкачки vswp. То есть это не файл подкачки Windows, а файл подкачки в папке с виртуальной машиной. Само собой этот показатель должен быть нулевым или совсем небольшим, поскольку своппинг, который делает ESX (а точнее VMkernel) - это плохо, т.к. он не знает (в отличие от Windows), какие страницы нужно складывать в своп, поэтому кладет все подряд.
Compressed - это объем памяти, который получен после сжатия страниц с помощью механизма Memory Compression (то есть, хранимый в VM Compression Cache).
Ballooned - это объем памяти, который забрал balloon-драйвер (vmmemctl), чтобы отдать ее другим нуждающимся виртуальным машинам.
Unaccessed - это память, к которой гостевая ОС ни разу не обращалась (у Windows - это близко к нулю, так как она обнуляет память при загрузке, у Linux должно быть как-то иначе).
Active - опять-таки, активно используемая память на основе статистики гипервизора.

На хорошем и производительном хосте  метрики Compressed, Ballooned, Unaccessed - должны быть около нуля, так как это означает что машины не борются за ресурсы (то есть не сжимают страницы и не перераспределяют память между собой). Ну и, конечно, если показатель Active маленький, стоит задуматься об урезании памяти (но сначала посмотрите в гостевую ОС, она лучше знает, чем гипервизор, все-таки).
Ну и последняя секция Resource Settings:
Reservation, Limit, Shares, Configured
Worst Case Allocation- это сколько будет выделено виртуальной машине при самом плохом раскладе (максимальное использование ресурсов), то есть вся память будет использоваться, да еще и накладные расходы будут (т.е., Configured + максимальный Overhead).
Overhead Reservation - это сколько зарезервировано памяти под Overhead гипервизором.

ТаблицаVMware ESXI Overhead
Такая вот наглядная табличка


Читать далее ...

На злобу дня: Wana decrypt0r 2.0

vlsdtv | 09:42 | | Прокоментируй первым!
Отмечусь и я (модно наверное)

Почему ~ 80% наших компьютеров не могут быть заражены этим шифровальшиком?
         Да потому что на наших дешевых китайских роутерах а-ля tp-link/d-link/zyxel и т.д. и т.п., которые мы покупаем, которые изначально уже настроены в NAT, это практически невозможно.
Роутер даже не догадывается о том, что можно форвардить 445 и прочие порты самостоятельно. Что бы что-то выставить наружу в оборудовании - нужно проделать ряд дополнительных мероприятий, т.е. поработать ручками.
Очень умиляют фотки в интернете, где стоят в одной куче масса компьютеров и у всех на экране - "платите бабки".
Эти компы имеют прямой выход в интернет? Или тот же банковский терминал имеет расшаренные наружу порты? Или все сервера к примеру в МВД соединены с интернетом напрямую?
Глубоко сомневаюсь. 
Верите?
Я - с трудом. Человеческого фактора никто не отменяет, не думаю что сисадмины на местах такое вытворяют.

Ужас :)

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

Шифровальшик распространяется через 445 порт (его использует samba, служба доступа к файлам, etc.), эксплуатирует уязвимость в SMBv1 протоколе (эту устаревшую версию можно отключить отдельно: тут написано как).
Вкратце так:
dism /online /norestart /disable-feature /featurename:SMB1Protocol

Установить патчи при этом все равно рекомендуется

На мой взгляд есть несколько способов побороть данную напасть:
1. Поставить патчи безопасности - у кого не установлены.
2. Наипростейший вариант - это отключить работу программ или служб, которые используют порты. В первую очередь это порты 135-139, 445, Это можно сделать вручную. Можно использовать такую программулину

3. Можно использовать командную строку - netsh
написать простейший bat-ник со следующим содержимым и запустить его:
netsh advfirewall firewall add rule dir=in action=block protocol=tcp localport=135 name="Block_TCP-135"
netsh advfirewall firewall add rule dir=in action=block protocol=tcp localport=137 name="Block_TCP-137"
netsh advfirewall firewall add rule dir=in action=block protocol=tcp localport=138 name="Block_TCP-138"
netsh advfirewall firewall add rule dir=in action=block protocol=tcp localport=139 name="Block_TCP-139"
netsh advfirewall firewall add rule dir=in action=block protocol=tcp localport=5000 name="Block_TCP-5000"
Бездумно все порты не надо закрывать!
4. Кто использует в сети антивирус Касперского для бизнеса - может воспользоваться следующей рекомендацией.
5. Бэкапов еще никто не отменял

P.$. Здесь описано мое мнение. Оно может расходится с мнением окружающих.
Читать далее ...

16 августа 2016 г.

Когда создавался юзер в AD?

vlsdtv | 13:59 | | Прокоментируй первым!
Есть задача выяснить, когда и в какое время создавался тот или другой юзер в AD.

Рисуем такой скриптик на powershell:
Import-Module ActiveDirectory
 $MDate = ((Get-Date).AddDays(-1)).Date
Get-ADUser -Filter {whenCreated -ge $MDate} -property whencreated|sort name|
 ft name,samaccountname,whencreated -AutoSize

Последняя строка - в одну строчку
Сохраняем его, запускаем в среде powershell. Получится что-то типа такого:


На скрине видно: имя учетной записи, SamAccounName и дату создания.
Коментарии:
Для работы с коммандлетами Active Directory необходимо подгрузить модуль ActiveDirectory. В PowerShell 3.0 этого делать не нужно, т.к. модуль подгрузится автоматически.
$MDate = ((Get-Date).AddDays(-1)).Date
В переменной $MDate сохраняется дата на один день меньше от текущей и часы скидываются на начало дня. Конструкция (Get-Date).Date — покажет дату с 0:00 часов  текущего дня.

Выгрузить в файл можно так::
$MDate = ((Get-Date).AddDays(-1)).Date Get-ADUser -Filter {whenCreated -ge $MDate} -property whencreated|sort name|ft name,samaccountname,whencreated –AutoSize |out-file “C:\Temp\polzak.txt”
Читать далее ...

19 июля 2016 г.

Как заменить в windows 7 стандартный блокнот на notepad ++

vlsdtv | 17:13 | Прокоментируй первым!
Notepad++ мне больше нравится и имеет неизмеримо больше функций, чем стандартный вендовый блокнот.

Скачиваем notepad ++
Создаем bat-файл следующего содержания:
:CheckOS
IF EXIST "%PROGRAMFILES(X86)%" (GOTO 64BIT) ELSE (GOTO 32BIT)

:64BIT
echo @echo off^

start ^"^" ^"C:\Program Files (x86)\Notepad++\notepad++.exe^" %%2 %%3 %%4 %%5 %%6> "C:\Program Files (x86)\Notepad++\npplauncher.cmd"

reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" /v "Debugger" /t REG_SZ /d "\"C:\Program Files (x86)\Notepad++\npplauncher.cmd\"" /f

reg add "HKLM\Software\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" /v "Debugger" /t REG_SZ /d "\"C:\Program Files (x86)\Notepad++\npplauncher.cmd\"" /f
GOTO END

:32BIT
echo @echo off^

start ^"^" ^"C:\Program Files\Notepad++\notepad++.exe^" %%2 %%3 %%4 %%5 %%6> "C:\Program Files\Notepad++\npplauncher.cmd"

reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" /v "Debugger" /t REG_SZ /d "\"C:\Program Files\Notepad++\npplauncher.cmd\"" /f
GOTO END

Несложно догадаться, как из этого листинга сделать bat-файл.

Запускаем батник от имени Администратора
Запускаем notepad win+R
Проверял на Windows 7 64 Bit.

Все!
Читать далее ...

15 октября 2015 г.

Развертывание обновлений WSUS на машины рабочей группы вне домена.

vlsdtv | 11:58 | Прокоментируй первым!
Есть у меня в домене ПК, которые работают вне домена (в рабочей группе, в DMZ и т.д.). По правилам хорошего тона им тоже надо получать обновления через корпоративный WSUS. В свободное плавание (в интернет) выпускать их - некошерно.
Решаем:
Открываем доступ до корпоративного wsus по http.
Рисуем файл реестра и применяем его на целевой машине.


Windows Registry Editor Version 5.00  
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate]  
"WUServer"="http://ХХХ.ХХХ.ХХХ.ХХХ"  
"WUStatusServer"="http://ХХХ.ХХХ.ХХХ.ХХХ"  
"TargetGroupEnabled"=dword:00000001  
"TargetGroup"="DMZ_servers"  
  
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU]  
"NoAutoRebootWithLoggedOnUsers"=dword:00000001  
"NoAutoUpdate"=dword:00000000  
"AUOptions"=dword:00000003  
"ScheduledInstallDay"=dword:00000000  
"ScheduledInstallTime"=dword:00000003  
"RescheduleWaitTimeEnabled"=dword:00000001  
"RescheduleWaitTime"=dword:00000002  

"UseWUServer"=dword:00000001
Чтобы служба стала работать с новыми параметрами, необходимо перезапустить все службы и зависимости WSUS.
cmd от админа и останавливаем службы:

net stop bits
net stop wuauserv
net stop appidsvc

net stop cryptsvc
Затем запускаем.
net start bits
net start wuauserv
net start appidsvc

net start cryptsvc
Можно нарисовать батник по запуску-остановке служб.
А теперь проверяем обновления.
Не сработало? Смотрим логи - там много полезной информации по траблешутингу проблемы.
Читать далее ...

22 сентября 2015 г.

Свое фото в AD в MS Windows 2008R2

vlsdtv | 15:53 | Прокоментируй первым!
Стало скучно, надоумили написать в G+ (Спасибо Воронежу :)

Посему так:
Захотелось мне, что бы у каждого в домене была своя фотка. Удобно - да, надо ли - вопрос не из праздных (нехай будет). Аватарки будут отражатся в outlook-е и в прочих программах.
Загрузка фотки в домен будет осуществляться при помощи стандартной консоли "AD - пользователи и компьютеры".
Как?
Нужна библиотечка - AdExt.dll. По инету ее можно найти (главное - правильно гуглить). Она расширяет возможности консоли "AD - пользователи и компьютеры".
Первый шаг: 
Регистрируем библиотеку
Копируем dll-ку сюда: C:\Windows\Microsoft.NET\Framework64\v2.0.50727

Запускаем CMD от имени администратора.
Даем команду: InstallUtil.exe adExt.dll
Трямс - зарегистрировалась
Второй шаг:
Открываем оснастку ADUC, открываем свойства любого пользователя. Хм, появились два новых поля - Employee и Photo:
Заходим в поле "Photo", жмем "Load", выбираем нужное фото, картинку, etc. Оно появилось.

Поле "Employee" можно использовать к примеру о неком табельном номере из 1С

Все!

Читать далее ...

Search