—
brew install noseyparker
Nosey Parker позволяет находить секреты и конфиденциальную информацию в текстовых данных и не только.
Инструмент полезен как для наступательного, так и для оборонительного тестирования безопасности.
@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#вакансия #remote #DevOpsEngineer
#Middle #Senior #Linux
#Ansible #Gitlab #Grafana
#Prometheus #ClickHouse
#Java #Go
Вакансия: DevOps Engineer Middle/Senior (сопровождение)
Компания: МТС Exolve конструктор омниканальных диалогов для бизнеса
Формат: удаленка по России,
полная занятость
Проект: www.exolve.ru
СТЕК: Golang, VueJS, PostgreSQL, MongoDB, ClickHouse, RabbitMQ, Redis, K8s, Helm, S3
Задачи: предоставлять CI/CD тулинг как сервис,предоставлять платформу Kubernetes как сервис, разрабатывать и продвигать унифицированные пайплайны/подходы/практики, выступать экспертом в CI/CD области и помогать продуктовым командам решать кейсы, взаимодействовать с инфраструктурной командой и ИБ
Предлагаем:
- Оформление по трудовому контракту;
- ДМС
Важно:
- От 2-5 ти лет опыта работы администрирования Linux;
- Знание Ansible и опыт оптимизации задач;
- Знания Nginx,HAProxy
- Знание bash и одного из языков программирования: Go, Python будет плюсом
- Опыт работы с GitLab; опыт настройки процессов CI/CD на основе Gitlab;
- Опыт работы с Grafana и Prometheus / VictoriaMetrics; плюсом будет Loki
- Опыт сборки на основе Dockerfile для различных языков программирования
- Опыт дебага приложения совместно с разработкой
Контакты @agataezra
#Middle #Senior #Linux
#Ansible #Gitlab #Grafana
#Prometheus #ClickHouse
#Java #Go
Вакансия: DevOps Engineer Middle/Senior (сопровождение)
Компания: МТС Exolve конструктор омниканальных диалогов для бизнеса
Формат: удаленка по России,
полная занятость
Проект: www.exolve.ru
СТЕК: Golang, VueJS, PostgreSQL, MongoDB, ClickHouse, RabbitMQ, Redis, K8s, Helm, S3
Задачи: предоставлять CI/CD тулинг как сервис,предоставлять платформу Kubernetes как сервис, разрабатывать и продвигать унифицированные пайплайны/подходы/практики, выступать экспертом в CI/CD области и помогать продуктовым командам решать кейсы, взаимодействовать с инфраструктурной командой и ИБ
Предлагаем:
- Оформление по трудовому контракту;
- ДМС
Важно:
- От 2-5 ти лет опыта работы администрирования Linux;
- Знание Ansible и опыт оптимизации задач;
- Знания Nginx,HAProxy
- Знание bash и одного из языков программирования: Go, Python будет плюсом
- Опыт работы с GitLab; опыт настройки процессов CI/CD на основе Gitlab;
- Опыт работы с Grafana и Prometheus / VictoriaMetrics; плюсом будет Loki
- Опыт сборки на основе Dockerfile для различных языков программирования
- Опыт дебага приложения совместно с разработкой
Контакты @agataezra
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ every-programmer-should-know | Каждый кодер должен знать
Крутая подборка материалов про Computer Science. Неважно, какой ЯП вы используете, вам все равно стоит знать виды алгоритмов, структур данных, архитектуры и другую базу.
Репозиторий проекта
@DevOPSitsec
Крутая подборка материалов про Computer Science. Неважно, какой ЯП вы используете, вам все равно стоит знать виды алгоритмов, структур данных, архитектуры и другую базу.
Репозиторий проекта
@DevOPSitsec
YaraHunter позволяет сканировать образы контейнеров, запущенные контейнеры Docker и файловые системы в поисках признаков вредоносного ПО.
YaraHunter использует набор своих правил для обнаружения сигнатуры вредоносов и для обнаружения признаков компрометации контейнеров или файловой системы.
YaraHunter отлично подходит для встраивания в CI/CD-конвейеры
@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Вы указываете работающий контейнер, и Runlike выводит команду для запуска такого же контейнера с теми же параметрами (порты, тома, ссылки и т.д.). Это особенно полезно для тех, кто использует инструменты управления конфигурациями (Ansible, Chef) и хочет сэкономить время при ручном перезапуске контейнеров.
@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM
KICS (Keeping Infrastructure as Code Secure) — инструмент, который позволяет находить уязвимости в системе безопасности, проблемы с соответствием нормативным требованиям и неправильную конфигурацию инфраструктуры на ранних этапах разработки.
Сканирование файла с помощью KICS выглядит так:
docker run -t -v {path_to_host_folder}:/path checkmarx/kics:latest scan -p /path/{filename}.{extension} -o "/path/"
@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Сообщество GitHub собирает awesome-списки ресурсов и инструментов, относящихся к определенной теме и значительно упрощающие работу в ней. Держите самые интересные из тех, что точно вам пригодятся:
JavaScript: awesome-javascript
React: awesome-react
Vue: awesome-vue
Angular: awesome-angular
Node.js: awesome-nodejs
Typescript: awesome-typescript
Java: awesome-java
Go: awesome-go
Ruby: awesome-ruby
PHP: awesome-php
Kotlin: awesome-kotlin
Rust: awesome-rust
Swift: awesome-swift
iOS-разработка: awesome-ios
Android-разработка: awesome-android
C: awesome-c
C++: awesome-cpp
C#: awesome-dotnet
Unreal Engine: awesome-unreal
Unity: awesome-unity3d
Python: awesome-python
Django: awesome-django
Data Science: awesome-datascience
@DevOPSitsec
JavaScript: awesome-javascript
React: awesome-react
Vue: awesome-vue
Angular: awesome-angular
Node.js: awesome-nodejs
Typescript: awesome-typescript
Java: awesome-java
Go: awesome-go
Ruby: awesome-ruby
PHP: awesome-php
Kotlin: awesome-kotlin
Rust: awesome-rust
Swift: awesome-swift
iOS-разработка: awesome-ios
Android-разработка: awesome-android
C: awesome-c
C++: awesome-cpp
C#: awesome-dotnet
Unreal Engine: awesome-unreal
Unity: awesome-unity3d
Python: awesome-python
Django: awesome-django
Data Science: awesome-datascience
@DevOPSitsec
Лёгкий инструмент для тестирования REST API
Библиотека предлагает множество удобных встроенных обработчиков ожиданий для легкого тестирования HTTP-ответов вашего API.
Если встроенных функций инструмента не хватит, вы можете создать собственный обработчик. Достаточно сделать это один раз, чтобы использовать его в любом тесте.
Ссылка на инструмент: Frisby
#инструмент #api
Библиотека предлагает множество удобных встроенных обработчиков ожиданий для легкого тестирования HTTP-ответов вашего API.
Если встроенных функций инструмента не хватит, вы можете создать собственный обработчик. Достаточно сделать это один раз, чтобы использовать его в любом тесте.
Ссылка на инструмент: Frisby
#инструмент #api
Здесь описывается Docker, GitHub Actions, k8s, Go, Helm, Prometheus, ArgoCD, Jenkins.
Помимо инструментов, внимание здесь уделяется таким методологиям как GitOps, DevSecOps, описываются базовые команды Linux, основы написания Bash-скриптов и много всего другого
@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️Полезная шпаргалка: 9 основных компонентов производственного микросервисного приложения
1 - API Gateway
Шлюз обеспечивает единую точку входа для клиентских приложений. Далее шлюз обрабатывает маршрутизацию, фильтрацию и балансировку нагрузки.
2 - Реестр служб
Реестр служб содержит сведения обо всех службах. Шлюз обнаруживает службу с помощью реестра. Например, Consul, Eureka, Zookeeper и т. д.
3 - Уровень служб
Каждая микрослужба выполняет определенную бизнес-функцию и может работать на нескольких экземплярах. Эти службы могут быть созданы с использованием таких фреймворков, как Spring Boot, NestJS и т. д.
4 - Сервер авторизации
Используется для защиты микрослужб и управления идентификацией и контролем доступа. Здесь могут помочь такие инструменты, как Keycloak, Azure AD и Okta.
5 - Хранилище данных
Базы данных, такие как PostgreSQL и MySQL, могут хранить данные приложений, сгенерированные службами.
6 - Распределенное кэширование
Кэширование — отличный подход к повышению производительности приложения. Варианты включают решения для кэширования, такие как Redis, Couchbase, Memcached и т. д.
7 - Асинхронная связь микросервисов
Используйте такие платформы, как Kafka и RabbitMQ, для поддержки асинхронной связи между микросервисами.
8 - Визуализация метрик
Микросервисы можно настроить для публикации метрик в Prometheus, а такие инструменты, как Grafana, помогут визуализировать метрики.
9 - Агрегация и визуализация журналов
Журналы, генерируемые сервисами, агрегируются с помощью Logstash, хранятся в Elasticsearch и визуализируются с помощью Kibana.
📌 Сохраняйте себе
@DevOPSitsec
1 - API Gateway
Шлюз обеспечивает единую точку входа для клиентских приложений. Далее шлюз обрабатывает маршрутизацию, фильтрацию и балансировку нагрузки.
2 - Реестр служб
Реестр служб содержит сведения обо всех службах. Шлюз обнаруживает службу с помощью реестра. Например, Consul, Eureka, Zookeeper и т. д.
3 - Уровень служб
Каждая микрослужба выполняет определенную бизнес-функцию и может работать на нескольких экземплярах. Эти службы могут быть созданы с использованием таких фреймворков, как Spring Boot, NestJS и т. д.
4 - Сервер авторизации
Используется для защиты микрослужб и управления идентификацией и контролем доступа. Здесь могут помочь такие инструменты, как Keycloak, Azure AD и Okta.
5 - Хранилище данных
Базы данных, такие как PostgreSQL и MySQL, могут хранить данные приложений, сгенерированные службами.
6 - Распределенное кэширование
Кэширование — отличный подход к повышению производительности приложения. Варианты включают решения для кэширования, такие как Redis, Couchbase, Memcached и т. д.
7 - Асинхронная связь микросервисов
Используйте такие платформы, как Kafka и RabbitMQ, для поддержки асинхронной связи между микросервисами.
8 - Визуализация метрик
Микросервисы можно настроить для публикации метрик в Prometheus, а такие инструменты, как Grafana, помогут визуализировать метрики.
9 - Агрегация и визуализация журналов
Журналы, генерируемые сервисами, агрегируются с помощью Logstash, хранятся в Elasticsearch и визуализируются с помощью Kibana.
📌 Сохраняйте себе
@DevOPSitsec
echo "# название" >> README.md
- создание файла README.mdgit init
- инициализация репозиторияgit add README.md
- добавления файла README.md в проектgit commit -m "first commit"
- получает проиндексированный снимок состояния и выполняет его коммит в историю проектаgit remote add origin https://github.com/stanruss/название.git
- команда, которой устанавливается подключение к удаленному серверу и git репозиторию, размещающемуся на нем.git push -u origin master
- кзменения отправляются на удаленный серверgit log --oneline
- посмотреть все коммиты.git checkout .
- восстановить все.git checkout "код коммита"
- вернуть до состояния этого коммита.git checkout master
- вернуться в ветку мастер.Восстановить файлы на локальном компьютере:
```shell
git fetch --all
git reset --hard origin/master или git reset --hard origin/<название_ветки>
```
git add text.txt
- Добавить файл в репозиторийgit rm text.txt
- Удалить файлgit status
- Текущее состояние репозитория (изменения, неразрешенные конфликты и тп)git commit -a -m "Commit description"
- Сделать коммитgit push origin
- Замерджить все ветки локального репозитория на удаленный репозиторий git push origin master
- Аналогично предыдущему, но делается пуш только ветки mastergit push origin HEAD
- Запушить текущую ветку, не вводя целиком ее названиеgit pull origin
- Замерджить все ветки с удаленного репозиторияgit pull origin master
- Аналогично предыдущему, но накатывается только ветка mastergit pull origin HEAD
- Накатить текущую ветку, не вводя ее длинное имяgit fetch origin
- Скачать все ветки с origin, но не мерджить их в локальный репозиторийgit fetch origin master
- Аналогично предыдущему, но только для одной заданной веткиgit checkout -b some_branch origin/some_branch
- Начать работать с веткой some_branch (уже существующей)git branch some_branch
- Создать новый бранч (ответвится от текущего)git checkout some_branch
- Переключиться на другую ветку (из тех, с которыми уже работаем)git branch
# звездочкой отмечена текущая ветвь - Получаем список веток, с которыми работаемgit branch -a # | grep something
- Просмотреть все существующие ветвиgit merge some_branch
- Замерджить some_branch в текущую веткуgit branch -d some_branch
- Удалить бранч (после мерджа)git branch -D some_branch
- Просто удалить бранч (тупиковая ветвь)git show d8578edf8458ce06fbc5bb76a58c5ca4a58c5ca4
- Изменения, сделанные в заданном коммитеgit push origin :branch-name
- Удалить бранч из репозитория на сервереgit reset --hard d8578edf8458ce06fbc5bb76a58c5ca4a58c5ca4
- Откатиться к конкретному коммиту и удалить последующие (хэш смотрим в «git log»)git push -f
- Залить на сервер измененные коммитыgit clean -f
- Удаление untracked files#git #github #doc #cheatsheet
@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Docker и Spring Boot микросервис (Быстрый старт)
Разберем основные понятия докера и запустим spring boot микросервис в докере
00:00 Intro
00:58 Установить докер
02:05 Развитие виртуализации
09:30 Компоненты Docker
11:25 Docker Daemon
11:50 Dockerfile
12:42 Docker Image
13:12 Docker Registry
13:45 Docker Container
14:00 Dockerhub
14:57 Практика. Пишем микросервис
17:30 Практика. Пишем dockerfile
23:25 Практика. Создаем docker образ
25:48 Практика. Запускам docke контейнер
27:19 Практика. Основные команды
30:00 Best practice. Как еще можно написать dockerfile
33:14 Best practice. Рекомендации
35:01 Итог
источник
@DevOPSitsec
Разберем основные понятия докера и запустим spring boot микросервис в докере
00:00 Intro
00:58 Установить докер
02:05 Развитие виртуализации
09:30 Компоненты Docker
11:25 Docker Daemon
11:50 Dockerfile
12:42 Docker Image
13:12 Docker Registry
13:45 Docker Container
14:00 Dockerhub
14:57 Практика. Пишем микросервис
17:30 Практика. Пишем dockerfile
23:25 Практика. Создаем docker образ
25:48 Практика. Запускам docke контейнер
27:19 Практика. Основные команды
30:00 Best practice. Как еще можно написать dockerfile
33:14 Best practice. Рекомендации
35:01 Итог
источник
@DevOPSitsec
1722832257768 (1).gif
4.4 MB
10 важнейших компонентов веб-приложения
1. CI/CD pipelines: Все начинается с непрерывной интеграции и доставки (Jenkins, GitHub).
2. Запросы пользователей: После разрешения DNS запросы поступают на сервера.
3. Балансировщики: Равномерно распределяют запросы между серверами (Nginx, HAProxy).
4. CDN: Запросы могут обслуживаться через сеть доставки контента.
5. API: Веб-приложение взаимодействует с бекендами через API.
6. Базы данных и кэши: Бекенды взаимодействуют с базами данных или кэшами для получения данных.
7. Очереди задач: Большие задачи отправляются на воркеры с помощью очередей.
8. Поисковые службы: Поиск поддерживается службами полнотекстового поиска (Elasticsearch, Apache Solr).
9. Мониторинг и логирование: Хранение логов помогает анализировать данные, чтобы убедиться, что все работает исправно (Sentry, Grafana, Prometheus).
10. Службы оповещения: Уведомляют разработчиков о проблемах для быстрого реагирования.
1. CI/CD pipelines: Все начинается с непрерывной интеграции и доставки (Jenkins, GitHub).
2. Запросы пользователей: После разрешения DNS запросы поступают на сервера.
3. Балансировщики: Равномерно распределяют запросы между серверами (Nginx, HAProxy).
4. CDN: Запросы могут обслуживаться через сеть доставки контента.
5. API: Веб-приложение взаимодействует с бекендами через API.
6. Базы данных и кэши: Бекенды взаимодействуют с базами данных или кэшами для получения данных.
7. Очереди задач: Большие задачи отправляются на воркеры с помощью очередей.
8. Поисковые службы: Поиск поддерживается службами полнотекстового поиска (Elasticsearch, Apache Solr).
9. Мониторинг и логирование: Хранение логов помогает анализировать данные, чтобы убедиться, что все работает исправно (Sentry, Grafana, Prometheus).
10. Службы оповещения: Уведомляют разработчиков о проблемах для быстрого реагирования.
✔ Squirrel Servers Manager (SSM) — это инструмент для управления несколькими серверами, разработанный на TypeScript с использованием Ansible и Docker.
SSM ориентирован на простоту и удобство, предоставляя интуитивно понятный интерфейс, который позволяет выполнять задачи, такие как обновление систем, перезагрузка серверов и мониторинг использования процессора, памяти и дискового пространства, всего в несколько кликов.
Кроме того, SSM поддерживает создание и выполнение Ansible плейбуков.
▪ Github
@DevOPSitsec
SSM ориентирован на простоту и удобство, предоставляя интуитивно понятный интерфейс, который позволяет выполнять задачи, такие как обновление систем, перезагрузка серверов и мониторинг использования процессора, памяти и дискового пространства, всего в несколько кликов.
Кроме того, SSM поддерживает создание и выполнение Ansible плейбуков.
docker compose up
▪ Github
@DevOPSitsec
Полное практическое руководство по Docker: с нуля до кластера на AWS
Докер позволяет разработчикам, системными администраторам и другим специалистам деплоить их приложения в отдельных контейнерах, которых может быть много на одной машине. Причём у каждого контейнера может быть своя ОС и набор конфигураций, отличные от остальных. Чем-то это похоже на виртуальные машины, но при этом меньше нагружают систему и требует меньше ресурсов.
В этом руководстве вы сможете не только разобраться с устройством докера, но и создавать первые рабочие контейнеры.
#docker #aws
Докер позволяет разработчикам, системными администраторам и другим специалистам деплоить их приложения в отдельных контейнерах, которых может быть много на одной машине. Причём у каждого контейнера может быть своя ОС и набор конфигураций, отличные от остальных. Чем-то это похоже на виртуальные машины, но при этом меньше нагружают систему и требует меньше ресурсов.
В этом руководстве вы сможете не только разобраться с устройством докера, но и создавать первые рабочие контейнеры.
#docker #aws
⚡️ K8up - инструмент резервного копирования Kubernetes на основе Restic , для создания резервных копии PVC и приложений в кластере Kubernetes или OpenShift.
Просто создайте schedule и credentials объект в пространстве имен, которое вы хотите резервировать. K8up позаботится обо всем остальном.
Еще он также содержит экспортер Prometheus для мониторинга.
Github
@DevOPSitsec
Просто создайте schedule и credentials объект в пространстве имен, которое вы хотите резервировать. K8up позаботится обо всем остальном.
Еще он также содержит экспортер Prometheus для мониторинга.
Github
@DevOPSitsec
В статье показан путь к достижению полной автоматизации в области подготовки кластеров, управления жизненным циклом и обновлений. Автор благодаря новому набору инструментов сократил время, необходимое для развертывания и подготовки кластера, готового к работе, с 1,5 недель до менее чем 1 дня.
Подробности тут
#туториал
@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM