1796
Группа русскоговорящего сообщества OpenStack. Обсуждаем все про OpenStack, от использования до инсталляции, и от переводов до отправки патчей в апстрим. For English speakers we recommend: @openstack_en См. также: @kubernetes_ru, @ceph_ru, @devops_ru
Будет ли отвязано от ovn - маловероятно, это фактически дефолтный бекенд теперь для опенстака
Читать полностью…
Я обычно пиши е2е регрессию и тд стандартный sdlc, ансибля, тф да пофигу тесты всегда должны быть
Читать полностью…
Я обычно добавляю в начало дополнительный таск чтобы проверять эндпоинты и пароли. Таск завалился - значит криво что то указали. Поэтому после раскатки нет проблем «ой пароль не подходит» или «ой хостнейм кривой»
Читать полностью…
Вкладываться можно осмысленно, а можно по статьям с Пикабу Хабра.
А все проблемы которые ты живописал на самом деле решаются тривиальным написанием тестов перед раскатыаанием конфига. Это снимает 90% проблем с перепутанными секретами, кривыми эндпоинтами и прочим.
ПыСы - надеюсь эндпоинты вы не шифруете, ведь не шифруете?
Это не ответ на вопрос 😁 Обсужались +- тулинга и приседания вокруг него.
Посмотреть секреты может быть нужно много для чего. Например, протек секрет, нужно его ротировать, потом заменить значение во всех местах его использования. Или разработчик запилил новую фичу с интеграциями, секретов стало заметно больше, но интеграции не взлетают, может кто забыл указать порт или указал две точки в домене в параметрах подключения.
Нашел, называется filter в контексте gitattributes.
https://git-scm.com/docs/gitattributes
не совсем "штатно", насколько я знаю нельзя зашифровать только values одной командой, как это делает sops, нужно изгаляться, мягко говоря))
т.е. вызвать ansible-vaullt -зашифруй-строку, дать ему строку, получить в ответ шифрованную строку. её скопировать, сунуть в свой ямл... куча действий, не удобно...
тем временем файлы можно шифровать просто указав звездочку или имя файла... :)
Или я чего-то не знаю о ansible-vault?
с подходом из файлов прыгнуть в HC vault или подобное тож легко и бесшовно, там лукап плагин меняется просто)
Читать полностью…
Понял. Если работа с секретами идет активно и возникают мерж-конфликты, то это может быть вариантом решения, да.
Но, по мне, это уже индикатор того, что нужно перепрыгнуть на другой стандартный инструмент, сетевой типа HC Vault, и сидеть на стандартном ворк-флоу, не изобретая что-то свое, которое потом придется поддерживать для разных юзкейсов в разном тулинге. Хотя это обсуждаемо, да.
В sops боль в том, что нельзя взять строку из 1 версии фала и подкинуть её во 2 версию, внизу подпись всего файла целиком и оно просто забреет. Для мержания sops файлов нужно расшифровать оба, сделать слияние, зашифровать, получив на выходе 3 версию файла, вот её и коммитить... Т.е. git и подобным инструментом невозможно работать с таким файлом
Читать полностью…
А у ansible-vault есть режим шифрования отдельных переменных, а не всего файла - и зачем тогда нужен сопс? 🙂
Ну а так, если тебе надо просто пошифровать - ansible-vault спрявляется с этим прекрасно. Если как-то продвинуто, то тогда возможно имеет смысл смотреть в "более другое".
Речь о другом.
В Гите изменение любого единственного символа в файле от ansible-vault отобразится как полностью новое содержимое файла. И если коллега ошибся и тронул не ту переменную или ту, но дополнительно случайно испортил соседние, то во время ревью МР в GitHub, GitLab, etc. ты этого не заметишь, нужны дополнительные приседания.
Если в файле от sops коллега случайно изменит три переменные вместо одной, то это сразу будет видно в истории Гита, в ГитЛабе, ГитХабе, где угодно без дополнительных приседаний.
Угу.
В итоге взяли SOPS и в части инфраструктуры, где не критично удобство, ansible vault.
Потому и подумал что это какие-то фантомные боли по удаленным гиперам
Читать полностью…
Ну то есть можешь, никто не запрещает, но ничего не даст
Читать полностью…
https://github.com/ib-systems/traffic-tracker
Сбор метрик для опенстака в связке с ovn. Основной упор сначала был на расчет трафика, позже добавил и cpu/ram/disk.
Почему: ceilometer + gnocchi оверинжиниринг и вендорлок по сути
Справедливости ради, я еще никогда не видел инфраструктурные тесты, проверяюшие корректность формата домена во всех конфигах, например, только если для конфига LB, например. Что еще раз напоминает о том, что место для развития есть всегда. Но эти улучшения невозможны без других, более элементарных, улучшений, т.е. нельзя перепрыгнуть дырявую инфраструктуру и построить на ней безопасные процессы разработки и эксплуатации.
Читать полностью…
Бинго, тестирование и есть значительная часть ИБ процесса, чтобы всякое г* не доехало до Прода.
И этот процесс должен быть удобным, чтобы тулинг не провоцировал ошибки, саботаж или бунт, типа "ваши проверки замедляют time-to-market, дайте мне сервер с рутом, я сам всё сделаю!1" или "план продаж заруинили эти товарищи, накрутив ограничений в самый сезон" 😁
Нигде такого не видел, кстати, наоборот, вижу как некоторые команды плотно вкладываются в devsecops и всегда недостоточно, каждый месяц новые вызовы.
Мы не говорим, естественно, о ситуациях пеперсека, типа "я вам всё запрещаю, вникать в ваш код не буду, пишите квартальные отчеты, чао, неудачники" 😁
Мне вот почему-то ощущается, что если речь заходит о таких хотелках, то это значит, что вся эта дев-сек-пси-опсья фигня у вас превратилась в карго-культ. Пароль в волте не предназначен чтобы вы или кто-то еще его "смотрели" - потому что "посмотреть" = "использовать" а использовать пароль имеет право только его владелец (то есть сервис).
Читать полностью…
Да, это фишка шифрования 😁 Когда шифруются два файла, то их подстроки нельзя смержить без порчи исходных данных.
Как выше написал, при активной работе с секретами HC Vault вариант лучше. Конкретно для описанного случая и что Гит его не поддерживает, то у меня есть сомнения: у Гит есть возможность подключения обработчиков кастомных файлов, чтобы при checkout, diff и пр. Гит мог с ними работать удобно для пользователя. Правда я с такой фичей никогда не работал и сейчас даже не могу вспонить ее названия, чтобы загуглить 😁
В sops я хочу посмотреть все plaintext значения и заменить только часть, делается это под-командой edit. Как это сделать в случае с a-v encrypted string?
Читать полностью…
Чиво блин??? Какой тулинг, там все штатно, просто по сути еще один способ записать значение переменной.
Читать полностью…
У sops это нативная фича, поддерживаемая всеми его подкомандами. У a-v - нет, поэтому придется написать небольшой тулинг вокруг этой фичи для удобства использования. Предложенный выше первый вариант с отдельными шифрованными файлами кажется более удобным, поскольку поддерживается всеми под-командами a-v.
Читать полностью…
О, это сравнительно новый функционал)
Читать полностью…
я как раз про это)
смотри
вот у тебя файлик группварсамиpostgres.yml
---
postgres_user: postgres
postgres_password: P@ssw0rd
postgres.yml---
postgres_user: >-
{{
lookup('ansible.builtin.file',
'{inventory_dir}/credentials/postgres/postgres_user.vault'.format(**vars))
}}
postgres_password: >-
{{
lookup('ansible.builtin.file',
'{inventory_dir}/credentials/postgres/postgres_password.vault'.format(**vars))
}}
А тут как сам организуешь, например можно хранить волченые значения и через lookup('file' подтягивать куда надо, при этом получаем сопоставимое с sops, типа ключи читаемые, а значения шифрованы.
Читать полностью…
Ну ты ещё определенный интерфейс вспомни. Где шаг в сторону - расстрел.
Не, гоша прикольное. Намного лучше Си плюсов, например. Но все эти попытки сделать ООП - омерзительны.
Вот я тоже так думал. Но один деятель херакнул бекап диска и он завис в статусе creating. При попытке срубить или поменять статус - internal error. Единственное что нашел - что кролик ловит тайм-аут пытаясь куда-то достучаться.
Читать полностью…
Оно же по топику роутится
Читать полностью…