Как настроить Ceph с шифрованием S3 Bucket с использованием Hashicorp Vault и Ansible?

Вопрос или проблема

Я настроил кластер HA Vault из 3 узлов с помощью Ansible playbook, который я разработал. У меня есть рабочая среда кластера Ceph из 3 узлов (Reef), использующая cephadm (https://computingforgeeks.com/install-ceph-storage-cluster-on-ubuntu-linux-servers/).

Теперь мне нужно настроить шифрование бакета SSE-S3 для окружения, используя “транзитный” движок и способ RGW Agent (rgw crypt vault auth = agent), но инструкции, приведенные здесь (https://docs.ceph.com/en/quincy/radosgw/vault/), очень запутанные, так как конфигурации токена и агента перепутаны.

Существует ли Ansible playbook, который упростит эту задачу?

Ответ или решение

Настройка Ceph с шифрованием S3 Bucket с использованием Hashicorp Vault и Ansible

Настройка Ceph для работы с зашифрованными ведрами S3 при помощи Hashicorp Vault и Ansible — это отличный способ защитить данные и обеспечить высокоуровневую безопасность в вашей среде хранения. В данной инструкции мы шаг за шагом проведем настройку шифрования SSE-S3 для ведер Ceph с использованием механизма "transit" и агента RGW.

Шаг 1: Предварительная подготовка

  1. Убедитесь, что Ceph и Vault установлены и работают. У вас уже есть 3-узловый кластер Vault и 3-узловый кластер Ceph, установленный с использованием cephadm.
  2. Проверьте сетевую доступность. Убедитесь, что узлы Ceph могут взаимодействовать с узлами Vault, чтобы избежать проблем с подключением.

Шаг 2: Настройка Vault

  1. Инициализируйте и разблокируйте кластер Vault. Если вы еще не сделали этого, выполните команду для инициализации:

    vault operator init

    Запишите ключи и токен, так как они понадобятся вам позже.

  2. Установите конфигурацию механизма шифрования Transit. Создайте путь для шифрования:

    vault secrets enable transit
    vault write transit/keys/my-key

Шаг 3: Настройка RGW с использованием Ansible

Создание Ansible playbook может значительно упростить процесс интеграции Vault и Ceph. Пример playbook может выглядеть следующим образом:

---
- name: Настройка шифрования для RGW Ceph с помощью Vault
  hosts: ceph_nodes
  become: true
  tasks:
    - name: Установить зависимости
      apt:
        name:
          - ceph-radosgw
          - jq
        state: present

    - name: Настройка токена для доступа к Vault
      command: |
        vault token create -policy=my-policy -renewable=true -ttl=1h | jq -r .auth.client_token
      register: vault_token

    - name: Настройка RGW для интеграции с Vault
      command: |
        ceph config set rgw rgw_crypt_vault_auth agent
        ceph config set rgw rgw_crypt_vault_addr http://<vault_address>:8200
        ceph config set rgw rgw_crypt_vault_token {{ vault_token.stdout }}
        ceph config set rgw rgw_crypt_vault_key my-key
      args:
        warn: false

    - name: Перезапустить сервис rgw
      systemd:
        name: ceph-rgw@rgw.<instance>
        state: restarted

Шаг 4: Создание ведра и активация шифрования

Теперь, когда RGW настроен для работы с Vault, вы можете создать ведро и активировать шифрование SSE-S3:

  1. Создайте ведро (если еще не создано):

    radosgw-admin bucket create --bucket=<my-bucket> --uid=<user-id>
  2. Активируйте шифрование для ведра:

    radosgw-admin bucket stats --bucket=<my-bucket> --set-sse=s3

Шаг 5: Проверка конфигурации

После выполнения всех шагов, вам следует проверить, что RGW корректно интегрирован с Vault и шифрование ведер S3 работает должным образом:

  1. Проверьте статус сервисов:

    systemctl status ceph-rgw@rgw.<instance>
  2. Проверьте доступ к шифрованным данным:

    Вы можете протестировать загрузку и доступ к данным, используя S3 клиенты, как AWS CLI, чтобы убедиться в наличии доступа.

Заключение

В этом руководстве мы рассмотрели основные шаги настройки шифрования ведер S3 в Ceph с использованием Hashicorp Vault через Ansible. Автоматизация данного процесса с помощью Ansible позволяет упростить и ускорить развертывание, а также минимизировать количество ошибок. Не забывайте регулярно проверять документацию Ceph и Hashicorp Vault для получения актуальной информации и обновлений.

Оцените материал
Добавить комментарий

Капча загружается...