По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Docker и Kubernetes - два ведущих инструмента, используемых в индустрии облачных вычислений. В то время как Docker - это компьютерное приложение, использующее концепцию контейнеризации, а Kubernetes - это система оркестровки контейнеров. Как правило, Docker и Kubernetes используются совместно друг с другом. Тем не менее, сравнение Kubernetes и Docker является чрезвычайно популярной темой в сообществе облачных вычислений. Прежде чем сравнивать две наиболее важные технологии облачных вычислений, давайте сначала кратко расскажем о каждой из них. Kubernetes Впервые выпущенный в июне 2014 года, Kubernetes был изначально разработан Google. За дальнейшую разработку и обслуживание системы оркестровки контейнеров с открытым исходным кодом отвечает Cloud Native Computing Foundation. Согласно официальному сайту, Kubernetes является «системой с открытым исходным кодом для автоматизации развертывания, масштабирования и управления контейнеризованными приложениями». Используя технологию контейнеризации, Kubernetes позволяет запускать контейнеры на нескольких вычислительных узлах, которые могут быть простыми серверами или виртуальными машинами. Перед использованием Kubernetes нужно перепроверить несколько вещей. Одним из них является обеспечение того, чтобы все участвующие вычислительные узлы были надежно связаны друг с другом. Docker Разработанная Docker, Inc., Docker была впервые выпущена в марте 2013 года. Это компьютерная программа, способная выполнять виртуализацию на уровне операционной системы, широко известную как контейнерная упаковка. Docker можно рассматривать в двух разных сторон. С первого взгляда контейнеры Docker - это действительно легкие виртуальные машины, а со второй точки зрения Docker - это платформа для упаковки и доставки программного обеспечения. Последний аспект в первую очередь ответственен за огромную популярность технологии контейнеризации Docker и ее широкое распространение в индустрии облачных вычислений. Можно ли сравнивать Docker и Kubernetes? Сравнивать Docker с Kubernetes - все равно что сравнивать Солнце с Луной. Конечно, оба небесных тела, но сравнение между ними не звучит правильно! Это потому, что, хотя оба сияют, один - звезда, а другой - естественный спутник. Хотя Docker может работать без Kubernetes, а Kubernetes может функционировать в полной мере без Docker, использование обоих в совместной работе улучшает функциональность друг друга. Docker может быть установлен на компьютере для запуска контейнерных приложений. Подход контейнеризации означает запуск приложений в операционной системе таким образом, чтобы они были изолированы от остальной части системы. Приложение будет чувствовать, что оно имеет свою собственную выделенную ОС. Несколько приложений могут работать в одной ОС, как если бы у каждого из них был свой экземпляр операционной системы. Каждое приложение находится внутри контейнера. Docker позволяет создавать, управлять и запускать контейнеры в одной операционной системе. Теперь, когда у вас установлен Docker на нескольких хостах, то есть на операционных системах, вы можете воспользоваться Kubernetes. В таком случае мы называем эти хосты узлами или узлами Docker, которые могут быть серверами с открытым исходным кодом или виртуальными машинами. Прелесть использования Kubernetes с Docker заключается в том, что он помогает автоматизировать балансировку нагрузки контейнера, создание сетей, выделение ресурсов, масштабирование и безопасность на всех хостах Docker с помощью отдельной панели мониторинга или интерфейса командной строки. Повышение масштабируемости приложений и повышение надежности инфраструктуры - две лучшие причины выбора нескольких узлов. Коллекция узлов, управляемых отдельным экземпляром Kubernetes, называется кластером Kubernetes. Kubernetes vs Docker Docker Swarm, про настройку которого можно прочитать тут - это платформа оркестрации контейнеров с открытым исходным кодом. Это собственный механизм кластеризации для Docker, и поэтому он использует ту же командную строку, что и Docker. Ниже приведены различные важные различия между Swarm и Kubernetes. Развертывание приложений Приложение развертывается в Kubernetes с использованием комбинации модулей и служб (или микросервисов). В Docker Swarm развертывание приложения происходит просто в виде микросервисов или сервисов в кластере Swarm. Docker Swarm поставляется с Docker Compose, который помогает в установке приложения. Для идентификации нескольких контейнеров в Docker Swarm есть файлы YAML (YAML Ain’t Markup Language). Настройка контейнера Хотя Docker Swarm API не поддерживает все команды Docker, он предлагает почти все лучшие функциональные возможности Docker. Итак, Docker Swarm поддерживает большинство инструментов, доступных для Docker. Однако, если Docker API не способен выполнять некоторые необходимые операции, не существует простого обходного пути для их использования в Docker Swarm. Как и Docker Swarm, Kubernetes имеет свою собственную версию API, определения клиентов и YAML. Тем не менее, они отличаются от их коллег Docker. Следовательно, нет возможности использовать Docker CLI или Docker Compose для определения контейнеров в Kubernetes. В случаях, когда необходимо переключить платформу, команды и определения YAML необходимо переписать. Балансировка нагрузки Как правило, Ingress используется для балансировки нагрузки в Kubernetes. Тем не менее, есть и другой способ, в котором модуль в Kubernetes выставляется через сервис и его можно использовать в качестве балансировщика нагрузки в кластере, к которому он принадлежит. Docker Swarm имеет DNS-элемент, который можно использовать для распределения входящих запросов по определенному имени службы. Для балансировки нагрузки службы могут быть назначены автоматически или настроены для работы на указанных пользователем портах. Сеть Kubernetes использует плоскую сетевую модель. Таким образом, все модули могут взаимодействовать друг с другом. Как будет происходить взаимодействие между модулями, определяется сетевыми политиками. Обычно модель плоской сети реализована в виде наложения. Модель плоской сети в Kubernetes требует две CIDR (Classless Inter-Domain Routing): один для сервисов, а другой - от которого модули получают IP-адрес. В Docker Swarm узел, присоединяющийся к кластеру Swarm, отвечает за генерацию оверлейной сети для сервисов, охватывающей каждый хост в кластере, и сети мостов Docker только для хостов для контейнеров. Docker Swarm дает пользователям возможность шифровать трафик контейнерных данных при создании оверлейной сети. Масштабируемость Kubernetes - это комплексная структура для распределенных систем. Поскольку он предлагает унифицированный набор API и надежные гарантии состояния кластера, Kubernetes является сложной системой. Эти способности отвечают за замедление развертывания и масштабирования контейнера. По сравнению с Kubernetes, Docker Swarm может развертывать контейнеры на гораздо более высокой скорости. Следовательно, это позволяет быстрее реагировать на масштабирование системы в соответствии с требованиями. Синергия между Docker и Kubernetes Kubernetes способен работать в тандеме с любой технологией контейнеризации. RKT и Docker являются двумя наиболее популярными опциями для механизма оркестровки контейнеров с открытым исходным кодом. Однако последний предпочтительнее, чем первый. Из-за большего предпочтения использования Docker с Kubernetes было приложено много усилий для совершенствования сотрудничества между этими двумя технологиями. Хотя Docker имеет свой собственный механизм оркестровки контейнеров в форме Docker Swarm, склонность к использованию Kubernetes с Docker нельзя не заметить. Это видно из того факта, что Docker for Desktop поставляется с собственным дистрибутивом Kubernetes. Следовательно, совершенно очевидно, что обе технологии, Docker и Kubernetes, объединили свои усилия и также извлекли большую пользу из этого сотрудничества.
img
Для осуществления перенаправления вызовов по необходимым правилам прибегают к настройке входящих и исходящих маршрутов. Из названия ясно, что входящие маршруты отвечают за обработку входящих вызовов, а исходящие за обработку звонков в город. В статье расскажем о настройке обоих маршрутов в IP – АТС Elastix. Настройка входящих маршрутов Начнем с настройки маршрутизации для приходящих на нашу АТС звонков. Для этого, перейдем в раздел PBX → PBX Configuration → Inbound Routes. Перед нами откроется интерфейс настройки входящего маршрута: В рядовом случае, маршрутизация осуществляется по параметру DID Number - это номер, который набрал звонящий. Например, у вас есть 2 номера: 74951234567 и 74957654321. Чтобы при звонке на первый номер вызовы уходили на оператора, а при звонке на второй номер на менеджера, нужно создать два отдельных маршрута. Чтобы Elastix смог отличить звонок на первый номер от звонка на второй, необходимо создать маршрут с DID Number 74951234567 с перенаправлением на оператора, и второй маршрут с DID Number 74957654321 с направлением на менеджера. Для того, чтобы входящие заработали, достаточно следующей настройки: Рассмотрим прочие пункты настройки: Add Incoming Route Description - описание для создаваемого маршрута DID Number - номер DID, который мы обсуждали ранее. Это номер, который набирает звонящий. CallerID Number - в данном поле можно указать номер звонящего (CallerID). В данном случае маршрут будет проверять два условия: совпадения номера звонящего и набранного номера. CID Priority Route - если вы хотите исключительно маршрутизировать звонок по номеру звонящего, то поставьте галочку в данном чекбоксе. Options Alert Info - если данный маршрут является обязательным (аварийным, например, для службы безопасности), мы можете оснащать заголовки SIP сообщений текстом в поле ALERT_INFO. Большинство устройств, получая текст в данном поле могут изменить сигнал звонка или автоматически ответить на звонок CID name prefix - в данном поле разрешается подставить префикс для имени в составе Caller ID. Например, префикс Partner: на маршруте преобразует звонок с номера 74951234567 в Partner:74951234567 Music On Hold - музыка на удержании, для вызовов, которые отрабатываются по этому маршруту Signal RINGING - посылать ли сигнал КПВ (Контроль посылки вызова) до ответа на звонок Pause Before Answer - временная задержка перед обработкой вызова по правилам этого маршрута Privacy Privacy Manager - если вызов пришел без CallerID, то звонящему будет предложено ввести свой номера телефона в течение 3 попыток Call Recording Call Recording - записывать ли вызовы на данном маршруте CID Lookup Source Source - источник для преобразования номеров в имена. Осуществляется с помощью модуля CallerID Lookup Sources Fax Detect Detect Faxes - определять ли факсимильные сигналы на данном маршруте Language Language - настройка языка, который функционирует на данном маршруте. Например, маршрут может быть предназначен для звонящих из Германии, Франции или России. Настройка так же влияет на параметр Privacy Manager Set Destination Выбрать назначение для звонка из представленных Настройка исходящих маршрутов Теперь сделаем настройку маршрутов для исходящих вызовов. Переходим в раздел PBX → PBX Configuration → Outbound Routes: В разделе рассмотрим краткую настройку модуля. Если вы хотите подробно ознакомиться о всеми опциями настройки, то перейдите по этой ссылке. Итак, чтобы ваши телефоны смогли звонить в город, необходимо настроить следующие позиции: Route Name - имя для маршрута Dial Patterns that will use this Route - шаблон для отправки вызовов по этому маршруту. Если вы хотите отправлять все без разбора вызовы и без преобразования в транк, то в поле match pattern укажите . (точку) Trunk Sequence for Matched Routes - транк, в который вызов будет отправляться по этому маршруту. Можно указать несколько, и, в случае, если первый транк будет не доступен, то будет использоваться следующий.
img
Проблемы с производительностью виртуальной машины на ESX/ESXi могут быть вызваны по различным причинам, например, ограничения в работе CPU, излишний объём памяти, задержкой в работе хранилищ или сети. Если одна или более из ваших виртуальных машин показывает высокое время ответа, то проверьте каждую из возможных причин, чтобы выявить слабое место системы. Неисправности Сервисы на гостевых виртуальных машинах работают медленно Приложения на гостевых виртуальных машинах отвечают с задержкой Гостевая виртуальная машина работает медленно или не отвечает Решение Каждый нижестоящий шаг содержит инструкции и ссылки на соответствующие документы. Шаги выстроены в наиболее удобном порядке для выявления и решения проблемы. Такая последовательность также обеспечивает наименьшую потерю данных. Замечание: после завершения каждого шага отмечайте сохраниться ли проблема с производительностью. Не пропускайте шаги и выполняйте их в указанном порядке. Статья включает в себя 4 основных части: Ограничения в работе CPU Излишний объём памяти Задержка в работе хранилища Сетевые задержки Ограничения в работе CPU Чтобы определить являются ли ограничения в работе CPU причиной низкой производительности: Введите команду esxtop, чтобы проверить перегружен ли ESXi/ESX server. Изучите load average в первой строке вывода команд. Средняя загрузка на уровне 1.00 означает, что физические процессоры (CPUs) машины с ESXi/ESX Server используются полностью, средняя загрузка 0.5 означает использование лишь половины ресурсов. Средняя загрузка на уровне 2.00 означает, что система перегружена. Изучите поле %READY, чтобы узнать долю времени, в течении которого виртуальная машина была готова, но не могла быть запланирована для запуска на физическом процессоре. При нормальных условиях эксплуатации это значение должно оставаться в пределах 5%. Если время готовности на виртуальных машинах с низкой производительностью слишком высокое, то необходимо проверить ограничения в работе процессора - убедитесь, что виртуальная машина не ограничена установленным лимитом процессора; Проверьте не ограничена ли виртуальная машина доступным объёмом ресурсов. Если средняя загрузка слишком высока и время, в течении которого машина готова к работе, не зависит от ограничений в работе процессора, то следует отрегулировать загрузку CPU хостa. Чтобы отрегулировать загрузку CPU хоста нужно: Увеличить количество физических CPU хоста Или уменьшить количество выделенных хосту виртуальных CPU. Чтобы уменьшить количество выделенных хосту виртуальных CPU нужно уменьшить общее количество CPU, выделенных всем запущенным виртуальным машинам на ESX хосте. Или уменьшить количество запущенных виртуальных машин Если Вы используете ESX 3.5, проверьте является ли проблемой совместное использование IRQ. Перегрузка памяти Чтобы определить является ли причиной низкой производительности перегрузка памяти необходимо: Ввести команду esxtop и установить перегружена ли память ESXi/ESX server. Изучите MEM overcommit avg в первой строке вывода команд. Это значение отражает соотношение требуемого объёма памяти к объёму доступной памяти, минус 1. Пример Если виртуальной машине требуется 4 ГБ ОЗУ и хост имеет 4 ГБ ОЗУ, то соотношение равно 1:1. После вычитания 1 (из 1:1) поле MEM overcommit avg выдаст значение 0. Память не перегружена и нет необходимости в дополнительном объёме. Если виртуальной машине требуется 6 ГБ ОЗУ и хост имеет 4 ГБ ОЗУ, то соотношение равно 1.5:1. После вычитания 1 (из 1:1) поле MEM overcommit avg выдаст значение 0. Память перегружена на 50% и необходимо на 50% больше ОЗУ, чем доступно. Если память перегружена, то следует отрегулировать количество памяти хоста. Для этого необходимо: Увеличить количество физической ОЗУ хоста Или уменьшить количество памяти, выделяемое виртуальным машинам. Для уменьшения объёма выделенной ОЗУ нужно уменьшить общее количество ОЗУ, выделенной всем виртуальным машинам хоста Или уменьшить общее количество виртуальных машин хоста. Определить состояние виртуальных машин: ballooning или swapping Для определения состояния: Запустите esxtop Введите m для памяти Введите f для полей Выберите букву J для Memory Ballooning Statistics (MCTL) Посмотрите на значение MCTLSZ. MCTLSZ (MB) отображает количество физической памяти гостя, переданной balloon driver. Введите f для поля Выберите букву для Memory Swap Statistics (SWAP STATS) Посмотрите на значение SWCUR. SWCUR (MB) отражает текущую загрузку свопа Для решения этой проблемы убедитесь, что ballooning или swapping не вызваны неправильно заданным объёмом памяти. Если объём памяти задан неверно, то его следует переназначить Задержки в работе хранилища Чтобы определить являются ли задержки в работе хранилища причиной низкой производительности: Проверьте связаны ли проблемы с локальным хранилищем. Перенесите виртуальные машины в другое хранилище. Уменьшите количество виртуальных машин на LUN. Поищите похожие записи на Windows гостей: The device, DeviceScsiPort0, did not respond within the timeout period Используя esxtop найдите высокое время задержки DAVG. Определите максимальную пропускную способность ввода/вывода с помощью команды iometer. Сравните результаты iometer, полученные на VM, с результатами физической машины с этим же хранилищем. Проверьте наличие конфликтов с резервированием SCSI. Если вы используете iSCSI хранилище и Jumbo фреймы, то следует проверить правильность конфигурации. При использовании iSCSI хранилища и многоканального iSCSI Software Initiator убедитесь, что всё правильно сконфигурировано. Если вы обнаружили проблемы, связанные с хранилищем: Убедитесь в том, что ваша аппаратура и HBA карты сертифицированы для работы с ESX/ESXi. Проверьте обновления вашего физического сервера. Проверьте обновления прошивки вашего HBA. ESX верно определяет режим и политику пути для вашего SATP Storage вашего типа и PSP Path Selection. Сетвые задержки Производительность сети тесно связана с производительностью CPU. Поэтому сначала необходимо проверить работу CPU и после этого переходить к поиску проблем в сети. Для определения проблем с производительностью сети: Проверьте максимальную пропускную способность от виртуальной машины с помощью Iperf. Замечание: VMware не поддерживает и не рекомендует какую-либо конкретную стороннюю программу. Во время использования Iperf измените размер окна TCP до 64 K. Это также влияет на производительность. Для изменения размера окна TCP: На стороне сервера введите: iperf -s На стороне клиента введите: iperf.exe -c sqlsed -P 1 -i 1 -p 5001 -w 64K -f m -t 10 900M Запустите Iperf на машине вне хоста ESXi/ESX. Сравните полученные результаты с ожидаемыми результатами, с учётом физической среды. Запустите Iperf на другой машине вне хоста ESXi/ESX, VLAN и физический свитч должны оставаться прежними. Если производительность в порядке, а проблема появляется только на машине, расположенной в другом месте, то проблему нужно искать в вашей сетевой среде. Запустите Iperf между двумя виртуальными машинами на общем сервере/portgroup/vswitch. Если результат положительный, то можно исключить проблемы с памятью, CPU и хранилищем. Если вы обнаружили «бутылочное горлышко» вашей сети, то: Если вы используете iSCSI хранилище и Jumbo фреймы, то следует проверить правильность конфигурации. Если вы используете Network I/O Control, то необходимо проверить правильность конфигурации общих ресурсов и ограничений для вашего траффика. Убедитесь в правильности работы трафик шейпинга.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59