Как узнать информацию о процессоре (cpu) в linux
2) Iostat
The iostat command list CPU utilization, device utilization and network file system utilization. This utility display system’s average CPU utilization since the last reboot. Running the following command without any options displays all the three reports.
To list the individual report use -c, -d and -h switch for CPU utilization, device utilization and network file system utilization. The following command will break the CPU utilization into user processes, system processes, I/O wait and idle time.
The following command will display extended statistics (-x), the number of times (-t) each report should be displayed for CPU utilization (-c).
Что такое процесс?
Начнем с того, что разберемся в терминах. По сути, процесс — это каждая программа. Как я уже говорил для каждой запускаемой программы создается отдельный процесс. В рамках процесса программе выделяется процессорное время, оперативная память и другие системные ресурсы. У каждого процесса есть свой идентификатор, Proccess ID или просто PID, по ним, чаще всего и определяются процессы Linux. PID определяется неслучайно, как я уже говорил, программа инициализации получает PID 1, а каждая следующая запущенная программа — на единицу больше. Таким образом PID пользовательских программ доходит уже до нескольких тысяч.
На самом деле, процессы Linux не настолько абстрактны, какими они вам сейчас кажутся. Их вполне можно попытаться пощупать. Откройте ваш файловый менеджер, перейдите в корневой каталог, затем откройте папку /proc. Видите здесь кучу номеров? Так вот это все — PID всех запущенных процессов. В каждой из этих папок находится вся информация о процессе.
Например, посмотрим папку процесса 1. В папке есть другие под каталоги и много файлов. Файл cmdline содержит информацию о команде запуска процесса:
Поскольку у меня используется система инициализации Systemd, то и первый процесс запускается для нее. С помощью каталога /proc можно сделать все. Но это очень неудобно, особенно учитывая количество запущенных процессов в системе. Поэтому для реализации нужных задач существуют специальные утилиты. Перейдем к рассмотрению утилит, которые позволяют реализовать управление процессами в Linux.
Отображение базовой информации о системе в Debian 10
Чтобы узнать основную информацию о вашей системе, вам необходимо ознакомиться с утилитой командной строки uname-short для имени unix.
Команда uname
Команда uname поставляется с несколькими переключателями. Базовая команда, как описано ниже, возвращает только имя ядра:
$ uname
Output:
Как видите, команда uname при использовании без каких-либо ключей возвращает только имя ядра, т.е. Linux для моей системы.
Kernel Name
Когда вы точно хотите, чтобы команда напечатала имя ядра, вы будете использовать следующую команду:
$ uname -s
Output:
В приведенном выше выводе Linux отображается как имя моего ядра.
Kernel Release
Чтобы напечатать информацию о выпуске вашего ядра, используйте следующую команду:
$ uname -r
Output:
Приведенная выше команда отобразила номер выпуска моей Linux
Kernel-Version
Чтобы получить версию вашего ядра, используйте следующую команду:
$ uname -v
Output:
В приведенном выше выводе показан номер версии моего ядра.
Network Node Hostname
Вы можете использовать следующую команду для печати сетевого имени хоста вашего узла:
$ uname -n
Вы также можете использовать следующую команду для той же цели, поскольку она более удобна для пользователя:
$ uname --nodename
Output:
Обе команды будут отображать одинаковые выходные данные
Обратите внимание, что имя хоста и имя узла могут не совпадать для систем, отличных от Linux
Имя оборудования машины
Чтобы узнать аппаратную архитектуру системы, над которой вы работаете, используйте следующую команду:
$ uname --m
Выход:
Выход x86_64 означает, что я использую 64-разрядную версию. архитектура. Вывод i686 будет означать, что пользователь находится в 32-битной системе.
Тип процессора
Чтобы узнать тип используемого вами процессора, используйте следующую команду:
$ uname -p
Вывод:
Хотя я использую 64-разрядный процессор, но команда не смогла получить его Информация.
Чтобы узнать аппаратную платформу, которую вы используете, используйте следующую команду:
$ uname -i
Output:
Operating System
Следующая команда сообщит вам имя операционной системы. вы используете:
$ uname -o
Вывод:
Мой компьютер Debian отображал вышеуказанный вывод для моей системы.
Отображение всей системной информации
Приведенные выше команды отображали системную информацию в соответствии с типом используемого переключателя.В случае, если вы хотите просмотреть всю системную информацию одновременно, используйте следующую команду:
$ uname -a
Output:
Вы можете видеть, что вышеприведенный вывод показывает полный список системной информации для пользователя.
Создание отличной приборной панели с Grafana
Теперь, когда наши метрики хранятся в Prometheus, нам просто нужно создать панель управления Grafana , чтобы визуализировать их.
Мы будем использовать новейшие панели, доступные в Grafana v6.2: вертикальные и горизонтальные шкалы , закругленные шкалы и классические линейные диаграммы.
Для вашего удобства я снабдил последнюю сводку цифрами от 1 до 4.
Они будут соответствовать различным подразделам этой главы. Если вас интересует только определенная панель, перейдите непосредственно к соответствующему подразделу.
1 — Строительство круглых датчиков
Вот более подробное представление о том, какие округлые шкалы на нашей панели.
А пока мы собираемся сосредоточиться на использовании ЦП нашими процессами, поскольку его можно легко отразить для использования памяти.
С помощью этих панелей мы собираемся отслеживать два показателя: текущее использование ЦП всеми нашими процессами и среднее использование ЦП.
Чтобы получить эти метрики, мы собираемся выполнять запросы PromQL в нашем экземпляре Prometheus?
PromQL — это язык запросов, разработанный для Prometheus .
Аналогично тому, что вы нашли в экземплярах InfluxDB с InfluxQL (или IFQL), запросы PromQL могут агрегировать данные с использованием таких функций, как сумма, среднее значение и стандартное отклонение.
Синтаксис очень прост в использовании, поскольку мы собираемся продемонстрировать его на наших панелях.
a — Получение текущего общего использования ЦП
Чтобы получить текущее общее использование ЦП, мы собираемся использовать функцию суммы PromQL.
В данный момент общее использование ЦП — это просто сумма отдельных использований.
Вот шпаргалка:
b — Получение средней загрузки ЦП
Не так много работы для среднего использования ЦП, вы просто собираетесь использовать функцию avg в PromQL . Вы можете найти шпаргалку ниже.
2 — Построение горизонтальных манометров
Горизонтальные датчики — одно из последних дополнений Grafana v6.2.
Наша цель с этой панелью — выявить 10 самых ресурсоемких процессов нашей системы.
Для этого мы собираемся использовать функцию topk, которая извлекает верхние k элементов для метрики.
Подобно тому, что мы делали раньше, мы собираемся определить пороги, чтобы получать информацию, когда процесс потребляет слишком много ресурсов.
3 — Строительство вертикальных датчиков
Вертикальные датчики очень похожи на горизонтальные, нам нужно только настроить параметр ориентации на панели визуализации Grafana.
Кроме того, мы собираемся отслеживать использование памяти с помощью этой панели, поэтому запрос будет немного другим.
Вот шпаргалка
Потрясающе ! Пока мы добились большого прогресса, осталось провести одну панель.
4 — Построение линейных графиков
Линейные графики используются в Grafana в течение долгого времени, и это панель, которую мы собираемся использовать, чтобы получить историческое представление о том, как наши процессы развивались с течением времени.
Этот график может быть особенно полезен, когда:
- В прошлом у вас был сбой, и вы хотите выяснить, какие процессы были активны в то время.
- Определенный процесс умер, но вы хотите увидеть его поведение прямо перед тем, как это произошло.
Когда дело доходит до исследования по устранению неполадок, честно говоря, потребуется целая статья (особенно с недавним добавлением Grafana Loki).
Хорошо, вот последняя шпаргалка !
Оттуда у нас есть все панели, которые нам нужны для нашей окончательной панели инструментов.
Вы можете расположить их так, как хотите, или просто вдохновиться тем, что мы создали.
Мониторинг общего потребления памяти
Мониторить общее потребление памяти и процессора с помощью top
Обратите внимание, на выдачу вашего top. В
CentOS
у вас может стоять по умолчанию KiB а в
Ubuntu
MiB. Если предполагается делать какие-то вычисления — нужно разобраться с тем, что же выдаёт top
Если предполагается делать какие-то вычисления — нужно разобраться с тем, что же выдаёт top
top — 14:41:49 up 20:18, 2 users, load average: 0.51, 0.32, 0.22
Tasks: 386 total, 1 running, 385 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.8 us, 1.0 sy, 0.0 ni, 98.0 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st
KiB Mem : 8008504 total, 4713352 free, 1021040 used, 2274112 buff/cache
KiB Swap: 8257532 total, 8257532 free, 0 used. 6646096 avail Mem
Из руководства по
top
можно сделать следующие выводы:
- Использованная CPU это 100 минус значение id (idle)
-
Использованная память это значение used в строке, которая начинается с
KiB Mem
us, user | time running un-niced user processes |
sy, system | time running kernel processes |
ni, nice | time running niced user processes |
id, idle | time spent in the kernel idle handler |
wa, IO-wait | time waiting for I/O completion |
hi | time spent servicing hardware interrupts |
si | time spent servicing software interrupts |
st | time stolen from this vm by the hypervisor |
Исходя из этих соображений, можно воспользоваться
sed
,
awk
и
bc
чтобы вытащить из выдачи top нужные величины и вычислить расход ресурсов.
Комментарии к скрипту
- Строка 1: объявление bash скрипта
- Строка 2:
- Значение перед id нужно присвоить переменной IDLE
- top запускается в batch режиме (-b) один раз (-n 1)
- grep выделяет из выдачи top строку с %Cpu(s)
- Первое условие sed отбрасывается всё, что правее id, включая сам id
- Второе условие sed отбрасывает всё, что слева от последней запятой
- Строка 3:
- top запускается в batch режиме (-b) один раз (-n 1)
- awk находит нужный столбец
- Строка 4:
- bc помогает вычислить разность чисел
- Строка 5:
- Дата, расход ЦПУ и расход памяти записываются в log.txt
Use /proc/cpuinfo to find out how many CPUs are there in Linux
The lscpu command gathers CPU architecture information from sysfs, /proc/cpuinfo and other sources. To view use the cat command and more command as follows:
OR
Let us print cpu thread count:
Patreon supporters only guides
- No ads and tracking
- In-depth guides for developers and sysadmins at Opensourceflare
- Join my Patreon to support independent content creators and start reading latest guides:
- How to set up Redis sentinel cluster on Ubuntu or Debian Linux
- How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
- How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
- A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
9) Glances
Glances is a cross-platform curses-based monitoring tool written in Python that uses the psutil library to fetch data from the system. Glance monitor CPU, Load Average, Memory, Network Interfaces, Disk I/O, Processes and File System spaces utilization.
Install glances in your system with the following command.
In Ubuntu:
In Centos:
You can run Glances in 3 modes-
1. Standalone
If you want to monitor your local machine(Standalone), simply run-
2. Client/Server
If you want to remotely monitor a machine then execute the following on the server.
and then from the client, execute the following command.
where @server is the IP address or hostname of the server.
3. Webserver
Run the glances in web server mode by executing the following command in the terminal.
To change the refresh rate of the page, just add the period in seconds at the end of the URL. For example, to refresh the page every 30 seconds, append 10 to the glances server URL from the browser.
Как получить информацию о файловой системе Linux
Что бы получить информацию о системных разделах используйте команду fdisk
Shell
fdisk -l
Disk /dev/sda: 1000 GB, 1000204887016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0xcee8ad92
Device Boot Start End Blocks Id System
/dev/sda1 1 1953425167 976762583+ ee GPT
Partition 1 does not start on physical sector boundary.
1 |
fdisk-l Disk/dev/sda1000GB,1000204887016bytes 255heads,63sectors/track,121601cylinders,total1953525168sectors Units=sectors of1*512=512bytes Sector size(logical/physical)512bytes/4096bytes I/Osize(minimum/optimal)4096bytes/4096bytes Disk identifier0xcee8ad92 Device Boot Start EndBlocks IdSystem /dev/sda111953425167976762583+ee GPT Partition1does notstart on physical sector boundary. |
Как узнать архитектуру процессора вашего телефона Android
Если вы любите загружать приложения на свой телефон Android, возможно, вы столкнулись с тем, что некоторые приложения имеют разные сборки, что приводит к путанице в отношении того, какую сборку загружать и устанавливать на вашем телефоне. Эта путаница возникает из-за большого числа производителей процессоров для рынка Android. У нас есть Qualcomm, MediaTek, Samsung, Huawei и некоторые другие мелкие производители, которые разрабатывают чипсеты для рынка Android. Даже у одного и того же производителя есть разные категории чипсетов, чтобы удовлетворить потребности разных людей.
Разработчики приложений разрабатывают разные версии одного и того же приложения, чтобы они бесперебойно работали на разных устройствах с разными аппаратными конфигурациями. По этой причине разработчики из Google LLC разработали 22 варианта приложения YouTube. Таких примеров много. Если вы опытный пользователь Android, вы должны знать следующее:
- Архитектура, на которой разработан процессор вашего устройства
- Версия Android, на которой работает ваше устройство.
Зная версию Android, на которой работает ваш телефон, довольно просто ( Настройки — О телефоне — Версия Android ), вам необходимо выполнить несколько шагов, чтобы узнать архитектуру, на которой разработан процессор вашего телефона. Как правило, есть три архитектуры, на которых основаны все процессоры Android Phone.
- ARM — это наиболее распространенная архитектура, на которой разработаны процессоры для телефонов Android. Если процессор вашего телефона основан на ARM, это означает, что ваш телефон работает под управлением 32-разрядной операционной системы. Это довольно популярно в начальных и средних телефонах Android. Это энергоэффективные процессоры с низким энергопотреблением.
- ARM64 — Новые процессоры основаны на архитектуре ARM64. Он поддерживает 64-битную операционную систему и обладает высокой вычислительной мощностью. Многие производители телефонов принимают эту новую архитектуру, и, похоже, она станет стандартом в ближайшем будущем. Все основные производители чипсетов в экосистеме Android разрабатывают процессоры на основе архитектуры ARM64.
- Процессоры x86 — x86 имеют более высокую вычислительную мощность, чем любой другой аналог ARM, но их очень мало на рынке. Как правило, процессоры от Intel основаны на этой архитектуре. Они не оптимизированы для более длительного потребления батареи.
Теперь нужно помнить, что приложение или пользовательское ПЗУ, созданное для определенной архитектуры, не оптимизировано для другой и поэтому не рекомендуется устанавливать, если ваше оборудование не совместимо. Однако большинство приложений, разработанных для 32-разрядных систем, могут работать в 64-разрядных системах.
Достаточно сказать, теперь следуйте этим шагам, чтобы узнать о процессоре вашего телефона.
- ARM: ARMv7 или armeabi
- ARM64: AArch64 или arm64
- x86: x86 или x86abi
Вот и все.
Вы также можете попробовать следующие приложения, которые выполняют ту же функцию, что и Droid Hardware Info.
Информация об оперативной памяти
1. Файл /proc/meminfo (Linux)
Команда:
cat /proc/meminfo
Пример ответа:
MemTotal: 8010284 kB
MemFree: 1058580 kB
MemAvailable: 2791616 kB
Buffers: 1884 kB
Cached: 1754092 kB
SwapCached: 122280 kB
Active: 4330296 kB
Inactive: 2006792 kB
Active(anon): 3623768 kB
Inactive(anon): 983120 kB
Active(file): 706528 kB
Inactive(file): 1023672 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 1048572 kB
SwapFree: 597684 kB
Dirty: 20 kB
Writeback: 0 kB
AnonPages: 4466532 kB
Mapped: 92808 kB
Shmem: 25776 kB
Slab: 408732 kB
SReclaimable: 308820 kB
SUnreclaim: 99912 kB
KernelStack: 7312 kB
PageTables: 23276 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 5053712 kB
Committed_AS: 3770324 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 159328 kB
VmallocChunk: 34359341052 kB
HardwareCorrupted: 0 kB
AnonHugePages: 3248128 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 257984 kB
DirectMap2M: 8130560 kB
* чаще всего, самое важное:
- MemTotal — общий объем оперативной памяти.
- MemFree — объем памяти, который не используется системой.
- Buffers — память, которая в данным момент ожидает записи на диск.
- Cached — объем, задействованный под кэш чтения с диска.
- MemAvailable — объем памяти, доступной в распределители без необходимости обмена.
- SwapTotal — объем файла подкачки.
- SwapFree — свободный объем файла подкачки.
* Объем используемой памяти = MemTotal – MemFree — Cached — Buffers.
Для перевода килобайт в гигабайты можно воспользоваться онлайн калькулятором.
2. free (Linux)
Данная команда позволяет получить информацию об использовании памяти в удобной таблице. Для еще большего удобства, мы выведем ее с помощью дополнительного параметра -h:
free -m
Пример ответа:
total used free shared buff/cache available
Mem: 3,7G 568M 378M 193M 2,8G 2,6G
Swap: 4,0G 94M 3,9G
sysctl hw.physmem
Пример ответа:
hw.physmem: 2123677696
4. dmesg
Работает на BSD и Linux:
dmesg | grep memory
Итог:
real memory = 2147483648 (2048 MB)
avail memory = 2042109952 (1947 MB)
5. Другие команды
Для получения информации по оперативной памяти также можно использовать команды:
vmstat -s
top
htop
* для htop необходима установка одноименной утилиты.
ARM-процессоры на удаление
Список, составленный Арндом Бергманом, включает 14 процессоров (и их семейств, например, EFM32) с архитектурой ARM, давно не обновлявшихся и потому предложенных к удалению. Судьба 13 из них пока не решена – разработчики определятся с ней в ближайшее время в ходе обсуждения.
Поддержка некоторых из перечисленных чипов может в итоге остаться в ядре Linux, но только не PicoXcell. Это процессор компании PicoChip, выпущенный более 10 лет назад и впервые отмеченный в ядре Linux в 2011 г. PicoChip была основана в 2000 г., в 2012 г. ее приобретена сперва Mindspeed Technologies, а затем и Intel.
ARM-процессоры без обновлений
Процессор / семейство процессоров | Добавлен в состав ядра Linux | Дата последнего обновления |
---|---|---|
ASM9260 | 2 014 | 2 015 |
AXXIA | 2 014 | 2 015 |
BCM/Kona | 2 013 | 2 014 |
DigiColor | 2 014 | 2 015 |
Dove | 2 009 | 2 015 |
EFM32 | 2 011 | 2 013 |
NSPIRE | 2 013 | 2 015 |
PicoXcell | 2 011 | нет данных |
PRIMA2 | 2 011 | 2 015 |
Spear | 2 010 | 2 015 |
Tango | 2 015 | 2 017 |
U300 | 2 009 | 2 013 |
VT8500 | 2 015 | 2 014 |
ZX | 2 010 | нет данных |
Бергман попросил разработчиков оповестить его, если один или несколько процессоров до сих пор поддерживаются разработчиками. В этом случае их поддержка будет сохранена.
Бергман также предложил удалить поддержку нескольких старых ARM-платформ, получавших обновление в недавнем прошлом. В списке есть процессоры, поддержка которых была добавлена в ядро Linux в период с 2006 по 2016 гг., обновлявшиеся в 2019, 2018 и 2017 гг.
Композитный ИИ: что это такое и зачем он нужен?
Искусственный интеллект
Недавно обновлявшиеся ARM-процессоры
Процессор / семейство процессоров | Добавлен в состав ядра Linux | Дата последнего обновления |
---|---|---|
CLPS711x | нет данных | 2 016 |
CNS3xxx | 2 010 | 2 019 |
EP93xx | 2 006 | нет данных |
Footbridge | нет данных | 2 013 |
Gemini | 2 009 | нет данных |
HISI | 2 013 | нет данных |
Highbank | 2 011 | нет данных |
IOP32x | 2 006 | нет данных |
IXP4xx | нет данных | 2 018 |
LPC18xx | 2 015 | 2 019 |
LPC32xx | 2 010 | нет данных |
MMP | 2 009 | 2 017 |
Moxart | 2 013 | нет данных |
MV78xx0 | 2 008 | нет данных |
Nomadik | 2 009 | нет данных |
OXNA | 2 016 | нет данных |
PXA | нет данных | нет данных |
RPC | нет данных | нет данных |
SA1100 | нет данных | нет данных |
В этом перечне 19 пунктов, но лишь по шести из них у Бергмана есть информация по дате последнего обновления.
Video demo: /proc/cpuinfo and lscpu command
See the following video demo:
See also:
How do I find out Linux CPU utilization?
Get the latest tutorials on Linux, Open Source & DevOps viaRSS feed ➔
Weekly email newsletter ➔
ADVERTISEMENT
Category | List of Unix and Linux commands |
---|---|
Documentation | help • mandb • man • pinfo |
Disk space analyzers | df • duf • ncdu • pydf |
File Management | cat • cp • less • mkdir • more • tree |
Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 |
Linux Desktop Apps | Skype • Spotify • VLC 3 |
Modern utilities | bat • exa |
Network Utilities | NetHogs • dig • host • ip • nmap |
OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 |
Package Manager | apk • apt |
Processes Management | bg • chroot • cron • disown • fg • glances • gtop • jobs • killall • kill • pidof • pstree • pwdx • time • vtop |
Searching | ag • grep • whereis • which |
Shell builtins | compgen • echo • printf |
Text processing | cut • rev |
User Information | groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w |
WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 |
Say hello to lscpu
The lscpu command is CPU architecture information helper and can be found under Fedora Linux / RHEL / CentOS v6+ / Debian Linux v6+ and many other latest distro includes this command.
Sample outputs:
Patreon supporters only guides
- No ads and tracking
- In-depth guides for developers and sysadmins at Opensourceflare
- Join my Patreon to support independent content creators and start reading latest guides:
- How to set up Redis sentinel cluster on Ubuntu or Debian Linux
- How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
- How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
- A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit CPU(s): 8 Thread(s) per core: 2 Core(s) per socket: 4 CPU socket(s): 1 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 30 Stepping: 5 CPU MHz: 1199.000 Virtualization: VT-x L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 8192K
Warning : lscput command has bug and sometimes in Xen Dom0 kernel reports wrong data. So please use /proc/cpuinfo for verification purpose.
Короткое слово в заключение
Из этого урока вы лучше понимаете, что могут предложить Prometheus и Grafana .
Вы знаете, что у вас есть полная панель мониторинга для одного экземпляра, но на самом деле есть небольшой шаг, чтобы заставить ее масштабироваться и контролировать весь кластер экземпляров Unix.
DevOps-мониторинг — определенно интересная тема, но если вы сделаете это неправильно, он может превратиться в кошмар.
Именно поэтому мы пишем эти статьи и создаем эти информационные панели: чтобы помочь вам достичь максимальной эффективности того, что могут предложить эти инструменты.
Мы считаем, что отличные технологии можно улучшить с помощью полезных демонстраций.
А Ты?
Если вы согласны, присоединяйтесь к растущему списку DevOps, выбравших этот путь.