Реклама

Операционные системы Linux выпускаются в разных вариантах. В то время как операционные системы Linux, такие как Ubuntu, довольно распространены, третьи ориентированы на нишу. Это Kali Linux, ориентированный на безопасность. Легкие дистрибутивы, такие как Xubuntu и даже Hannah Montana Linux (!). Для настольного использования хорошо работает операционная система Linux vanilla. Однако для специализированных задач, таких как запуск сервера, лучше всего найти адаптированную версию.

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

instagram viewer
. Проверьте этот обзор и практический взгляд на Контейнер Linux.

Практические занятия с контейнером Linux: базовые знания

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

Наиболее распространенные развертывания Container Linux находятся в кластерных средах. Дистрибутив, ранее известный как CoreOS, даже включает средства для ускорения кластер только с одной машины. Однако отличительной чертой Container Linux является его зависимость от контейнеры.

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

Контейнерные развертывания вместо этого запускают приложения в своих собственных контейнерах поверх программного обеспечения для виртуализации. докер остается наиболее популярным контейнерным программным обеспечением, хотя chroot, LXC и Linux-VServer входят в число альтернатив Docker.

Практика с контейнером Linux: зачем использовать контейнеры?

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

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

Гибкая разработка концентрируется на итерации и учитывает непредсказуемость. Вы можете прочитать Agile Manifesto для дальнейшего понимания гибкой философии. Однако, несмотря на преимущества контейнеров, это не идеальный метод виртуализации. Поскольку контейнеры совместно используют ядро ​​операционной системы, существует угроза безопасности. Любая уязвимость или нарушение, влияющее на контейнер, получает доступ к операционной системе. Но есть обходной путь запуска контейнерных приложений в операционной системе на виртуальной машине. Это гарантирует, что операционная система хост-машины изолирована от отдельной операционной системы хост-контейнера.

Контейнерство также требует, чтобы контейнеры использовали одну и ту же операционную систему. С виртуальными машинами каждое приложение получает свою собственную операционную систему. Таким образом, вы не можете запускать приложения, разработанные для Windows Server, в контейнерной среде Linux и наоборот.

Практические занятия с контейнером Linux: что такое контейнер Linux?

CoreOS Core Update

CoreOS, или Container Linux, как его теперь называют, является операционной системой Linux с открытым исходным кодом. Это легкий дистрибутив, нацеленный на кластерное развертывание. В частности, CoreOS концентрируется на простых, надежных и масштабируемых развертываниях. Вы не найдете менеджера пакетов. Вместо этого Контейнер Linux требует, чтобы все приложения запускались внутри контейнеров. Контейнер Linux использует Chrome OS в качестве своей базы. Поэтому Container Linux остается довольно легковесным. Для тестирования я запускал операционную систему Linux, ранее известную как CoreOS, на виртуальной машине на устаревшем ноутбуке с процессором AMD A10 на базе HP Envy m6-1205dx. Потребление системных ресурсов оставалось довольно низким.

Поскольку Container Linux отказывается от нескольких традиционных функций операционной системы Linux для настольных компьютеров, он облегчает распространение. В отличие от настольной операционной системы, вы не найдете менеджера пакетов. Вместо этого все приложения работают как контейнеры Docker. Это обеспечивает мобильность и изоляцию услуг. Если вам нужна среда рабочего стола, вам не повезло. Контейнеру Linux не хватает графического интерфейса пользователя. Вместо этого все основано на командной строке. Панель инструментов CoreUpdate действительно предлагает информацию о работоспособности машины, запущенных службах и работоспособности кластера. Но это доступно только как компонент в Премиум-подписка на управляемый Linux.

Контейнерная архитектура Linux

Контейнер Linux легок и предназначен для контейнеров и кластеризации. Поскольку среда рабочего стола отсутствует, конфигурация функционирует иначе, чем в операционной системе Linux, такой как CentOS или Ubuntu. После начальной загрузки Container Linux загружает файл конфигурации облака. Вам нужно будет ввести информацию в облачной конфигурации. Это может быть немного сложно, особенно для тех, кто не знаком с cloud-config. Но это важный файл, который дает Container Linux возможность загружать необходимые службы, изменять параметры и управлять кластерами.

Кроме того, etcd и флот Демоны остаются неотъемлемой частью Container Linux. Обе эти службы запускаются при запуске по умолчанию. Кроме того, при загрузке файл cloud-config позволяет хосту узнать, как присоединиться к существующему кластеру. etcd Демон распространяет и хранит данные для хостов в кластере. Это важно для поддержания конфигураций, а также для обнаружения сервисов. флот Демон похож на распределенный init. Этот демон ссылается на Systemd init для хостов в кластере и выполняет такие задачи, как планирование сервиса.

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

Практика с контейнером Linux: кто должен его использовать?

Контейнер Linux бесплатен, легок и довольно прост в установке на виртуальной машине. Любой, кому нужны быстрые, масштабируемые, контейнерные развертывания, должен выбрать Container Linux. Преимущественно системные администраторы и администраторы баз данных больше всего выиграют от Container Linux. Поскольку в Container Linux отсутствует настольная среда, он лучше всего подходит для управления кластером и в настройках сервера. Если вы ищете серверную операционную систему Linux, Container Linux является одним из 12 лучших дистрибутивов Linux-серверов 12 лучших операционных систем Linux Server и кто их должен использоватьСтроить сервер? Linux идеален, обычно предлагает расширенные разрешения, повышенную гибкость и стабильность. Но какой из них выбрать? Посмотрите на 12 лучших серверных операционных систем Linux и кто должен их использовать. Прочитайте больше s.

Air Pair имеет отличную запись на CoreOS стимулы. В этой статье упоминается высокая доступность, поддержка производственной среды, контроль версий программного обеспечения и т. Д. В качестве основных преимуществ использования Container Linux. Примечательно, что есть также невероятно преданное сообщество с открытым исходным кодом. Контейнер Linux предназначен для опытных пользователей Linux. Справочная документация, хотя и является всеобъемлющей, предполагает умеренную степень знакомства с Linux. У начинающих и начинающих пользователей могут возникнуть проблемы с первоначальной установкой.

Более конкретно, облачная конфигурация может быть проблемой. В разделе комментариев одного Видео установки CoreOS, Пользователь YouTube Setyoso Nugroho заявил: «Хороший учебник! Весьма сбивает с толку, когда вы изучаете конфигурацию файла # cloud-config в CoreOS ». Пока конфигурация Контейнер Linux не очень сложен, он предполагает глубокое понимание функций Linux, таких как VIM редактор.

Практические занятия с контейнером Linux: как установить

Существует много способов установить Контейнер Linux. По данным сайта CoreOSОфициальные платформы включают Amazon EC2, DigitalOcean, Microsoft Azure, голый металл и OpenStack. Помимо Oracle Linux, CentOS и Suse, CoreOS является одним из немногих Совместимые с Azure операционные системы Linux Microsoft действительно любит Linux в конце концов?У Microsoft и Linux были бурные отношения. За прошедшие годы руководители компаний выразили желание увидеть исчезновение Linux, но в наши дни история другая. Microsoft действительно любит Linux в конце концов? Прочитайте больше . Благодаря активному сообществу также поддерживаются такие платформы, как Packet, Rackspace, Brightbox, VirtualBox и VMware. Я обнаружил, что самым простым способом была установка Container Linux на VirtualBox с использованием файл ISO. Вот краткое руководство по использованию VirtualBox Как использовать VirtualBox: руководство пользователяС VirtualBox вы можете легко установить и протестировать несколько операционных систем. Мы покажем вам, как настроить Windows 10 и Ubuntu Linux в качестве виртуальной машины. Прочитайте больше .

Настройка VirtualBox

Откройте VirtualBox, и вам будет предложено указать имя виртуальной машины, тип операционной системы и версию. Я назвал мой просто CoreOS. Для типа выберите Linux. В качестве версии используйте Linux 2.6 / 3.x / 4 / x (64-разрядная версия). Нажмите "Далее.

CoreOS Start

Теперь вам нужно выделить вашу оперативную память. CoreOS предлагает минимум 1024 МБ оперативной памяти.

CoreOS RAM

После выбора оперативной памяти вам необходимо добавить виртуальный жесткий диск. Используйте опцию создать виртуальный жесткий диск сейчас.

Создать VHD CoreOS

На следующем экране вам будет предложено указать тип файла жесткого диска. Выберите VDI или образ диска VirtualBox.

CoreOS VDI

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

CoreOS Dynamic

Затем выберите местоположение и размер файла. Я оставил CoreOS по умолчанию в качестве имени и выбрал размер файла 8 ГБ.

Распределение размера файла CoreOS

Когда ваша виртуальная машина CoreOS VirtualBox настроена правильно, продолжайте и нажмите зеленую кнопку Пуск.

CoreOS Start

После того, как вы нажмете «Пуск», вам нужно будет выбрать загрузочный диск. Перейдите в папку, в которой вы получили CoreOS ISO, и продолжайте.

Конфигурирование контейнера Linux

После запуска вашего CoreOS ISO, контейнер Linux начинает загружаться. В конечном итоге вы увидите строку, в которой указана версия CoreOS, а в командной строке:

ядро @ локальный

Введите:

sudo openssl passwd -1> cloud-config-file
CoreOS Passwd Config

Командная строка выдает предупреждение, что если не удается открыть файл конфигурации. Введите желаемый пароль и продолжайте. Далее введите:

cat cloud-config-file
CoreOS Cat Cloud Config

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

vi cloud-config-file
CoreOS VI

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

Пример CoreOS Cloud Config

Моя выглядела так:

# cloud-config пользователи: moe passwd: [пароль SSL] группы: - sudo - docker. 
CoreOS Cloud Config Ex

Вы можете проверить свой файл конфигурации облака, введя:

cat cloud-config-file
CoreOS Check Cloud Config

Это возвращает ваш файл конфигурации. Если все выглядит хорошо, приступайте к установке CoreOS:

sudo coreos-install -d / dev / sda -C стабильный -c облачный-config-файл
CoreOS Install Final

Вы увидите сообщение о том, что CoreOS загружается, записывается и проверяется. Как только это закончится, вы увидите сообщение «Успех! CoreOS [версия] установлена ​​в / dev / sda. »

CoreOS Success

Завершите работу вашей виртуальной машины CoreOS, а затем снова запустите ее. При запуске резервного копирования обязательно размонтируйте CoreOS ISO, иначе live CD будет запущен снова.

CoreOS загрузится, и вы получите приглашение для входа в систему в командной строке:

логин localhost:
CoreOS Final Login

Введите ваше имя пользователя и пароль. Это загрузит сообщение «Контейнер Linux от CoreOS [версия]» и новую командную строку.

Окончательный вход в систему CoreOS

Практика с контейнером Linux: следующие шаги

Теперь, когда Container Linux от CoreOS установлен правильно, вы можете приступить к настройке контейнеров и кластеров. Документация CoreOS имеет отличную Краткое руководство. Здесь есть информация об обнаружении сервисов с использованием etcd, а также раздел по управлению контейнерами с помощью Docker. Я выполнил несколько быстрых тестов, таких как Docker «Hello World». Кроме того, я установил образ Plex Docker, потому что я большой любитель медиа-сервера. Наконец, я создал парк для управления кластером.

Сначала вам нужно настроить основные компоненты Container Linux:

  • etcd
  • докер
  • флот

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

Практика с контейнером Linux: последние мысли

Я не часто использую контейнеры, но Container Linux упростил развертывание. Документация отлично с примерами конфигурационных файлов. Обратите внимание, что для начинающих, несколько неофициальных видеоинструкции по установке облегчить установку CoreOS Хотя CoreOS утверждает, что Container Linux является легковесным, я изначально был настроен скептически. Тем не менее я развернул Container Linux в виртуальной машине с довольно низким потреблением ресурсов. И потому что я хотел проверить, действительно ли Container Linux был действительно легким, я использовал свой устаревший ноутбук HP и не столкнулся с какими-либо проблемами.

Однако некоторые этапы первоначальной установки не очень удобны для начинающих. Установка и настройка Container Linux требует тщательного знакомства с Linux. Примечательно, что я не пробовал инструментальную панель CoreUpdate, которую CoreOS предлагает в качестве платной расширенной функции. Хотя у меня нет проблем с использованием командной строки, графическое окружение для мониторинга будет хорошим дополнением.

Системные администраторы и администраторы баз данных получают наибольшую выгоду от Container Linux. Однако для домашних серверов это простой и легкий способ создания кластерной среды. Более того, с помощью Container Linux вы можете раскрутить кластер с одного компьютера. Но Container Linux - отличное введение в работу с контейнерами. Если вы пытаетесь узнать больше о Docker и контейнерах, Container Linux отлично работает на виртуальной машине и предлагает все ресурсы, необходимые для начала работы.

Это отличное готовое решение для новичков в контейнерах в дополнение к опытным инженерам DevOps, системным администраторам и администраторам баз данных. В конечном счете, Container Linux от CoreOS является простым средством создания масштабируемой, эффективной, контейнерной среды.

Вы используете CoreOS? Вы планируете? Дайте нам знать, как вы контейнеризуетесь в Linux, в разделе комментариев ниже!

Мо Лонг - писатель и редактор, охватывающий все, от технологий до развлечений. Заработал английский Б.А. из Университета Северной Каролины в Чапел-Хилл, где он был ученым Робертсона. В дополнение к MUO, он был представлен в htpcBeginner, Bubbleblabber, The Penny Hoarder, Tom's IT Pro и Cup of Moe.