По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Итак, вы хотите стать DevOps-инженером? Это впечатляющий, сложный и высокооплачиваемый вариант карьеры, но такая ключевая роль объединяет разработку программного обеспечения и его эксплуатацию. Мы составили дорожную карту DevOps, которая включает в себя все шаги, которые необходимы для того, чтобы занять место эксперта DevOps. Как вы знаете, DevOps – это набор практик и инструментов для интеграции и автоматизации процессов между IT-командами и командами разработчиков программного обеспечения. Поэтому он фокусируется на общении и сотрудничестве между командами, используя лучшие инструменты автоматизации, доступные для повышения эффективности. Следующий акцент делается на объединении тех, кто работает в области разработки программного обеспечения с развертыванием ПО, а также на обеспечении высокого уровня структурной и технической поддержки. Это все означает, что DevOps-инженеры должны знать свое дело, чтобы справиться с этой неподъемной задачей. А что же тогда такое «их дело»? Оказывается, что это не просто их дело, но и дело всех остальных. Конечно, это может звучать, как что-то невероятное, что мало кто может преодолеть. DevOps-инженеры действительно являются экспертами высокого уровня, и стать одним из них также практически невозможно. Вместе с тем, данное руководство поможет вам четко понять, какие шаги необходимо предпринять, прежде чем начать свое путешествие по DevOps. Давайте посмотрим. Зачем вам нужна дорожная карта DevOps? В нашей статье о DevOps рассказывается о том, почему стать DevOps-инженером так сложно, ведь DevOps-команды включают в себя разработчиков и IT-специалистов, работающих рука об руку на протяжении всего жизненного цикла проекта. И поэтому, дорожная карта DevOps предполагает высокие навыки и необходимые шаги, которые помогают повысить скорость и качество разработки и развертывания и предотвратить организационную разрозненность. Иногда команды объединяются, чтобы максимизировать эффективность, при этом инженеры работают на протяжении всего жизненного цикла продукта или приложения. Итак, каковы же эти требования? Вот этот исчерпывающий список для того, чтобы получить эту дорожную карту, которая направит вас на верный путь. Как стать DevOps-инженером за 14 шагов 1. Изучайте языки программирования Первый шаг к тому, чтобы стать DevOps-инженером, - это владение одним или несколькими языками программирования. Конечно, вы не будете интегрировать базы данных или автоматизировать процессы разработки и развертывания, отлаживать базы данных, отлаживать код и исправлять возникающие проблемы, но в результате вы должны внести свой вклад в поддержание конвейера непрерывной интеграции/поставки в рабочем состоянии. Если вы читаете эту статью, то мы можем предположить, что вы владеете хотя бы одним из «больших» языков программирования, таких как Java, JavaScript или Python. Но если все же нет, то мы рекомендуем вам повысить уровень знания до высокого как минимум двух или трех языков программирования из списка ниже: Python Perl Java JavaScript Go Ruby Rust C C++ 2. Научитесь работать с разными ОС DevOps-инженеру необходимо знать, как работают разные операционные системы, а также различия между ними, в основном потому, что вы будете запускать приложения на серверах. В связи с этим, оптимальным решением для такого рода вещей, как правило, является Linux – ее используют большинство компаний и поставщиков серверов. Если вы используете веб-приложение, то оно, вероятнее всего, находится на сервере Linux. Есть и другие операционные системы, которые не помешает знать: Windows Unix Debian SUSE Linux Fedora Ubuntu CentOS RHEL macOS FreeBSD OpenBSD NetBSD 3. Концепция ОС Так вот, операционные системы – это лишь часть дорожной карты DevOps. Также вы должны быть в состоянии углубиться, понимая базовую инфраструктуру ОС, которая позволяет вам запускать приложение. Это называется «концепцией операционной системы», и вы должны быть знакомы с: Управлением запуском Управлением процессом Сокетами Front-end разработкой Потоками и параллелизмом Управлением вводом/выводом Основами POSIX Виртуализацией Файловыми системами Памятью и хранилищем Управлением службами Сетью 4. Сетевая безопасность и протоколы Как DevOps-инженер, вы должны быть всегда спокойны. Сетевая безопасность и протоколы помогут вам обеспечить целостность и безопасность ваших данных. Они определяют процессы и методологии, которые вы будете использовать для защиты вашей сети от попыток несанкционированного доступа. Вот протоколы, о которых вам следует знать: HTTP HTTPS FTP Межсетевые экраны SSH SSL/TTS IPsec и VPN Переадресация портов AT-TLS SNMP Аутентификация OSFP Прокси-доступ 5. Терминалы – ваш новый дом Консоль позволяет разработчикам автоматизировать, создавать сценарии и выполнять системные задачи без использования графического пользовательского интерфейса. В следствие чего, вы должны уметь работать с текстом, создавать bash-сценарии, отслеживать процессы, производительность системы, работать в сети, компилировать приложения из исходника, Vim, Nano, Emacs и Powershell. Мы готовы поспорить, что, если вы уже привыкли, и вам удобно, создавать файлы .cfg в выбранной вами FPS, то здесь вы будете как дома. И вам в любом случае нужно будет это делать. 6.Веб-серверы Когда пользователь запрашивает информацию, сервер выполняет запрос. На веб-сервере может размещаться один или несколько веб-сайтов с использованием одного и того же оборудования и ресурсов. Он взаимодействует с веб-браузером через HTTP/HTTPS. Быть DevOps-инженером означает знать, как контролировать сервер. Вот некоторые распространенные веб-серверы, о который вам стоит узнать: Apache Nginx IIS Tomcat Caddy Istio Envoy Consul Linkerd 7. Инструменты непрерывной интеграции/непрерывной поставки Конвейер непрерывной интеграции/поставки (CI/CD) необходим для разработки программного обеспечения в рамках DevOps. Как было сказано в предыдущей статье, непрерывная интеграция – это методика разработки программного обеспечения, при которой разработчики объединяют все изменения кода, которые они вносят, в единый репозиторий. В то время как, непрерывная поставка реализует изменения кода, которые автоматически создаются, тестируются и подготавливаются в производственному выпуску. Ее можно рассматривать как расширение непрерывной интеграции. Вот некоторые из инструментов, которые вы можете использовать для этой цели: TravisCI GitHub GitLab Bamboo Jenkins TeamCity Azure DevOps 8. Изучите инфраструктуру как код (IaC) Пожалуй, это одно из основных направлений работы DevOps-инженеров. Поэтому неудивительно, что эта тема довольно обширная и разнообразная. Знание таких контейнеров, как Kubernetes и Docker, а также различных инструментов управления конфигурацией имеет жизненно важное значение для вашего собственного развития и успеха проектов, которые вы возглавляете. Вот некоторые DevOps-инструменты, о которых вам следует знать: Docker Containers LXC Ansible Salt Chef Puppet Mesos Kubernetes Docker Swarm Nomad Istio Service Mesh Linkerd Consul Connet Maesh Kuma Terraform 9. Управление приложениями Управление приложениями относится к процессу измерения доступности, возможностей и производительности приложения. Данные, собираемые в процессе, позволяют выявлять и устранять баги и ошибки до того, как у пользователей возникнут проблемы. Обычно используется такое программное обеспечение, как: AppDynamic Instana New Relic Jaeger OpenTracing 10. Управление инфраструктурой Эта часть дорожной карты DevOps влечет за собой процесс получения как можно большего количества данных о вашей инфраструктуре с целью принятия обоснованных оперативных решений. В этой связи, используются данные, генерируемые помимо прочего приложениями, серверами и сетевыми устройствами, с целью отслеживание таких показателей, как мощность оборудования, пропускная способность сети и время работоспособности. В свою очередь, эта информация помогает повысить эффективность и устранять ошибки, показывая, какие области требуют большего внимания. Вот некоторые хорошие инструменты для управления инфраструктурой: Grafana Prometheus Zabbix Nagios Datadog 11. Шаблон облачного проектирования Этот шаблон помогает создавать масштабируемые, надежные и безопасные приложения в облаке. Однако для этого необходимо быть знакомым с одним ли несколькими шаблонами облачного проектирования. На наш взгляд, одними из самыми важными являются следующие: Источники событий Посредник CQRS Агрегирование на шлюзе Консолидация вычислительных ресурсов Внешнее хранилище конфигурации Уровень защиты от повреждений Каналы и фильтры Перенесение в шлюз Маршрутизация шлюза Расширение за счет внешних устройств 12. Управление логами Логи помогают составлять список событий, происходящих в системе, и изучать их детали. Благодаря этому, управление журналами поможет вам, то есть начинающему DevOps-инженеру, улучшить службы и процессы, предотвратить уязвимости и выявить узкие места. Вот некоторые из инструментов, которые вы так или иначе будете использовать: Splunk Elastic stack Graylog Papertrail 13. Поставщики облачных услуг и пакеты услуг Как мы уже поняли, облачные услуги – это то, с чем обязательно нужно быть знакомым DevOps-инженеру. Кроме того, вам необходимо понимать преимущества и особенности каждого поставщика облачных услуг для того, чтобы ваша организация могла сделать верный осознанный выбор. Некоторые из популярных заслуживают того, чтобы их изучили, например: Google Cloud AWS Azure Digital Ocean Linode Alibaba Конечно, стоит отметить, что эти провайдеры редко работают по фиксированной стоимости. Как правило, цены на эти услуги зависят от необходимого количества доменов и памяти и SSL-сертификатов, требуемых ЦП. 14. Другие технологии Это лишь краткий список того, что вам нужно сделать, чтобы получить знания на пути к тому, чтобы стать DevOps-инженером. Таблица кэша Обратный прокси-сервер Прокси-сервер переадресации Межсетевой экран Балансировка нагрузки Сервер кэширования Заключение Дорожная карта DevOps предназначена для того, чтобы направить вас на правильный путь к профессиональным навыкам DevOps. Конечно, это не означает, что он уже устоявшийся и не подлежит изменению. Технологии меняются ежедневно, и вы должны постоянно быть в курсе новых инструментов и решений. Еще один пункт на пути к становлению DevOps-инженером – это обучение и адаптация, и, пожалуй, самое важное – хорошо выполнять свою работу. Если вы следуете этой дорожной карте и у вас уже есть солидная база знаний в области компьютерных наук, то вам потребуется всего каких-то шесть месяцев для того, чтобы сдвинуться с той точки, в которой вы сейчас, и дойти до начала своей карьеры DevOps-инженера. Не забудьте добавить следующие пункты в список того, что нужно выучить: Языки программирования Концепции ОС Терминалы Сеть и безопасность Инструменты CI/CD Веб-сервер Инфраструктура как код Управление приложением Управление инфраструктурой Шаблон облачного проектирования Управление журналом Поставщики облачных услуг и управление службами Другие технологии Часто задаваемые вопросы Чем занимается DevOps-инженер? DevOps-инженер использует инструменты, процессы и методологии, чтобы удовлетворить все потребности в процессе разработки программного обеспечения, разработки оболочки пользовательского интерфейса и кодирования для развертывания, обслуживания и обновлений. Сколько времени нужно, чтобы стать DevOps-инженером? Если у вас уже есть опыт работы с Linux и сетями, и вы следуете дорожной карте DevOps-инженера, то это займет примерно шесть месяцев. Что такое CI/CD в DevOps? Это передовая методология DevOps, которая использует автоматизацию разработки приложений, позволяя увеличить скорость разработки и развертывания приложений. CI/CD относится к непрерывной интеграции, поставке и развертыванию.
img
Сегодня поговорим о том, как установить сторонний модуль для FreePBX 13, который позволит отслеживать и собирать статистику о работе Вашего Call-центра - Asternic Call Center Stats, а также о другой разработке Asternic - Asternic CDR Reports, являющуюся более простой и удобной адаптацией встроенного модуля FreePBX - CDR Reports. Установка Asternic Call Center Stats Для начала установим Asternic Call Center Stats. Версия, которая будет представлена в данной статье – Lite 1.5, является бесплатной open-source версией модуля. Более расширенный функционал доступен в версии Pro. Скачаем модуль с сайта разработчика: cd /usr/src wget http://download.asternic.net/asternic-stats-1.5.tgz Распакуем файлы tar zvxf asternic-stats-1.5.tgz cd asternic-stats Создаем новую базу в MySQL. Обратите внимание, что в тестовой версии Lite скрипт qstat.sql выполняет операции с БД qstatlite, поэтому мы должны использовать только такое имя при конфигурации. Для создания новой базы нужно знать пароль от mysql. mysqladmin -u root -p create qstatslite mysql -u root -p qstatslite < sql/qstats.sql Редактируем файл /usr/src/asternic-stats/html/config.php чтобы настроить необходимые аутентификационные реквизиты для доступа к базе. $dbhost = 'localhost'; $dbname = 'qstatslite'; $dbuser = 'root'; $dbpass = '1111'; $manager_host = "127.0.0.1"; $manager_user = "admin"; $manager_secret = "admin"; $language = "en"; {Если хотите русифицировать модуль – ставьте “ru”} Отредактируйте файл /etc/asterisk/manager.conf чтобы установить требуемый пароль для Asterisk Manager’а. Затем необходимо отредактировать файл /usr/src/asternic-stats/parselog/config.php и в нём также установить аутентификационные данные для новой базы. $queue_log_dir = "/var/log/asterisk/"; $queue_log_file = "queue_log" $dbhost = 'localhost'; $dbname = 'qstatslite'; $dbuser = 'root'; $dbpass = '1111'; Важно! Убедитесь, чтобы значения $dbname, $dbuser и $dbpass совпадали в обоих файлах (/usr/src/asternic-stats/html/config.php и usr/src/asternic-stats/parselog/config.php ) Наконец последовательно выполняем следующие команды: mv /usr/src/asternic-stats/html /var/www/html/queue-stats mv /usr/src/asternic-stats/parselog /usr/local Тем самым мы переместили папку html в корневую директорию Apache, а папку parselog в домашнюю директорию. Если операционная система укажет, что папки /var/www/html/queue-stats не существует, то создайте ее с помощью команды: mkdir /var/www/html/queue-stats Последний шаг – запуск планировщика cron, который будет периодически просматривать папку parselog и заносить информацию от туда в базу данных. crontab -e Заносим в cron следующее правило: 0 * * * * php -q /usr/local/parselog/parselog.php convertlocal Если всё было сделано правильно, то при переходе по ссылке http://”IP-адрес _Asterisk” /queue-stats , мы увидим сам модуль и сможем начать с ним работать. На этом установка Asternic Call Center Stats завершена. Установка Asternic CDR Reports С модулем Asternic CDR Reports всё гораздо проще. Просто качаем дистрибутив с сайта разработчика, а потом добавляем его через функционал управления модулями FreePBX. Для этого переходим в Admin -> Module Admin и выбираем Upload Modules Выбираем Upload (From Hard Disk), указываем путь к скаченному дистрибутиву и нажимаем Upload (From Hard Disk) После чего появится сообщение о том, что модуль успешно загружен и что нужно включить его через local module administration. Переходим по ссылке, ищем новый модуль в разделе Reports, нажимаем Install и кнопку Process в самом низу. Подтверждаем установку кнопкой Confirm По завершению установки, мы увидим соответствуюшее сообщение: Теперь модуль доступен из главной панели в разделе Reports Если всё было сделано правильно, то мы увидим интерфейс модуля и сможем начать работу с ним. На этом установка модуля Asternic CDR Reports завершена
img
Данная статья посвящена монтированию и демонтированию файловых систем в Linux. Под этим понятием понимается подключение разделов жестких дисков, различных носителей и прочих файловых систем, которые могут находится на различных носителях информации. Получение к ним доступа, отключение автоматически и в ручном режиме. В статье будут рассмотрены следующие вопросы: Подключение и отключение файловых систем вручную. Управление автоматическим монтированием файловых систем. Подключение съемных носителей информации. Основные команды, которые позволяют решать вопросы указанные выше: mount устройство точка_монтирования umount устройство или umount точка_монтирования. /etc/fstab: устройство точка монтирования тип файловой системы параметры dump pass Данный файл – это файл настройки автоматического подключения файловых систем. Точкой монтирования, является пустой каталог на нашей файловой системе. К виртуальной машине подключен диск, определяемый операционной системой /dev/sdc, а на нем создан раздел /dev/sdc1 с файловой системой ext4. Мы можем посмотреть, что на нем ls –l /dev/sdc1. Для того, чтобы посмотреть, что есть на этом диске необходимо создать точку монтирования. Для этой цели подойдет любая папка. Если мы посмотрим корневые папки командой ls /, то увидим следующую картину. Правилом хорошего тона является монтирование файловых систем в папки mnt и media. Обычно папку mnt используют для монтирования разделов, а папку media для монтирования съемных носителей информации. Т.е папка mnt пустая и туда у нас ничего не монтируется, можно создать внутри папку mkdir /mnt/hard. Теперь мы можем смонтировать в данную папку наш жесткий диск, подключенный к виртуальной машине. Монтирование осуществляется следующим образом mount /dev/sdc1 /mnt/hard или mount –t ext4 /dev/sdc1 /mnt/hard. Linux очень хорошо самостоятельно определяет тип файловой системы и в написании команд можно данную опцию опустить. Как мы видим все смонтировалось и так как файловая система журналируемая появилась папочка lost+found. Вообще в линуксе вся файловая система –это такое иерархическое дерево с файлами и папками, подпапками. Все эти файлы и папки вообще могут находится на разных устройствах, в том числе и на сетевых устройствах. Это может быть даже сетевая папка, подключенная к нашей системе. Мы подключили /dev/sdc1 в папку /mnt/hard. Мы можем выполнить команду mount, которая покажет нам, что и куда смонтированно. Мы видим все файловые системы смонтированные. В том числе только, что примонтированный жесткий диск. Так же мы можем увидеть виртуальные файловые системы, типа proc. Виртуальная файловая система proc содержит все запущенные процессы и смонтирована в папку /proc. Как мы видим из скриншота их достаточно много. Помимо тех файловых систем, которые созданы на носителях, примонтированно много виртуальных файловых систем. Можно увидеть, что они смонтированы в разные папки согласно их предназначению. Отмонтировать можно командой umount /dev/sdc1. Следовательно мы можем увидеть ls /mnt/hard, что папка пустая. Иногда при выполнении команды на отмонтирование система ругается, это происходит если мы данную файловую систему, каким-нибудь образом используем, например, если открыт файл с данной папки или подпапки. Следовательно, необходимо завершить все операции, после этого система нам даст отмонтировать. Чтобы вот так вручную не подключать или не отключать разделы, есть файлик /etc/fstab. В нем находятся настройки автоматического монтирования файловых систем. Если в данном файлике не сделать запись, то после перезагрузки система не подключит подмонтированную файловую систему, автоматически. Что касается настройки: в файле мы указываем устройство с файловой системой, затем точку монтирования, тип файловой системы, опции и пара настроек. Dump – говорит нам о том, сохранять ли файлы автоматом на данной файловой системе при отключении системы. Т.е если у нас пропало питание или идет завершение работы. Принимаемые значения 1 - файлики будут сохранятся, 0 не будет сохранятся. Параметр Pass указывает порядок проверки файловых систем. Обычно 1 у корневой файловой системы, у всех последующих 2, у съемных носителей 0. Операционная система Linux обычно позволяет смонтировать файловую систему по UUID. Т.е устройство можно указывать не только в явном виде, но и по метке, и по идентификатору. Указывать по идентификатору надежнее мы можем переименовать устройство или переставить жесткие диски и тогда загрузочный раздел окажется не /dev/sda1, а например /dev/sdc1. Чтобы подобного не произошло, лучше файловые системы прописывать с помощью идентификатора. Потому, что идентификаторы прописаны жестко к каждому разделу и изменить мы их не можем. И это будет более стабильная работа. В нашем же случае мы видим, что основной раздел смонтирован. Имеет файловую систему ext4 . Про опции монтирования можно прочитать в мануале к файлу fstab. Ну и как можно увидеть примонтирован еще один раздел без точки монтирования – это раздел подкачки swap. Можно еще одну интересную вещь заметить, при попытке нового монтирования файловой системы от обычного пользователя операционная система ругнется, что только пользователь root может это сделать, но как только мы пропишем данное монтирование в файл /etc/fstab и скажем, что пользователь обычный имеет право монтировать данную файловую систему, то система совершенно спокойно даст примонтировать без повышения привилегий. Соответственно редактировать данный файл совершенно просто. Открываем его любым редактором в режиме суперпользователя и добавляем данные по монтируемой файловой системе. Если при монтировании вы не знаете какой тип файловой системы, можно просто указать auto и операционная система автоматически ее определит тип файловой системы при монтировании. Далее интересная вещь – это опции при монтировании можно указать defaults (чтение (ro), запись (rw), выполнение (execute), nouser). Параметр user- т.е любой пользователь может монтировать и демонтировать данную файловую систему, если данные параметр не указать, тогда только суперпользователь сможет выполнять данные действия. Параметр auto – т.е данный параметр будет автоматически подключать данную файловую систему при старте компьютера или сервера. Параметр noexec - данный параметр запрещает запуск исполняемых файлов на данной файловой системе. После добавления записи в файл /etc/fstab , мы можем примонтировать файловую систему командой от обычного пользователя mount /mnt/hard. Система обратится к файлу /etc/fstab проверит запись и опции, если есть указанная точка монтирования и в опциях запись user система успешно подмонтирует файловую систему. Аналогично можно провести обратную операцию размонтирования unmount /mnt/hard. Есть хорошая команда, которой приходится пользоваться, особенно если создаем raid массивы – это blkid. Данная команда позволяет посмотреть блочные устройства. Работает от суперпользователя sudo blkid /dev/sdc1. Команда показывает, какой uuid имеется у устройства. И мы можем в файле /etc/fstab, можем указать не имя устройства, а UUID = a783a365-3758-47bd-9f2d-1f5b4155f4ca. И это будет надежнее указание UUID, чем имена дисков, потому что имена дисков могут меняться. Раньше в файле /etc/fstab так же прописывалось монтирование съемных носителей USB флешки, CD-ROM и т.д создавалась запись для файловой системы с правами read-only и что при необходимости смонтировать могут любые пользователи, автоматически флопик и CD-ROM не монтировались. Современные дистрибутивы, включаю Ubuntu последних версий, в том числе пользовательские, с красивыми оболочками Gnome и KDE есть файловый менеджер Nautilus. У данного файлового менеджера есть свои настройки, которые позволяют автоматически монтировать, все что мы подключаем. В случае если мы работаем на серверной операционной системе, например, Ubuntu или CentOS, то понятно в дефолтной конфигурации у нас нету авто монтирования и прочих радостей десктопной версии. Поэтому делаем простую вещь. Вставляем носитель с файловой системой, второй шаг blkid находим наше устройство и третий шаг монтируем, командой mount. Правилом хорошего тона является монтирование всех устройств в папку /media. Здесь обычно располагаются папки cdrom, можно создать папки floppy или usb. И последний нюанс, после того, как вы поработали с флешкой и от монтировали, необходимо корректно ее вытащить. Даем команду eject.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59