По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Седьмая часть тут. Поля фиксированной длины - самый простой из описанных в словаре механизмов. Протокол определяет набор полей, какие данные содержит каждое поле и насколько велико каждое поле. Эта информация «встроена» в определение протокола, поэтому каждая реализация построена в соответствии с этими же спецификациями и, следовательно, может взаимодействовать друг с другом. Рисунок 1 иллюстрирует кодирование поля фиксированной длины, используемое в протоколе Open Shortest Path First (OSPF), взятом из RFC2328. Ряд чисел в верхней части рисунка 1 указывает отдельные биты в формате пакета; каждая строка содержит 32 бита информации. Первые 8 битов указывают номер версии, вторые 8 битов всегда имеют номер 5, следующие 16 битов содержат общую длину пакета и так далее Каждое из этих полей дополнительно определяется в спецификации протокола с видом информации, переносимой в поле и как оно закодировано. Например: Поле номера версии кодируется как целое число без знака. Это метаданные, указывающие словарь и грамматику, используемые для этого пакета. Если формат пакета необходимо изменить, номер версии может быть увеличен, что позволяет передатчикам и получателям использовать правильный словарь и грамматику при кодировании и декодировании информации в пакете Число 5 указывает тип пакета в протоколе; это часть словаря, определенного в другом месте в документе стандартов, поэтому он просто вставляется как фиксированное значение на этом рисунке. Этот конкретный пакет является пакетом подтверждения состояния канала (Link State Acknowledgment Packet). Длина пакета кодируется как целое число без знака, указывающее количество октетов (или наборов из 8 битов), содержащихся в полном пакете. Это позволяет размеру пакета варьироваться по длине в зависимости от объема передаваемой информации. Формат поля фиксированной длины имеет несколько преимуществ. Прежде всего, местоположение любого фрагмента информации в пакете будет одинаковым для каждого пакета, что означает, что легко оптимизировать код, предназначенный для кодирования и декодирования информации вокруг формата пакета. Например, обычным способом обработки формата пакета фиксированной длины является создание структуры данных в памяти, точно соответствующей формату пакета; когда пакет считывается с провода, он просто копируется в эту структуру данных. Поля в пакете могут быть прочитаны напрямую. Форматы фиксированной длины имеют тенденцию быть несколько компактными. Метаданные, необходимые для кодирования и декодирования данных, передаются «вне протокола» в форме спецификации протокола. Сами пакеты содержат только значение и никогда не содержат никакой информации о значениях. С другой стороны, форматы фиксированной длины могут тратить много места на буферизацию полей, чтобы они всегда были одинаковой длины. Например, десятичное число 1 может быть представлено одной двоичной цифрой (один бит), тогда как десятичное число 4 требует 3 двоичных цифры (три бита); если поле фиксированной длины должно быть в состоянии представить любое число от 0 до 4, оно должно быть длиной не менее 3 битов, даже если два из этих битов иногда «теряются» при представлении меньших десятичных чисел. Форматы фиксированной длины также часто занимают место, выравнивая размеры полей по общим границам памяти процессора, чтобы повысить скорость обработки. Поле, которое должно принимать значения от 0 до 3, даже если для представления полного набора значений требуется только два бита, может быть закодировано как 8-битовое поле (полный октет), чтобы обеспечить всегда выравнивание следующего поля на границе октета для более быстрой обработки в памяти. Гибкость - то, где кодирование фиксированной длины часто сталкивается с проблемами. Если какое-либо поле определено как 8-битное значение (один октет) в исходной спецификации, нет очевидного способа изменить длину поля для поддержки новых требований. Основной способ решения этой проблемы в схемах кодирования с фиксированной длиной - через номер версии. Если длина поля должна быть изменена, номер версии изменяется в форматах пакетов, поддерживающих новую длину поля. Это позволяет реализациям использовать старый формат, пока все устройства в сети не будут обновлены для поддержки нового формата; после того как все они обновлены, вся система может быть переключена на новый формат, будь то больше или меньше.
img
DHCP (Dynamic Host Configuration Protocol) - это широко используемый протокол, который может предоставлять необходимую информацию IP-телефонов. Это IP адреса, маски подсетей, шлюз по умолчанию, адреса DNS и TFTP серверов. Конечно, можно вручную настроить IP-телефоны со всей необходимой информацией, но это трудозатратно и занимает много времени. DHCP может предоставлять отдельный DHCP сервер, роутер и даже сам Cisco Unified Communications Manager (CUCM) . Об этом мы и поговорим в сегодняшней статье. Активация сервиса Много сервисов, которые представлены в CUCM по умолчанию деактивированы. Для их активации нужно в панели Навигация выбрать пункт Cisco Unified Serviceability. В новом окне переходим в меню Tools → Service Activation. На этой странице находим необходимый нам сервис Cisco DHCP Monitor Service, ставим галочку и нажимаем Save. Настройка DHCP сервера DHCP в CUCM имеет базовые возможности. Он поддерживает только IP-телефоны, и не очень много - до 1000. Это максимальная рекомендация в связи с высокой загрузкой CPU. Для настройки DHCP вернемся во вкладку Cisco Unified CM Administration и перейдем во вкладку System → DHCP → DHCP Server. Нажимаем Add New и в новом окне указываем необходимые настройки. В выпадающем меню Host Server выберем сервер, на котором мы планируем развернуть DHCP, ниже укажем IP адреса DNS и TFTP серверов в полях Primary DNS IPv4 Address и Primary TFTP Server IPv4 Address (Option 150) , а также временные интервалы выдачи, в полях ARP Cache Timeout, IP Address Lease Time, Renewal (T1) Time и Rebinding (T2) Time. После этого нажимаем Save. После этого переходим в соседнюю вкладку System → DHCP → DHCP Subnet. Здесь тоже нажимаем Add New и настраиваем параметры выдающихся подсетей. Из выпадающего списка выбираем наш DHCP сервер, указываем адрес подсети в поле Subnet Address, начальный и конечный адреса выдачи в Primary Range Start IP и Primary Range End IP, маску подсети и шлюз по умолчанию в полях Subnet Mask и Primary Router IP Address, адрес TFTP и DNS серверов в TFTP Server IP address и Primary DNS Server IP Address и внизу снова указываем желаемые временные интервалы. Затем нажимаем Save. Также DHCP сервер для IP-телефонов можно настроить на роутере Cisco используя следующую конфигурацию: service dhcp ! Включает сервис DHCP ! ip dhcp excluded-address 10.1.1.1 10.1.1.10 ! Определяет начальный и конечный интервал адресов, которые НЕ будут присваиваться ! ip dhcp pool name IP_PHONES ! Создает пул адресов (регистрозависимое имя) и входит в режим конфигурации DHCP ! network 10.1.1.0 255.255.255.0 ! Определяет адрес подсети для DHCP пула ! default-router address 10.1.1.1 ! Определяет адрес шлюза по умолчанию (default gateway) ! dns-server address 192.168.1.0 192.168.1.11 ! Определяет адрес DNS сервера (можно указать до 8 адресов) ! option 150 ip 192.168.1.2 ! Определяет адрес TFTP сервера (также можно указать несколько адресов)
img
В этой статье мы расскажем как решить проблему с блокировкой файлов в ESXi. Проблема Появляется ошибка при добавлении диска имеющейся виртуальной машины (VMDK) к виртуальной машине, которая не включается: Failed to add disk scsi0:1. Failed to power on scsi0:1 Включение виртуальной машины зависает на 95%. Не удается включить виртуальную машину после развертывания ее из шаблона. Включение виртуальной машины выдает ошибки доступа к файлам, конфигурации виртуальной машины, или файла подкачки: Unable to open Swap File Unable to access a file since it is locked Unable to access a file [filename] since it is locked Unable to access Virtual machine configuration В записях журнала появляются похожие записи: WARNING: World: VM xxxx: xxx: Failed to open swap file [path]: Lock was not free WARNING: World: VM xxxx: xxx: Failed to initialize swap file [path] При открытии консоли для виртуальной машины может возникнуть ошибка: Error connecting to [path][virtual machine].vmx because the VMX is not started Виртуальная машина сообщает о конфликтных состояниях питания между центральным сервером управления vCenter Server и пользовательским интерфейсом ESXi хост. При открытии файла .vmx с помощью текстового редактора (например, cat или vi) появляются похожие записи: cat: can't open '[name of vm].vmx': Invalid argument Решение Цель блокировки файлов Для предотвращения непредвиденных изменений в ценные системные файлы и файлы виртуальной машины, их необходимо заблокировать. В определенных обстоятельствах блокировка сохраняется, даже с выключенной виртуальной машиной. Таким образом, другие ESXi хосты не смогут получить доступ к заблокированным файлам, даже если виртуальная машина не запускается. Файлы виртуальной машины, заблокированные во время выполнения, включают в себя: VMNAME.vswp DISKNAME-flat.vmdk DISKNAME-ITERATION-delta.vmdk VMNAME.vmx VMNAME.vmxf vmware.log Быстрый первичный тест Поставьте DRS (Планировщик Распределения Ресурсов) в режим обслуживания. С его помощью вы сможете выбрать хост, пока вы включаете виртуальную машину. Если DRS не используется, передайте ВМ другому хосту. Если это не удается, попробуйте включить питание виртуальной машины на других узлах кластера. Машина должна включиться, когда она окажется на узле, который заблокировал файлы. Если ВМ по-прежнему не включается, рассмотрите действия, предложенные ниже. Действия по устранению неполадок: поиск хоста заблокированного файла Чтобы определить заблокированный файл, попробуйте включить виртуальную машину. Во время включения питания ошибка может отображаться или записываться в журналы виртуальной машины. Ошибка и запись в журнале идентифицируют виртуальную машину и файлы: Чтобы найти блокирующий узел, запустите утилиту vmfsfilelockinfo с узла, который не может открыть заблокированный файл. Чтобы узнать IP-адрес хоста, который заблокировал файлы, необходимо запустить утилиту vmfsfilelockinfo для файла VMDK flat, delta или sesparse для VMFS или для файла .UUID. lck для vSAN. Утилита vmfsfilelockinfo потребует следующий материал: Заблокированный файл Имя пользователя и пароль для доступа к VMware vCenter Server (при отслеживании MAC-адреса хостом ESX.) Например: Запустите команду: ~ # vmfsfilelockinfo -p /vmfs/volumes/iscsi-lefthand-2/VM1/VM1_1-000001-delta.vmdk -v 192.168.1.10 -u administrator@vsphere.local Результат будет приблизительно такой: vmfsflelockinfo Version 1.0 Looking for lock owners on "VM1_1-000001-delta.vmdk" "VM1_1-000001-delta.vmdk" is locked in Exclusive mode by host having mac address ['xx:xx:xx:xx:xx:xx'] Trying to make use of Fault Domain Manager ---------------------------------------------------------------------- Found 0 ESX hosts using Fault Domain Manager. ---------------------------------------------------------------------- Could not get information from Fault domain manager Connecting to 192.168.1.10 with user administrator@vsphere.local Password: xXxXxXxXxXx ---------------------------------------------------------------------- Found 3 ESX hosts from Virtual Center Server. ---------------------------------------------------------------------- Searching on Host 192.168.1.178 Searching on Host 192.168.1.179 Searching on Host 192.168.1.180 MAC Address : xx:xx:xx:xx:xx:xx Host owning the lock on the vmdk is 192.168.1.180, lockMode : Exclusive Total time taken : 0.27 seconds. Примечание: в течение жизненного цикла работающей виртуальной машины ее файлы могут менять тип блокировки. Вид блокировки (mode) обозначает тип блокировки на файле. Список видов блокировки: mode 0 = отсутствие блокировки mode 1 = эксклюзивная блокировка (файл vmx работающей виртуальной машины, использует VMDK-диск (flat or delta), *vswp и т.д.) mode 2 = блокировка «только для чтения» (read-only). (Например, для файла данных flat.vmdk работающей машины со снапшотами) mode 3 = блокировка для одновременной записи с нескольких хостов (например, используется для кластеров MSCS или FTVMs) Чтобы узнать название процесса, который заблокировал файл, запустите команду lsof на хосте, заблокировавшем файл, и укажите название нужного файла: ~ # lsof | egrep 'Cartel|VM1_1-000001-delta.vmdk' Результат будет приблизительно такой: Cartel | World name | Type | fd | Description 36202 vmx FILE 80 /vmfs/volumes/556ce175-7f7bed3f-eb72-000c2998c47d/VM1/VM1_1-000001-delta.vmdk Из результата вы узнаете Cartel ID заблокировавшей машины – например, 36202. Теперь, с помощью следующей команды, выведете на экран список активных Cartel ID: ~ # esxcli vm process list Информация активных виртуальных машин сгруппирована по названиям машин. Формат приблизительно такой: Alternate_VM27 World ID: 36205 Process ID: 0 VMX Cartel ID: 36202 UUID: 56 4d bd a1 1d 10 98 0f-c1 41 85 ea a9 dc 9f bf Display Name: Alternate_VM27 Config File: /vmfs/volumes/556ce175-7f7bed3f-eb72-000c2998c47d/Alternate_VM27/Alternate_VM27.vmx ……… Найдя нужный вам VMX Cartel ID, вы узнаете название машины, заблокировавшей ваш файл. Если никакие процессы не отображаются, можете найти виртуальные машины с подключенным vmdk. Замените VMDKS_TO_LOOK_FOR на необходимый vmdk. В результате будет список всех зарегистрированных виртуальных машин, и VMDK отобразится под виртуальной машиной, которая заблокировала файл: for i in $(vim-cmd vmsvc/getallvms | grep -v Vmid | awk -F "/" '{print $2}' | awk '{print $1}'); do echo $i && find ./ -iname $i | xargs grep vmdk | grep -Ei VMDKS_TO_LOOK_FOR ; done Снятие блокировки Машину, которая не включается, переместите на заблокировавший хост и снова попробуйте включить ее. Чтобы снять блокировку, извлеките VMDK-диск или выключите машину, которая удерживает блокировку. Перезагрузите хост, который заблокировал файл. Обратитесь к VMware storage team, vSAN team или разработчику NFS за дальнейшей помощью, так как проблемы с метаданными могут мешать управлению блокировками. Снятие блокировки .lck file (только для NFS) Файлы на виртуальной машине могут быть заблокированы через NFS storage. Такие файлы заканчиваются на .lck-#### (где #### - значение поля fileid, которое можно получить из запроса GETATTR для заблокированного файла). Внимание: для безопасного извлечения файлов машина должна быть выключена. Примечание: Тома VMFS не имеют .lck файлов. Механизм блокировки для томов VMFS расположен в метаданных тома VMFS. Проверка целостности файла конфигурации виртуальной машины (.vmx) Если виртуальная машина не включается, причина может быть в наличие двух дисков в файле .vmx. Извлеките один из дисков и попробуйте включить машину снова. Команда touch *, которая раньше использовалась для устранения неполадок с заблокированными снапшотами vmdk, теперь записывает время последнего изменения файла, который должен быть остановлен и запущен с помощью vmkfstools-D или chmod-s * или vmfsfilelockinfo * для идентификации блокировки.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59