Объяснение контейнеризации: лучшие инструменты и решения для мониторинга контейнеров в 2021 году

Объяснение контейнеризации: лучшие инструменты и решения для мониторинга контейнеров в 2021 году

До недавнего времени контейнеризация в сетях была относительно малоизвестной технологией, которая была известна и освоена лишь несколькими высококвалифицированными специалистами . Перенесемся в сегодняшний день, и все изменилось - очень сильно. Контейнеризация в сетях - не путать с контейнеризацией в транспортировке, хотя есть очевидные сходства - теперь стала мейнстримом, и каждый профессионал в области сетевых технологий должен иметь хотя бы базовое понимание этой удивительной, хотя и сложной технологии.

Наша цель ни в коем случае не сделать вас экспертами по контейнеризации, а скорее предоставить вам достаточно информации, чтобы понять, что это за технология, как она работает, какие продукты доступны и как ее можно отслеживать.

Объяснение контейнеризации: лучшие инструменты и решения для мониторинга контейнеров в 2021 году

Мы начнем с краткого описания контейнеризации и того, чем она отличается от виртуализации, другой технологии с аналогичными целями. Затем мы обсудим плюсы и минусы технологии и кратко рассмотрим, как ее можно использовать в контексте BYOD, Saas и MDM. Далее мы исследуем, какое программное обеспечение для контейнеризации доступно, прежде чем мы рассмотрим некоторые из самых лучших инструментов, которые вы можете использовать для мониторинга своей среды контейнеризации.

В двух словах о контейнеризации

Контейнеризация приложений - это метод виртуализации на уровне ОС, который используется для развертывания и запуска распределенных приложений без необходимости запуска всей виртуальной машины для каждого приложения. Таким образом, несколько изолированных приложений или служб могут работать на одном хосте и обращаться к одному и тому же ядру ОС.

Контейнеры приложений включают компоненты времени выполнения, такие как файлы, переменные среды и библиотеки, необходимые для запуска желаемого программного обеспечения. Контейнеры приложений обычно потребляют меньше ресурсов, чем сопоставимое развертывание на виртуальных машинах, поскольку контейнеры совместно используют ресурсы без необходимости в полной операционной системе для поддержки каждой среды. Полный набор информации для выполнения в контейнере называется образом, и движки контейнера развертывают эти образы на хостах. Контейнеры могут работать в голых железных системах, облачных экземплярах и виртуальных машинах, а также в системах Linux, Windows и Mac OS.

Контейнеризация приложений, как ее часто называют, работает с микросервисами и распределенными приложениями, при этом каждый контейнер работает независимо от других и использует минимальные ресурсы узла. Каждая микрослужба взаимодействует с другими через интерфейсы прикладного программирования, при этом уровень виртуализации контейнера может масштабировать микросервисы для удовлетворения спроса на компонент приложения и распределения нагрузки.

Чем контейнеризация отличается от виртуализации?

Хотя контейнеризация и виртуализация служат одной и той же цели, они совершенно разные по способу работы. В виртуализации, например, сущность операционной системы запускается как приложение, но при этом выступает в качестве отдельного виртуального хоста. Эта операционная система, в свою очередь, доступна любому приложению, установленному на виртуальном хосте. И наоборот, контейнеры связывают части операционной системы с каждым приложением, и с ним связаны только те элементы, библиотеки и модули, которые необходимы каждому приложению.

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

В контейнеризации контейнер и его операционная система, по сути, образуют своего рода сеть, позволяющую доставить приложение на несовместимую машину. Но в отличие от того, что происходит в виртуализации, приложения могут совместно использовать контейнеры, и требуется только один экземпляр операционной системы.

Плюсы и минусы контейнеризации

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

Еще одна замечательная особенность контейнеризации заключается в том, что близость сервисов операционной системы к приложениям, которые в них нуждаются в контейнере, часто означает, что она может обеспечить более быстрое время отклика для конечных пользователей, чем типичная виртуальная машина. Кроме того, для доставки контейнерного приложения по сети требуется гораздо меньше загрузок, чем для управления виртуальной машиной с удаленным доступом. И последнее, но не менее важное: контейнеризация имеет несколько преимуществ перед распределенным программным обеспечением. Фактически, именно эта категория сетевых услуг стала основной причиной недавнего бума контейнеризации.

Но у контейнеров есть не только преимущества, но и есть несколько случаев, когда вы можете предпочесть их избегать. Для начала, хотя контейнеризация хорошо работает в операционных системах Linux, в Windows она почти не поддерживается. Кроме того, поскольку контейнеры совместно используют ядро ​​операционной системы, если оно когда-либо станет уязвимым, все контейнеры также будут уязвимы.

Сеть - еще одна область, которая может усложнить работу с контейнерами. Например, вы должны постоянно поддерживать хорошее сетевое соединение, активно пытаясь изолировать контейнеры. Точно так же мониторинг также сопряжен со своими проблемами. Поскольку контейнеризация обычно используется для создания многоуровневых инфраструктур - с одним приложением в одном контейнере, вам нужно отслеживать больше вещей, чем если бы вы запускали все свои приложения на одной виртуальной машине.

Контейнеризация и BYOD

Принесите свое собственное устройство, или BYOD, стал очень популярным в последнее время, и многие организации позволяют своим сотрудникам использовать свои собственные смартфоны или даже ноутбуки в контексте своей работы. В этом может помочь контейнеризация, поскольку приложения могут быть доступны по сети для сотрудников, к которым они могут получить доступ со своих личных устройств. В этих ситуациях контейнер действует как «иммунизатор», создавая барьер между корпоративным приложением и пользовательским устройством. Однако этим нужно управлять осторожно, поскольку контейнер имеет доступ к ядру пользовательского устройства.

Тем не менее, контейнеризация предлагает очевидное преимущество безопасности для организации, поставляющей приложение, поскольку она устраняет необходимость предоставлять пользователю прямой доступ к сети, тем самым снижая риск заражения вирусами корпоративной инфраструктуры.

Еще одно преимущество контейнеризации по сравнению с BYOD связано с контролем лицензий на программное обеспечение. Например, приложение можно легко вывести из использования в любой момент. Поскольку на самом деле он никогда не устанавливался на устройство пользователя, его можно приостановить, если владелец устройства покинет организацию или устройство будет украдено, что позволит повторно использовать его лицензию.

И последнее, но не менее важное: поскольку связь между приложениями, работающими в отдельных контейнерах, можно включить через API-интерфейсы, фактический объем интеграции и координации или, на другом конце шкалы, изоляции можно легко контролировать.

Контейнеризация и SaaS

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

Кроме того, возможность доставки программного обеспечения на несовместимые устройства без необходимости установки поддерживающих служб особенно полезна для облачных служб, поскольку она расширяет способ доставки для приложения за пределы использования браузеров.

Контейнеризация и управление мобильными устройствами

Управление мобильными устройствами (MDM) - еще одна область, в которой ярко проявляется контейнеризация. Короче говоря, MDM - это то же самое, что BYOD, за исключением того, что мобильные устройства принадлежат и контролируются организацией, а не ее сотрудниками. Но проблемы те же. Например, контейнеризация может быть отличным вариантом для доставки приложений на мобильные устройства, поскольку они могут быть легко потеряны или украдены.

Программное обеспечение для контейнеризации

Давайте кратко рассмотрим некоторые из наиболее распространенных программ для контейнеризации, которые доступны в настоящее время.

Докер

Docker - безусловно, самая известная система контейнеризации. В отличие от большинства сред контейнеризации, которые будут работать только на платформе Linux, эта также будет работать в Windows. И что еще интереснее, это проект с открытым исходным кодом, который можно использовать абсолютно бесплатно, хотя есть и платные версии. Бесплатная версия известна как Community Edition или Docker CE. Вы можете скачать код для Docker CE из репозитория GitHub. Программное обеспечение можно установить в Fedora, Ubuntu, CentOS и Debian Linux, а также оно доступно для Mac OS и Windows 10. Кроме того, если у вас Windows Server 2016 и выше, вам даже не придется устанавливать Docker, поскольку он уже входит в состав операционной системы. В Windows и Windows Server система Docker для своей работы полагается на службы Hyper-V.

LXC

Следующим в нашем списке идет LXC, сокращение от Linux Containers, одна из старейших систем контейнеризации, которая и по сей день остается очень влиятельной, несмотря на то, что ее популярность упала в пользу Docker, который был запущен три года спустя. Как вы могли догадаться по названию, эта платформа доступна только для Linux. Фактически, он уже включен в Ubuntu. В качестве примечания: для создания контейнеров LXC вам понадобится ядро ​​Linux 3.8 или новее. Этот продукт можно использовать совершенно бесплатно. Но, имея в качестве интерфейса управления только среду командной строки, его не так просто изучить и использовать, как Docker. Скорее всего, это объясняет, почему Docker стал звездой в мире контейнеризации.

Kubernetes

Будучи многообещающим, Kubernetes, вероятно, является единственной альтернативой Docker, которая может иметь шанс стать системой контейнеризации номер один. Это еще один проект с открытым исходным кодом, созданный и управляемый Google. Он входит в семейство продуктов Google Cloud, и вы можете рассчитывать на его опыт работы с Google, который поможет платформе взлететь до огромных высот.

Контейнеры создаются с помощью Google Kubernetes Engine (GKE), облачной среды. В качестве альтернативы вы можете получить установленную версию для работы на ваших собственных хостах. Это называется GKE On-Prem. Это также проект с открытым исходным кодом, поэтому код доступен для всех, кто может создать свою собственную версию инструмента. Удивительно, но это происходило в основном за счет различных интеграций с интерфейсными инструментами, а не за счет разветвлений исходного кода на конкурирующих платформах. Например, есть служба Azure Kubernetes, доступная на облачной платформе Azure.

CoreOS rkt

CoreOS rkt (произносится как CoreOS rocket) - еще один проект контейнеризации с открытым исходным кодом. Этот был запущен в 2014 году с целью предоставить замену Docker в более широкой системе контейнеризации под названием Container Linux, которую не следует путать с контейнерами Linux, о которых мы только что говорили. Система CoreOS rkt устанавливается в Linux и предназначена для доставки приложений из облачных сервисов. Контейнер Linux изначально назывался CoreOS Linux. Это легкая операционная система. Что касается CoreOS rkt, это система контейнеризации, которая доставляет Container Linux по сети. Однако его также можно использовать в ArchLinux, Fedora, NixOS, CentOS, Ubuntu и OpenSUSE.

OpenVZ

Последний в нашем списке - OpenVZ, сокращение от Open Virtuozzo. Эта система была представлена ​​в 2005 году, что сделало ее даже старше, чем LXC. Это пакет контейнеризации, работающий в Linux. Часть названия Virtuozzo происходит от предшественника этой системы, которая доступна и сегодня. Virtuozzo была разработана частной компанией и выпущена еще в 2000 году. Это была первая реальная реализация контейнеров. Спустя несколько лет бесплатная версия технологии с открытым исходным кодом стала доступной как OpenVZ, и она доступна по сей день.

Мониторинг контейнерных систем

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

1. SolarWinds Server & Application Monitor (БЕСПЛАТНЫЙ ПРОБНЫЙ ПЕРИОД)

Сервер SolarWinds и монитор приложений были разработаны, чтобы помочь администраторам контролировать серверы, их рабочие параметры, их процессы и приложения, которые на них выполняются. Его можно легко масштабировать от очень маленьких сетей до больших с сотнями серверов, как физических, так и виртуальных, расположенных на нескольких сайтах. Этот инструмент также может отслеживать размещенные в облаке сервисы, такие как Amazon Web Services и Microsoft Azure, а также большинство вариантов контейнерных платформ.

Этот продукт особенно хорошо подходит для мониторинга реализаций Docker. Решение создано для мониторинга любого приложения, использующего архитектуру контейнера Docker, чтобы лучше понять его доступность и производительность. Вы можете использовать мониторинг Docker продукта, чтобы убедиться, что приложение работает должным образом и что необходимые службы имеют соответствующие ресурсы. Он также может помочь вам сопоставить и управлять метриками производительности приложений наряду с мониторингом контейнера Docker и метриками хоста для визуализации производительности, которая может помочь при устранении проблем с производительностью.

Объяснение контейнеризации: лучшие инструменты и решения для мониторинга контейнеров в 2021 году

Сервер SolarWinds и монитор приложений очень легко настроить, и его первоначальная конфигурация также легко выполняется с помощью процесса автоматического обнаружения. Это двухэтапный процесс. Первый проход обнаружит серверы, а второй - приложения. Это может занять время, но его можно ускорить, снабдив инструмент списком конкретных приложений, которые нужно искать. После того, как инструмент запущен и работает, удобный графический интерфейс упрощает его использование. Вы можете выбрать отображение информации в таблице или в графическом формате.

Цены на сервер SolarWinds и Application Monitor начинаются с 2 995 долларов США и зависят от количества отслеживаемых компонентов, узлов и томов. Бесплатно 30-дневная пробная версия доступна для скачивания, если вы хотите попробовать продукт перед покупкой.

2. Диспетчер приложений ManageEngine

ManageEngine, возможно, не так известен, как SolarWinds, но это еще одно имя, пользующееся отличной репутацией среди администраторов сети и баз данных. ManageEngine Application Manager занимается управлением приложения. Вы, наверное, догадались сами. Это, однако, несколько вводящее в заблуждение название, поскольку это в равной степени платформа для мониторинга и инструмент управления.

Этот инструмент предлагает интегрированный мониторинг производительности приложений для всех ваших потребностей в мониторинге серверов и приложений. Он также может сделать это для базовых компонентов инфраструктуры, таких как серверы приложений, базы данных, компоненты промежуточного программного обеспечения и обмена сообщениями, веб-серверы, веб-службы, пакеты ERP, виртуальные системы и облачные ресурсы. В двух словах, это всеобъемлющая платформа.

Объяснение контейнеризации: лучшие инструменты и решения для мониторинга контейнеров в 2021 году

ManageEngine Диспетчер приложенийимеет специальное расширение для мониторинга контейнеров Kubernetes и Docker. Например, средство управления Docker не только дает представление о работоспособности и производительности контейнеров Docker, но также позволяет отслеживать хост Docker с помощью надежного механизма мониторинга, предупреждений и аналитики. Что касается его возможностей мониторинга кластера Kubernetes, они позволят вам автоматически обнаруживать части и отображать отношения между объектами в узлах кластера и Kubernetes, пространствах имен, развертываниях, наборах реплик, подах и контейнерах. Он также будет отслеживать статистику кластера Kubernetes и с легкостью выявлять сбои и их источники. Используя его, вы получите видимость операционных данных, таких как количество используемых ресурсов, пространства имен для каждого кластера и для каждого модуля, а также сможете отслеживать емкость и использование ресурсов вашего кластера и переходить к конкретным частям кластера.

ManageEngine Application Manager доступен в нескольких изданиях. Существует бесплатная версия с ограниченным набором функций, а также платные версии Professional и Enterprise . Цены начинаются с 945 долларов, подробности можно получить, связавшись с ManageEngine. Также доступна бесплатная 30-дневная пробная версия.

3. PRTG Network Monitor.

PRTG Network Monitor от Paessler AG является еще одним большим продуктом. Хотя по своей сути это инструмент сетевого анализа SNMP, он обладает гораздо большей функциональностью, о чем мы собираемся поговорить. Скорость установки - еще одна сильная сторона продукта. По словам Песслера, it can be set up in a couple of minutes. And while your experience may vary, installation is generally faster than most competitor’s thanks in part to the tool’s auto-discovery engine. The product also offers a choice of user interfaces. You can choose between a native Windows enterprise console, an Ajax-based web interface and mobile apps for Android and iOS. Alerting and reporting are excellent and the product boasts a wide range of reports that can be viewed as HTML or PDF or exported to CSV or XML to be processed externally.

Объяснение контейнеризации: лучшие инструменты и решения для мониторинга контейнеров в 2021 году

Thanks to a rather unique concept called sensors—a type of functionality plug-ins that are already built into the product—additional metrics can be monitored with the PRTG Network Monitor. There are about two hundred sensors available with the product to monitor virtually any network parameter. When it comes to monitoring containers, especially Docker, PRTG has just what you need in its Docker Container Status Sensor which, unsurprisingly, monitors the status of a Docker container. This sensor will display several parameters such as the overall status of the container (create, running, paused, restarting, exited), its uptime, exit code, CPU usage and available memory both in bytes and percent.

The PRTG Network Monitor is available in a free version which is limited to monitoring no more than 100 sensors. Each parameter you want to monitor counts as one sensor. For example, monitoring bandwidth on each interface of a 4-port router will use up 4 sensors and monitoring the CPU and memory on that same router will use up 2 more. Each additional sensor you install also counts. For more than 100 sensors—which you will most likely need—you’ll need a license. Their prices start at $1 600 for up to 500 sensors, including the first year of maintenance. A free 30-day trial version is also available.

4. Dynatrace

Dynatrace is another cloud-based Software as a Service (SaaS) offering. It can detect, solve and optimize applications automatically. Discovering and mapping a complex application ecosystem is simply a matter of installing the Dynatrace OneAgent. The service will give you a high-fidelity view of your entire application stack, from the performance of applications, cloud infrastructure, and user experience. It will help you effortlessly detect problems along with their business impacts and root cause.

Объяснение контейнеризации: лучшие инструменты и решения для мониторинга контейнеров в 2021 году

Dynatrace also claims to have the broadest coverage of any monitoring solution in terms of languages supported, application architectures, cloud, on-premise or hybrid, enterprise apps, SaaS monitoring, containerization, and more. The tool automatically discovers and monitors dynamic microservices running inside containers. It shows you how they’re performing, how they communicate with each other and it helps you quickly detect poorly performing microservices. Once it has finished discovering your infrastructure, you’ll be able to view the containerized processes through the tool’s dashboard in real-time. The software can also monitor the performance of applications and microservices located within the containers.

Log analytics is another useful feature provided with Dynatrace. You can view all the log messages associated with an application inside one log file. Every log entry provides you with additional information that can be used to filter your search. For example, log entries will show the container image, ID that logged the message, and the output used.

Pricing for Dynatrace is not readily available but it can be obtained by signing up for the free 15-day trial. Once you register for the trial, it’s only a matter of installing the agent on your servers and you could start monitoring within 5 minutes.

5. Sumo Logic

Sumo Logic is an application and log monitoring solution that’s compatible with containerization platforms such as Docker. The product was created to aggregate large volumes of log data from pretty much any source. But gathering log data is only the beginning. The service can also help you use the collected data to monitor performance, improve applications, and potentially even address security issues and compliance.

Объяснение контейнеризации: лучшие инструменты и решения для мониторинга контейнеров в 2021 году

Sumo Logic can monitor containers in real-time. Its dashboard view is broken down into metric boxes and graphs. In one dashboard you can view a graph on the Top 10 Containers by CPU Consumption or the Top 10 Containers by Traffic Sent and Received as well as the number of containers created and the number of hosts. Advanced analytics is another feature that makes this a particularly strong product. Its analytics capability can automatically detect anomalies in your containerizing infrastructure and thereby automate the process of identifying performance issues.

Sumo Logic is available under three different plans. There’s the free plan which is targeting individuals and teams looking to try out Sumo Logic for smaller projects, for an unlimited period of time. Next is the Professional plan at $90/month per 1GB average daily log data. And at the top, you have the full-featured Enterprise plan at $150/month per 1GB average daily log data. Note that a 30-day trial is available on both paid plans.

Wrapping Up

Концептуализацию контейнеризации сложно представить. Однако это вполне может быть ответом на требования вашей инфраструктуры для доставки услуг на удаленные устройства. Надеемся, что нам удалось пролить свет на эту сложную тему. Хотя мы, возможно, не сделали вас экспертами, нашей целью было предоставить вам достаточно справочной информации, чтобы вы могли лучше понять технологию, когда вы начнете ее изучать.


6 лучших инструментов управления сетью, которые отслеживают производительность

6 лучших инструментов управления сетью, которые отслеживают производительность

Рынок программного обеспечения для управления сетью очень переполнен. Сократите свой поиск, следуя нашим рекомендациям по лучшим инструментам управления сетью.

10 лучших инструментов Ping Sweep, чтобы рассказать вам больше о вашей сети

10 лучших инструментов Ping Sweep, чтобы рассказать вам больше о вашей сети

Проверка связи может быть использована в ваших интересах многими способами. Читайте дальше, пока мы обсуждаем, как и представляем 10 лучших инструментов проверки Ping, которые вы можете найти.

6 лучших инструментов для мониторинга веб-сайтов

6 лучших инструментов для мониторинга веб-сайтов

Веб-сайты важны и должны постоянно контролироваться для адекватной работы. Вот некоторые из лучших инструментов для мониторинга веб-сайтов.

Лучшие инструменты развертывания программного обеспечения для команд разработчиков в 2022 году

Лучшие инструменты развертывания программного обеспечения для команд разработчиков в 2022 году

Вот некоторые из лучших инструментов для развертывания программного обеспечения, которые облегчают управление любым количеством машин.

Контрольный список соответствия HIPAA и инструменты для использования

Контрольный список соответствия HIPAA и инструменты для использования

Если вы работаете в сфере здравоохранения или каким-либо образом связаны с ИТ в этой отрасли, скорее всего, вы слышали о HIPAA. Переносимость медицинского страхования

Обзор лучших бесплатных сборщиков и анализаторов sFlow в 2021 году

Обзор лучших бесплатных сборщиков и анализаторов sFlow в 2021 году

sFlow - это протокол анализа потока, который встроен во многие сетевые устройства. Мы рассматриваем пятерку лучших бесплатных сборщиков и анализаторов sFlow.

Лучшие инструменты и программное обеспечение для безагентного мониторинга инфраструктуры в 2021 году

Лучшие инструменты и программное обеспечение для безагентного мониторинга инфраструктуры в 2021 году

Чтобы помочь вам выбрать правильный, мы представили лучшие инструменты безагентного мониторинга инфраструктуры и дали вам быстрый обзор каждого из них.

SolarWinds Mail Assure - ОБЗОР 2021 г.

SolarWinds Mail Assure - ОБЗОР 2021 г.

Безопасность электронной почты - важная задача поставщиков управляемых услуг. Мы рассматривали SolarWinds Mail Assure, один из лучших инструментов для этой цели.

Лучшие инструменты сетевого мониторинга для Windows 10 в 2021 году

Лучшие инструменты сетевого мониторинга для Windows 10 в 2021 году

Для сетевого монитора Windows требуются инструменты с ограниченными требованиями. Сегодня мы познакомились с лучшими инструментами сетевого мониторинга для Windows 10.

9 лучших инструментов для устранения неполадок сети, которые мы рассмотрели в 2021 году

9 лучших инструментов для устранения неполадок сети, которые мы рассмотрели в 2021 году

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