Какой у вас опыт работы с Rocky Linux?

«Какой у вас опыт работы с Rocky Linux?» — вопрос из категории Linux, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Я начал работать с Rocky Linux после объявления о смене стратегии CentOS, участвовал в миграции инфраструктуры с CentOS 8 на Rocky Linux 8 и развертывании новых серверов на Rocky Linux 9.

Основные направления работы:

1. Миграция с CentOS:

# Использование официального скрипта migrate2rocky
curl -O https://raw.githubusercontent.com/rocky-linux/rocky-tools/main/migrate2rocky/migrate2rocky.sh
chmod +x migrate2rocky.sh
./migrate2rocky.sh -r
# Проверка после миграции
cat /etc/redhat-release  # Rocky Linux release 8.8 (Green Obsidian)

2. Настройка репозиториев и пакетов:

# Базовые репозитории Rocky
dnf install rocky-release

# EPEL для дополнительных пакетов
dnf install epel-release

# PowerTools/CRB для development пакетов
dnf config-manager --set-enabled crb

# ELRepo для аппаратных драйверов
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
dnf install https://www.elrepo.org/elrepo-release-9.el9.elrepo.noarch.rpm

3. Развертывание инфраструктурных сервисов:

  • Веб-серверы: Nginx с PHP-FPM, Apache с mod_ssl
  • Базы данных: PostgreSQL 14/15, MySQL 8.0
  • Кэширование: Redis 7, Memcached
  • Очереди сообщений: RabbitMQ 3.11

4. Автоматизация через Ansible:

- name: Deploy Rocky Linux server
  hosts: new_servers
  vars:
    timezone: Europe/Moscow
    packages:
      - htop
      - ncdu
      - tmux
      - git
  tasks:
    - name: Set timezone
      timezone:
        name: "{{ timezone }}"

    - name: Install base packages
      dnf:
        name: "{{ packages }}"
        state: present

    - name: Configure automatic updates
      copy:
        dest: /etc/dnf/automatic.conf
        content: |
          [commands]
          upgrade_type = security
          random_sleep = 3600

5. Интеграция в DevOps-инфраструктуру:

  • Установка и настройка GitLab Runner для CI/CD
  • Развертывание нод мониторинга (Prometheus Node Exporter, Grafana Agent)
  • Настройка серверов для HashiCorp Stack (Consul, Nomad, Vault)
  • Конфигурация backup агентов (Borg, Restic)

6. Особенности работы в production:

  • Настройка kernel параметров для высоконагруженных сервисов
  • Конфигурация systemd resource control (CPUQuota, MemoryMax)
  • Внедрение мониторинга через Netdata + Prometheus
  • Создание кастомных Rocky Linux образов для облачных провайдеров

Сравнение с RHEL:

  • Полная бинарная совместимость с RHEL 8/9
  • Бесплатные обновления безопасности
  • Активное community и быстрые фиксы
  • Не требует subscription management