ЗАПРОС IMP:
Пожалуйста, присоединяйтесь к моей форме для участия в команде.
Также приглашаем вас присоединиться к ИНТЕЛЛЕКТУАЛЬНОЙ СИСТЕМЕ с ОТКРЫТЫМ ИСХОДНЫМ КОДОМ (OSINT), если вы можете помочь в проекте с открытым исходным кодом, касающемся защиты людей от различных заболеваний, таких как вспышка КОРОНЫ
Также приглашаем вас присоединиться к ИНТЕЛЛЕКТУАЛЬНОЙ СИСТЕМЕ с ОТКРЫТЫМ ИСХОДНЫМ КОДОМ (OSINT), если вы можете помочь в проекте с открытым исходным кодом, касающемся защиты людей от различных заболеваний, таких как вспышка КОРОНЫ
Это 7-минутный вызов между тобой и мной. Я должен рассказать вам о docker, lxc, сетях, облаке и т. Д., Чтобы вы могли сделать это САМОСТОЯТЕЛЬНО. И вы должны сосредоточиться в течение 5 минут. Давайте предположим, что нам всем по 5 лет, и мы собираемся узнать что-то о послевузовском образовании. Я сохраню эту сложную тему в возможной упрощенной форме.
что такое рабочий стол? Рабочий стол содержит процессор, оперативную память, жесткие диски и т. Д. И операционную систему. Эта операционная система может быть Windows, Linux, Mac и т.д. У вас есть графический интерфейс (GUI) на рабочем столе но если вы удалите графический интерфейс, он станет сервером. мы называем это “сервер с голым металлом”.
Металлические серверы являются наиболее дорогостоящими. Таким образом, люди делились ими и называли их виртуальными частными серверами (VPS/VM). Но всем не нужна такая же ОС, как Windows. Некоторые хотят Linux. 20 лет назад появилось программное обеспечение под названием “Гипервизоры”, позволяющее запускать Windows и Linux с одной и той же машины, и эта технология называется виртуализацией. 60 лет назад IBM начала работу над виртуализацией.
Временная шкала, необязательно читайте здесь.
УРОВЕНЬ ПЕРВЫЙ: БОРЬБА МЕЖДУ ГИПЕРВИЗОРАМИ – частью программного обеспечения, которое создает операционную систему внутри операционной системы.
Существует три типа виртуализации: полная виртуализация (аппаратная виртуализация), пара-виртуализация и виртуализация на уровне операционной системы.
Полная виртуализация: Гипервизоры на основе ядра (KVM и т. Д.) Исправляют оперативную память/ядра/жесткий диск и т. Д. Для каждой машины. Это создало проблему с ресурсами среди виртуальных машин, поскольку малоиспользуемые машины имеют хорошие ресурсы, а сильно загруженные машины – небольшие ресурсы.
БОРЬБА МЕЖДУ МАШИНАМИ – РЕШАЕТСЯ ПУТЕМ ОБЪЕДИНЕНИЯ РЕСУРСОВ Вместо виртуализации в ядре эти новые гипервизоры на базе ОС (OpenVZ и т. Д.) Создали пул ресурсов, таких как оперативная память, жесткий диск и т. Д., И совместно используют их с виртуальными машинами, когда они требуются. Это несколько контролировало ход боя.
ВИРТУАЛЬНЫЕ МАШИНЫ ЯВЛЯЮТСЯ МАГИСТРАЛЬНЫМИ, ТРЕБУЕТСЯ ЛЕГКОЕ РЕШЕНИЕ Гипервизор ядра или машины на базе гипервизоров на базе ОС требуют больших файлов [.iso (1-4 ГБ)] для установки. Для создания небольшой виртуальной машины требуется время. Кроме того, они тяжелы на жестком диске. Чтобы противостоять этому, в последние годы появилась новая облегченная технология, которую мы называем “контейнерами”. Они чем-то похожи на визуализаторы на базе ОС, за исключением того, что у них есть сжатые изображения в Интернете, которые вы можете загрузить и создать ОС по своему выбору.
КОГДА У НАС ЕСТЬ ХОРОШИЕ ЗЕМЛИ ДЛЯ ПРОГУЛОК, ЗАЧЕМ НАМ ТОГДА НУЖНЫ ОБЛАКА Сегодня вы можете получить самую популярную ОС – Ubuntu с iso-компакт-диска (1 ГБ+), а также в контейнере (93 МБ). Эта огромная разница в размере и времени получения ubuntu между компакт-диском и контейнером является реальной потребностью облака.
Обязательно прочтите: Пожалуйста, обратитесь к моим предыдущим постам о создании вашего облачного сервиса, такого как digital ocean или google cloud. Часть 1 и Часть-2 и Часть-3
Подведем итоги первого уровня: 20 лет назад мы могли получить много операционных систем из одной операционной системы, но с ресурсами была проблема. Полная аппаратная виртуализация, затем паравиртуализация, затем контейнеры. LXD и докеры – хорошо известные контейнеры. ЧИТАЙТЕ ДАЛЬШЕ: https://www.unixarena.com/2017/12/para-virtualization-full-virtualization-hardware-assisted-virtualization.html/
вы можете купить металлический сервер с KVM или на рабочем столе Windows использовать VirtualBox или VMware playstation. Вы будете использовать iso-образ (около 1 ГБ) для запуска своих серверов Linux на рабочем столе Windows.
Вместо использования образа .iso (около 1 ГБ) мы будем использовать небольшие изображения (100 МБ), размещенные в Интернете, для вращения наших виртуальных машин (лучшее слово – контейнер).
Две наиболее популярные контейнерные технологии – LXD и докеры. Но они немного разные. В LXDE вы запускаете образ сервера, подобный виртуальной машине, но в docker вы можете запустить образ сервера (минимальный для lxd) и образы приложений. Хорошо, позвольте мне привести вам пример:
Предположим, у вас есть веб-сайт на PHP. Для запуска этого PHP-сайта вам понадобится сервер apache (например, xampp) и база данных MySQL.
В LXD вы создадите сервер ubuntu и внутри него установите сервер apache и базу данных MySQL. [1 контейнер хранится внутри apache, mysql]
Но в докере у вас может быть два разных контейнера: один для apache и один для MySQL. И почему только один контейнер для сервера apache? давайте возьмем два контейнера apache и три MySQL … если один выйдет из строя, другие начнут работать… и наше приложение никогда не “Выйдет ИЗ Интернета”. [разные контейнеры содержат разные приложения]
Контейнеры – это серверы!!! давайте предположим так. Итак, мы должны знать: (1) Как запустить сервер. (2) Как запустить сервер. (3) Как выполнять кодирование внутри сервера: -поместите приложения/программы внутри сервера. (4) как остановить сервер. (5) Как сделать наш сервер доступным для всего мира через Интернет. (6) Как создать образ сервера, чтобы создать из него новый сервер. (7) Как управлять множеством серверов с помощью одной программы на одном хосте. (8) У меня есть серверы, размещенные в разных частях мира. могу ли я управлять этим с помощью одной программы?
Установить lxde: быстрая установка lxde Установка докера: установка sudo apt docker.io -y && sudo systemctl включить -теперь docker && sudo usermod -корень докера AG и докер -версия
Прежде чем мы начнем: Помните: Ubuntu – это “образ”, и мы создаем “контейнер (скажем, сервер)” из этого образа. Хост – это машина, которую мы используем для создания на ней как можно большего количества контейнеров по нашему выбору, таких как ubuntu, centos, fedora и т.д.
Ниже (скажем)
(1) Как запустить сервер. LXD: запуск lxc ubuntu:18.04 мой первый контейнер Докер: докер тянет ubuntu: последняя версия и запуск докера - это мой первый контейнер ubuntu: самый последний
(2) Как запустить сервер. LXD: lxc запускаю свой первый контейнер Докер: докер запускает мой первый контейнер
(3) Как выполнять кодирование внутри сервера: -поместите приложения/программы внутри сервера. давайте войдем в контейнер и займемся кодированием, например, установим сервер Nginx. LXD: lxc выполняет мой первый удар по контейнеру Докер: докер ps -a –> получить идентификатор контейнера, а затем выполнить docker exec -это ed58974dd bash ed58974dd – это идентификатор контейнера, указанный докером. В отличие от LXD, вы должны использовать случайные идентификаторы поставщика докеров’
После установки … введите выход , чтобы выйти из контейнера.
(4) Как остановить сервер. LXD: lxc останови мой первый контейнер Докер: остановка докера ed58974dd
(5) Как сделать наш сервер доступным для всего мира через Интернет LXD: всякий раз, когда вы создаете контейнер, вы получаете IP-адрес этого контейнера. ipa даст вам адрес контейнера или сделает список lxc. Мы создали контейнер lxd с помощью nginx. nginx будет прослушивать порт 80. внутренний ip: 80 . Но к этому внутреннему ip-адресу нельзя получить доступ через Интернет. В Интернете доступен только IP-адрес хоста. Чтобы проложить этот маршрут внутренний ip:80 кому адрес:8945 (какой бы порт вы ни выбрали) вам нужно сделать iptables.
https://dev.to/manishfoodtechs/networking-is-easy-connecting-multiple-vms-servers-containers-devices-on-single-external-ip-in-one-command-139a вот статья, которая вам поможет:)
Докер: В докере, после создания контейнеров, это немного сложно. Поэтому вы должны знать, прежде чем запускать изображение докера, какой порт вам потребуется. для этого примера nginx мы знаем его порт 80, поэтому наш синтаксис может быть запуск докера -p 8945:80 -t -i Ubuntu . Кроме того, существуют способы использования iptables в docker
(6) Как создать образ сервера, чтобы создать из него новый сервер? Теперь мы создали контейнер для хранения Nginx внутри него. Нам может потребоваться использовать его позже для создания нового контейнера с этим изображением.
LXD: lxc останови мой первый контейнер
lxc публикует мой первый контейнер - псевдоним ubuntu nginx список изображений lxc экспорт изображений lxc ubuntu nginx импорт изображений lxc ubuntunginx.tar.gz --ubuntunginx lxc запускает ubuntunginx mysecondcontainer
Экспортированное изображение выглядит следующим образом tar.gz в корневой папке/просто сделайте ls . Затем вы можете экспортировать это tar.gz файл на ваш диск или электронную почту: или что угодно ты хочешь
Докер: фиксация докера -m "ubuntu1804" -"корневой" ed58974dd для специалистов по продуктам питания/ubuntu nginx:последняя версия
Как архив: докер экспортировал 5 > Тарбаллэкспортирован 5
Переход к концентратору докеров: В docker вы можете отправлять свои изображения в docker hub. docker push manish food tech/ubuntu nginx: последние версии изображения списка докеров
(7) Как управлять множеством серверов с помощью одной программы на одном хосте? LXD: LXD – это для БОЛЬШИХ МАЛЬЧИКОВ. Это дает вам свободу и неограниченный путь вашего пути. Существует несколько программ управления контейнерами lxd, которые вы можете установить и управлять контейнерами lxd: https://lxc-webpanel.github.io/
Докер: https://www.portainer.io/
(8) У меня есть серверы, размещенные в разных частях мира. могу ли я управлять этим с помощью одной программы? Kubernetes и докер-рой
Я попрошу вас загрузить VMware workstation на ваши ноутбуки/настольные компьютеры. Попробуйте запустить сервер ubuntu 18.04 LTS в качестве хоста. Затем внутри хоста вы можете запустить lxd и docker. Кроме того, попробуйте запустить docker внутри LXC. Но вы не можете запустить lxc внутри docker, а docker внутри docker.
Я надеюсь, что вам, людям, понравилась вышеприведенная статья, и вы чему-то научились.
Приглашаем вас присоединиться к моей команде форма для присоединения .
Контактный адрес электронной почты: Manishfoodtechs@gmail.com .
Если у вас возникнут какие-либо проблемы, наша команда также займется профессиональными консультациями и доставкой.
Оригинал: “https://dev.to/manishfoodtechs/5-minutes-challenge-to-css-php-non-devops-peoples-to-learn-about-lxc-docker-networking-cloud-diy-yourself-35ia”