Записки молодого девопсера
153 subscribers
94 photos
7 files
623 links
Здесь выкладываются различные команды и решения проблем, с которыми приходится сталкиваться, а также интересные статьи и видео из мира IT.
Download Telegram
Онлайн Jinja-парсер. Пригодится, если нужно быстро написать и проверить шаблон
https://j2live.ttl255.com/
https://kodekloud.com/ ( внимание, английский! )
Курсы, построенные по схеме - лекция, практика и тесты.
Можно выбрать курсы, в рамках которых вы будете развиваться (зависит от подписки).
Плюс есть дополнительная программа, https://kodekloud.com/p/kodekloud-engineer, где, по заверениям авторов, можно пройти путь сисадмина, DevOps-инженера и DevOps-архитектора на реальных проектах, задачах, сценариях и системах.
Community-provider для Terraform.
Умеет базовые штуки, если ваши проекты в Sentry не слишком сложные, то это идеальное решение для вас.
https://github.com/jianyuan/terraform-provider-sentry
Если вы обновляете Nexus с версии 3.24.0, будьте предельно аккуратны.
В версии 3.26.0 обновился веб-сервер Jetty и из-за этого изменилось описание класса SslContextFactory.
Для этого есть вот такой workaround:
Change below line inside of ${jetty.etc}/jetty-https.xml (add "$Server")
 <New id="sslContextFactory" class="org.eclipse.jetty.util.ssl.SslContextFactory">
to

<New id="sslContextFactory" class="org.eclipse.jetty.util.ssl.SslContextFactory$Server">
```
https://issues.sonatype.org/browse/NEXUS-24867
Имхо, как-то странно в современном мире обновляться и с ходе обновления выяснять, что сервис не поднялся и лезть в баг-трекер.
P.S. Случайно выяснилось, что blob store в Nexus слабо связаны с файлами конфигурацией и БД, поэтому можно взять и обновится на последнюю версию (а она обновляет схему БД и обычный даунгрейд через понижение версии образа уже не пройдет) и если что-то пойдет не так, то восстановить конфиги и схему БД из резерной копии, а потом уже запускаться со старой версии.
P.P.S. Использую Nexus в docker.
Рекурсивная замена текста с использованием grep и sed
grep 'your_pattern' .* -rl | xargs sed -i 's/old_pattern/new_pattern/g'
Давно не трогал инструменты для секурити.
Оказывается OWASP ZAP научился в Docker и его можно в разных режимах запустить (CLI, web и прочее) + есть Github Actions
https://www.zaproxy.org/docs/docker/about/
https://www.zaproxy.org/docs/docker/webswing/
https://about.gitlab.com/releases/2020/12/22/gitlab-13-7-released/
Из интересного - Pre-filled variables when running pipelines manually
То есть теперь при ручном запуске пайплайна будет предварительный список переменных со стандартными значениями.
На протяжении нескольких недель пришлось плотно поработать с redis.
В результате скопилось несколько заметок, которые могут быть полезными.

Часть 0. Основы работы с Redis


Подключение (в случае с локальным Redis)
redis-cli

Подключение к удаленному Redis
redis-cli -h hostname/ip -p port

По умолчанию redis-cli работает с БД с индексом 0. Подключиться к другому индексу можно с помощью команды
redis-cli -n index

либо если вы уже вошли в CLI Redis
SELECT index

Получение информации о всех индексах в БД и количестве ключей:
INFO keyspace

Получение значения всех ключей в БД (АХТУНГ!!! НИКОГДА НЕ ИСПОЛЬЗОВАТЬ ЭТО В ПРОДЕ. При выводе большого количества ключей в Redis может значительно упасть производительность).
KEYS *

# ИЛИ
KEYS key:*

Вместо KEYS лучше использовать SCAN
SCAN 0 MATCH *pattern*

Узнать тип ключа
TYPE key

Получить значение ключа типа string
GET key

Получить значение ключа типа set
SMEMBERS key

Получить все поля и их значения для ключа типа hash
HGETALL key

Получить значение ключа типа list (start - номер первого элемента, stop - последнего)
LRANGE key start stop

Удалить ключ
DEL key

Узнать срок жизни ключа в секундах
TTL key

Полезные ссылки:
https://redis.io/commands/select
https://redis.io/commands/info
https://redis.io/commands/keys
https://redis.io/commands/scan
https://redis.io/commands/type
https://redis.io/commands/get
https://redis.io/commands/smembers
https://redis.io/commands/hgetall
https://redis.io/commands/lrange
https://redis.io/commands/del
https://redis.io/commands/ttl