По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Что такое оркестрация контейнеров? Контейнерные платформы, такие как Docker, в настоящее время очень популярны для упаковки приложений, основанных на микросервисной архитектуре. Контейнеры можно сделать высокомасштабируемыми, которые можно создавать по требованию. Это удобно, когда речь идет о нескольких контейнерах, но представьте, что у вас их сотни. Управление жизненным циклом контейнера и управление самим контейнером становится чрезвычайно трудным, когда число постоянно увеличивается по мере увеличения спроса. Оркестрация контейнеров решает проблему за счет автоматизации планирования, развертывания, масштабируемости, балансировки нагрузки, доступности и организации сетей контейнеров. Оркестрация контейнеров - это автоматизация и управление жизненным циклом контейнеров и услуг. Это процесс управления и организации архитектуры нескольких контейнеров и микросервисов в масштабе. К счастью, на рынке имеется много инструментов для оркестрации контейнеров. Давайте рассмотрим их! Что такое DevOps, что нужно знать и сколько получают DevOps - специалисты? 1. Kubernetes Kubernetes - платформа с открытым исходным кодом, изначально разработанная Google и в настоящее время поддерживаемая Cloud Native Computing Foundation. Kubernetes поддерживает как декларативную конфигурацию, так и автоматизацию. Это может помочь автоматизировать развертывание, масштабирование и управление контейнерной рабочей нагрузкой и услугами. API Kubernetes помогает установить связь между пользователями, компонентами кластера и внешними компонентами сторонних производителей. Уровень управления Kubernetes и сами узлы выполняются на группе узлов, которые вместе образуют кластер. Рабочая нагрузка приложения состоит из одного или нескольких модулей, которые выполняются на узле (узлах) Worker. Уровень управления контролирует группы контейнеров (Pod-ы) и рабочие узлы. Такие компании, как Babylon, Booking.com, AppDirect широко используют Kubernetes. Особенности Обнаружение служб и балансировка нагрузки Оркестрация системы хранения данных Автоматизированные развертывания и откаты Горизонтальное масштабирование Управление секретом и конфигурацией Самовосстановление Пакетное выполнение Двойной стек IPv4/IPv6 Автоматическая упаковка ячеек 2. OpenShift Redhat предлагает OpenShift Container Platform как сервис (PaaS). Он помогает автоматизировать приложения на безопасных и масштабируемых ресурсах в гибридных облачных средах. Он предоставляет платформы корпоративного уровня для создания, развертывания и управления контейнерными приложениями. Сервис построен на движке Redhat Enterprise Linux и Kubernetes. Openshift имеет различные функциональные возможности для управления кластерами через интерфейс пользователя и интерфейс командной строки. Redhat предоставляет Openshift еще в двух вариантах, Openshift Online - предлагается как программное обеспечение в качестве услуги (SaaS) Выделенный OpenShift - предлагается как управляемые услуги Openshift Origin (Origin Community Distribution) - родительский проект сообщества с открытым исходным кодом, который используется в OpenShift Container Platform, Openshift Online и OpenShift Distributed. 3. Nomad Nomad - это удобный, гибкий и простой в использовании оркестратор рабочей нагрузки для развертывания контейнеров и неконтейнерных приложений и управления ими не зависимо от того расположены они в облачной или в локальной среде. Nomad работает как единый двоичный файл с небольшим ресурсом (35MB) и поддерживается в macOS, Windows, Linux. Разработчики используют декларативную инфраструктуру как код (IaC) для развертывания своих приложений и определяют способ развертывания приложения. Nomad автоматически восстанавливает приложения после сбоев. Nomad подходит для оркестрации любого типа приложений (не только контейнеры). Она обеспечивает первоклассную поддержку Docker, Windows, Java, виртуальных машин и многого другого. Особенности Простота и надежность Модернизация устаревших приложений без перезаписи Проверенная масштабируемость Поддержка работы с несколькими облаками Встроенная интеграция с Terraform, Consul и Vault 4. Docker Swarm Docker Swarm использует декларативную модель. Можно определить требуемое состояние службы, и Docker будет поддерживать это состояние. Docker Enterprise Edition интегрировал Kubernetes с Swarm. Docker теперь обеспечивает гибкость в выборе движка оркестровки. Интерфейс командной строки Docker Engine используется для создания роя Docker движков, в которых могут быть развернуты службы приложений. Для взаимодействия с кластером используются команды Docker. Машины, которые присоединяются к кластеру, называются узлами, а управление действиями кластера осуществляет менеджер Swarm. Docker Swarm состоит из двух основных компонентов: Менеджер (Manager) узлы-менеджеры назначают задачи рабочим узлам роя. Лидер избирается на основе консенсусного алгоритма Рафта. Руководитель обрабатывает все решения по управлению роем и оркестровке задач для роя. Рабочий узел - рабочий узел получает задачи от узла менеджера и выполняет их. Особенности Управление кластерами, интегрированное с Docker Engine Децентрализованное проектирование Декларативная модель службы Масштабирование Выверка требуемого состояния Многосерверная сеть Обнаружение услуг Балансировка нагрузки Безопасность по умолчанию Скользящие обновления 5. Docker Compose Docker Compose предназначен для определения и запуска многопоточных приложений, работающих вместе. Docker-compose описывает группы взаимосвязанных служб, которые совместно используют программные зависимости, и организованы и масштабированы вместе. Для настройки служб приложения можно использовать файл YAML (dockerfile). Затем с помощью команды docker-compose up можно создать и запустить все службы из конфигурации. docker-compose.yml выглядит следующим образом: version: '3' volumes: app_data: services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:6.8.0 ports: - 9200:9200 - 9300:9300 volumes: - ./elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml - ./elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12 - ./docker-data-volumes/elasticsearch:/usr/share/elasticsearch/data kibana: depends_on: - elasticsearch image: docker.elastic.co/kibana/kibana:6.8.0 ports: - 5601:5601 volumes: - ./kibana.yml:/usr/share/kibana/config/kibana.yml app: depends_on: - elasticsearch image: asadali08527/app:latest ports: - 8080:8080 volumes: - app_data:/var/lib/app/ С помощью Docker Compose можно включить код приложения в несколько независимо работающих служб, которые взаимодействуют с помощью внутренней сети. Инструмент предоставляет интерфейс командной строки для управления всем жизненным циклом приложений. Docker Compose традиционно был сосредоточен на разработке и тестировании рабочих процессов, но сейчас они фокусируются на более ориентированных на производство функциях. Docker Engine может быть автономным экземпляром, подготовленным с помощью Docker Machine, или целым кластером Docker Swarm. Особенности Несколько изолированных сред на одном хосте Сохранять данные тома при создании контейнеров Воссоздавать только измененные контейнеры Переменные и перемещение композиции между средами 6. MiniKube Minikube позволяет пользователям запускать Kubernetes локально. С помощью Minikube можно локально тестировать приложения внутри одноузлового кластера Kubernetes на персональном компьютере. В Minikube интегрирована поддержка Kubernetes Dashboard. Minikube работает под управлением последнего стабильного выпуска Kubernetes и поддерживает следующие функции: Балансировка нагрузки Мультигруппа Постоянные тома NodePorts Конфигурационные карты и секреты Container Runtime: Docker, CRI-O Включение CNI (интерфейс контейнерной сети) 7. Marathon Marathon предназначен для Apache Mesos, который может организовывать как приложения, так и фреймворки. Apache Mesos - менеджер кластеров с открытым исходным кодом. Mesos - проект компании Apache, способный выполнять как контейнерные, так и неконтейнерные рабочие нагрузки. Основными компонентами в кластере Mesos являются узлы-агенты Mesos, Mesos мастер, ZooKeeper, фреймворки. Фреймворки вместе с мастером создают расписание заданий для узлов-агентов. Разработчики используют платформу Marathon в основном для планирования заданий. Планировщик Marathon использует ZooKeeper для поиска текущего хозяина для отправки заданий. Планировщик Marathon и мастер имеют второго мастера, чтобы обеспечить высокую доступность. Клиенты взаимодействуют с Marathon с помощью REST API. Особенности Высокая доступность Приложения с отслеживанием состояния Красивый и мощный пользовательский интерфейс Ограничения Обнаружение служб и балансировка нагрузки Проверки работоспособности Подписка на событие Метрики API REST 8. Cloudify Cloudify - облачное средство оркестровки с открытым исходным кодом для автоматизации развертывания и управления жизненным циклом контейнеров и микросервисов. Она предоставляет такие функции, как кластеры по требованию, автоматическое восстановление и масштабирование на уровне инфраструктуры. Cloudify может управлять контейнерной инфраструктурой и управлять службами, работающими на контейнерных платформах. Его можно легко интегрировать с менеджерами контейнеров на базе Docker и самим Docker, включая следующие: Docker Docker Swarm Docker Composes Kubernetes Apache Mesos Cloudify помогает создавать, восстанавливать, масштабировать и удалять кластеры контейнеров. Оркестровка контейнеров является ключевым фактором в обеспечении масштабируемой и высокодоступной инфраструктуры, на которой могут работать менеджеры контейнеров. Cloudify обеспечивает возможность управления разнородными службами между платформами. Приложения можно развернуть с помощью CLI и Cloudify Manager. 9. Rancher Rancher - платформа с открытым исходным кодом, использующая оркестровку контейнеров, известную как скот. Он позволяет использовать такие службы оркестрации, как Kubernetes, Swarm, Mesos. Rancher предоставляет программное обеспечение, необходимое для управления контейнерами, чтобы организациям не требовалось создавать платформы контейнерных услуг с нуля, используя отдельный набор технологий с открытым исходным кодом. Rancher 2.x позволяет управлять кластерами Kubernetes, работающими на указанных клиентом поставщиках. Начало работы с Rancher - это двухшаговый процесс. Подготовка хоста Linux Подготовьте узел Linux с 64-разрядным Ubuntu 16.04 или 18.04 (или другим поддерживаемым дистрибутивом Linux, и не менее 4GB памяти. Установите поддерживаемую версию Docker на узел. Запуск сервера Чтобы установить и запустить Rancher, выполните следующую команду Docker на хосте: $ sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher Пользовательский интерфейс Rancher позволяет управлять тысячами кластеров и узлов Kubernetes. 10. Containership Containership предназначен для развертывания инфраструктуры Kubernetes с несколькими облаками и управления ею. Он гибок в работе с общедоступными, частными облачными средами и локальными средами с помощью единого инструмента. Он позволяет обслуживать, управлять и контролировать кластеры Kubernetes всех основных облачных провайдеров. Containership построена с использованием облачных инструментов, таких как Terraform для выделения ресурсов, Prometheus для мониторинга и Calico для управления сетями и политиками. Он построен на чистом Kubernetes. Платформа Containership предлагает интуитивно понятную панель управления, а также мощный REST API для коплексной автоматизации. Особенности Панель управления с поддержкой нескольких облачных платформ Журналы аудита Поддержка экземпляра графического процессора Модернизация без прерывания работы Запланированные шаблоны Интегрированные метрики Ведение журнала в реальном времени Развертывание с нулевым временем простоя Поддержка постоянных хранилищ Поддержка частных реестров Автоматическое масштабирование рабочей нагрузки Управление ключами SSH 11. AZK AZK - это инструмент оркестровки с открытым исходным кодом для сред разработки через файл манифеста (Azkfile.js), который помогает разработчикам устанавливать, настраивать и запускать часто используемые инструменты для разработки веб-приложений с различными технологиями с открытым исходным кодом. AZK использует контейнеры вместо виртуальных машин. Контейнеры подобны виртуальным машинам с более высокой производительностью и более низким потреблением физических ресурсов. Файлы Azkfile.js можно повторно использовать для добавления новых компонентов или создания новых с нуля. Он может использоваться совместно, что обеспечивает полный паритет между средами разработки на разных машинах программистов и снижает вероятность ошибок во время развертывания. 12. GKE GKE предоставляет полностью управляемое решение для оркестровки контейнерных приложений на Google Cloud Platform. Кластеры GKE созданы на основе Kubernetes. Вы можете взаимодействовать с кластерами с помощью Kubernetes CLI. Команды Kubernetes можно использовать для развертывания приложений и управления ими, выполнения задач администрирования, установки политик и мониторинга работоспособности развернутых рабочих нагрузок. Расширенные функции управления Google Cloud также доступны с кластерами GKE, такими как балансировка нагрузки Google Cloud, пулы узлов, автоматическое масштабирование узлов, автоматическое обновление, автоматическое восстановление узлов, ведение журнала и мониторинг с помощью операционного пакета Google Cloud. Google Cloud предоставляет инструменты CI/CD, помогающие создавать и обслуживать контейнеры приложений. Cloud Build можно использовать для создания образов контейнеров (например, Docker) из различных репозиториев исходного кода, а Container Registry - для хранения образов контейнеров. GKE - готовое для предприятия решение с предварительно разработанными шаблонами развертывания. 13. AKS AKS является полностью управляемым сервисом Kubernetes, предлагаемым Azure, который предлагает безсерверные Kubernetes, безопасность и управление. AKS управляет кластером Kubernetes и позволяет легко развертывать контейнерные приложения. AKS автоматически настраивает все главные и подчиненные узлы Kubernetes. Необходимо только управлять узлами агента и выполнять их обслуживание. AKS бесплатен; вы платите только за узлы агентов в кластере, а не за мастер узеал. Кластер AKS можно создать на портале Azure или программно. Azure также поддерживает дополнительные функции, такие как расширенные сетевые возможности, интеграция Azure с Active Directory и мониторинг с помощью Azure Monitor. AKS также поддерживает контейнеры Windows Server. Производительность кластера и развернутых приложений можно контролировать с помощью Azure Monitor. Журналы хранятся в рабочей области Azure Log Analytics. AKS сертифицирован как как совместимый с Kubernetes. 14. AWS EKS AWS EKS - полностью управляемый сервис Kubernetes. AWS позволяет запускать кластер EKS с помощью AWS Fargate, который является безсерверной мощностью для контейнеров. Fargate устраняет необходимость в выделении ресурсов и управлении серверами, позволяя платить за ресурс за приложение. AWS позволяет использовать дополнительные функции EKS, такие как Amazon CloudWatch, Amazon Virtual Private Cloud (VPC), AWS Identity, группы автоматического масштабирования и управление доступом (IAM), приложения мониторинга, масштабирования и балансировки нагрузки. EKS интегрируется с сеткой AWS App и предлагает собственный опыт Kubernetes. EKS работает под управлением последнего Kubernetes и сертифицирован как совместимый с Kubernetes Заключение Надеемся, что приведенный выше список дал общее представление о различных инструментах оркестрации контейнеров, и теперь в зависимости от ваших требований, будет легче выбрать подходящий.
img
Все мы знаем, что время – самый ценный ресурс. Сегодня мы рассмотрим 5 способов, которые помогут сэкономить немного времени, при работе в командной строке Cisco IOS. Не будем терять время и рассмотрим их! exec-timeout 0 0 Эта команда позволяет не терять соединение с вашим роутером или коммутатором при достижении времени таймаута, выставив его на ноль минут и ноль секунд. Если ее применить на консольных линиях и VTY, то IOS интерпретирует это, как никогда не истекающий таймаут. Конечно, ни в коем случае нельзя использовать эту команду в продакшне из соображений безопасности, но она прекрасно подойдет, чтобы сэкономить ваше время в лаборатории, избавив от необходимости повторного входа на несколько устройств в течение дня. logging synchronous Наверняка вы были в ситуации, когда посреди набора вашей команды Cisco IOS чувствовала сильную необходимость отправить сообщение Syslog в консоль? :) Это может сильно отвлекать. Способ предотвращения такого вторжения заключается в применении команды logging synchronous. После ввода этой команды, если IOS понадобится отправить Syslog сообщение, то после его отправки, консоль вернет в сеанс терминала то, что вы уже набрали, чтобы продолжить там, где вы остановились. no ip domain-lookup Эта команда позволяет отключить интерпретацию команды как DNS имя, если в ней была сделана ошибка. Еще два менее радикальных метода как обойти это можно найти в этой статье. alias exec В качестве еще одного способа экономии времени можно создать несколько команд псевдонимов (alias). Это относительно короткие команды, которые транслируются в IOS в длинные команды. Например, если вам часто приходится смотреть конфигурацию протоколов маршрутизации при помощи команды show run | s router, то можно создать ее короткую версию используя команду alias exec src show run | s router. Теперь вместо всей длинной команды нам нужно будет набрать просто ее псевдоним – src. Сохраненная начальная конфигурация И в качестве окончательного способа по экономии времени можно рассмотреть сохранения начальной конфигурации в текстовый файл и вставить текст при запуске оборудования «из коробки» или после сброса. Например, можно завести документ со всеми командами из этой статьи и вставлять его в начале работы. conf t line con 0 exec-timeout 0 0 logging synchronous exit line vty 0 15 exec-timeout 0 0 logging synchronous exit no ip domain-lookup alias exec src show run | s router alias exec sib show ip interface brief end Надеемся, что это поможет сохранить вам пару драгоценных минут!
img
Для того, чтобы стать полноценным администратором Asterisk, вам необходимо уметь администрировать операционную систему IP – АТС. О том, как заботиться о своем Asterisk установленном на CentOS расскажем дальше. Сменить SSH порт Подключение и управление операционной системой CentOS осуществляется по протоколу SSH (Secure Shell), который позволяет безопасно производить операции на ОС удаленно. По умолчанию, протокол SSH работает на 22 порту. Чтобы подключиться к серверу IP – АТС, откройте программу SSH – клиент Putty, и в поле, указанном красным, введите IP – адрес или доменное имя вашего Asterisk Мы рекомендуем сохранить подключение в программе. Для этого, в поле, выделенном оранжевым, укажите имя для подключения и нажмите Save В целях повышения безопасности, вы можете его изменить следующим образом: Входим в режим редактирования демона SSH [root@localhost ~]# nano /etc/ssh/sshd_config Ищем строчку, которая содержит запись #Port 22. Обычно она находится под текстовым баннером: # The strategy used for options in the default sshd_config shipped with # OpenSSH is to specify options with their default value where # possible, but leave them commented. Uncommented options change a # default value. #Port 22 #AddressFamily any #ListenAddress 0.0.0.0 #ListenAddress :: Уберите символ # (решетку) в начале строчки и укажите номер порта, который вам необходим. Например, 7022 Port 7022 #AddressFamily any #ListenAddress 0.0.0.0 #ListenAddress :: Сохраните изменения. После успешного сохранения, выполните рестарт демона SSH: [root@localhost ~]# /etc/init.d/sshd restart Управление дисковым пространством Если на вашем Asterisk включен функционал записи телефонных разговоров, то вам необходимо отслеживать свободное дисковое пространство. Мы рекомендуем прибегать в этом вопросе к автоматизации – написанию скриптов, которые будут удалять записи, старше определенного срока автоматически. Итак, перейдем к просмотру свободного дискового пространства. Команда du выводит размер файлов и папок в директории, в которой вы находитесь на текущий момент: [root@localhost ~]# du 1240 ./.mozilla/firefox/5r4h2uwt.default/gmp-gmpopenh264/1.5.3 1244 ./.mozilla/firefox/5r4h2uwt.default/gmp-gmpopenh264 4 ./.mozilla/firefox/5r4h2uwt.default/healthreport Более удобным для человеческого восприятия является команда с флагом -h du -h, которая указывает размер файлов и папок в текущей директории с указанием приставки (K – килобайт, М – мегабайт и так далее.) [root@localhost ~]# du -h 1.3M ./.mozilla/firefox/5r4h2uwt.default/gmp-gmpopenh264/1.5.3 1.3M ./.mozilla/firefox/5r4h2uwt.default/gmp-gmpopenh264 4.0K ./.mozilla/firefox/5r4h2uwt.default/healthreport Наиболее «тяжелой» с точки зрения занимаемого пространства директорией в файловой структуре Asterisk является папка /var/spool/asterisk/, в которой находятся файлы голосовой почты, системы записи, факсы и так далее. Если мы хотим узнать размер папки, в которой мы храним файлы системы записи, то добавляем к конструкции du -h флаг s: [root@localhost asterisk]# du -sh /var/spool/asterisk/monitor/ 111M /var/spool/asterisk/monitor/ Отлично, с этим разобрались. Теперь нам надо научиться понимать размер наших дисков. Это гораздо проще – укажите команду df - h и система выведет все диски, с указанием свободного пространства, общего объема и процентной загрузки: [root@localhost asterisk]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda2 146G 4.8G 134G 4% / tmpfs 498M 72K 498M 1% /dev/shm /dev/sda1 283M 25M 244M 10% /boot Нужные команды файловой системы Перечислим важные команды, которые пригодятся Вам в процессе администрирования вашего Asterisk: ls - вывод списка файлов и папок в текущей директории ls -l – более подробная модификация указанной выше команды. Помимо прочего, команда выводит в консоль права на файл и его владельца. cd /var/spool/asterisk/monitor/ - сделать папку с записями телефонных разговоров текущей директорией. cd .. - вернуться на одну папку назад по файловой иерархии cd ../.. - вернуться на две директории обратно cp index.php /var - скопировать файл index.php в директорию /var cp index.php /var - переместить файл index.php в директорию /var Время и настройка NTP Для синхронизации серверного времени по протоколу NTP, выполните следующие команды: service ntpd stop ntpdate pool.ntp.org service ntpd start service httpd restart Устанавливаем временную зоны сервера: Подключитесь пользователем root к серверу и выполните команду date. Система укажет Вам текущую дату, время и временную зону. [root@localhost ~]# date echo date("D M j G:i:s T Y"); Измените текущую директорию с помощью команды cd /usr/share/zoneinfo. Далее выберите наиболее подходящий регион. Например, если вы из Самары, то перейдите в папку /Europe/Samara Далее нужно создать линк настройки /etc/localtime. В случае с Самарой, команда будет такой: ln -sf /usr/share/zoneinfo/Europe/Samara /etc/localtime Установим переменную ZONE в файле /etc/sysconfig/clock на Europe/Samara. Выполните следующие команды: [root@localhost ~]# vim /etc/sysconfig/clock В открывшемся файле для редактирования через vim нажмите клавишу «o» на клавиатуре. Стрелками сотрите содержимое файла и вставьте нужную временную зону, в нашем примере будет так : ZONE=Europe/Samara. Сохраните изменения нажав :x! и затем клавишу Enter. Установите аппаратное время сервера командой /sbin/hwclock --systohc Просмотр крупных файлов tail /home/log.txt - вывод последних 10 строчек указанного файла. В данном случае файл /home/log.txt tail -f /home/log.txt - вывод последних 10 строчек указанного файла. Если в файл будет динамически добавлены новые строки, это отразится в выводе команды в реальном времени tail –n 100 /home/log.txt - вывод последних 100 строчек указанного файла. tail –n 100 /home/log.txt > result.txt - данная команда запишет 100 последних строчек файла /home/log.txt в файл result.txt
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59