Архив рубрики: What is?

Attempts to understand in some terms and concepts.

What is: SAML — обзор, структура и трассировка запросов на примере Jenkins и Okta SAML SSO

2 ноября 2019
 

 В процессе настройки SAML SSO для Jenkins столкнулся с проблемой, при которой не передаются часть атрибутов из Okta в Jenkins. Собственно, в этом посте попробуем разобраться с тем, что такое SAML вообще, достаточно кратко рассмотрим его архитектуру и компонены, а затем выполним трассировку запросов между Okta и Jenkins, что бы посмотреть какие данные передаются. Т.к.… Читать далее »

Kubernetes: знакомство, часть 1 — архитектура и основные компоненты, обзор

24 июля 2019
 

  На текущем проекте у нас имеется API-бекенд для мобильных приложений на PHP Yii-фреймворке, который работает на стандартном LEMP — Linux/NGINX/PHP-FPM/MySQL. Пришла пора и нам разбивать этот монолит на микросервисы, для управления которыми будет использоваться Kubernetes (AWS EKS). В этом и последующих постах серии — знакомство с основными компонентами и архитектурой Kubernetes, ручное создание кластера… Читать далее »

Redis: репликация, часть 1 — обзор. Replication vs Sharding. Sentinel vs Cluster. Топология Redis.

29 марта 2019
 

 Изначально планировался один небольшой пост с примером создания Redis-репликации, но по мере углубления в детали — захотелось описать всё больше и больше, а потому разбил материал на две части. В этой, обзорной — общие сведения, разница между различными типами хранения данных в Redis, примеры топологии. Достаточно кратко, но со ссылками на детальную документацию, плюс ссылки… Читать далее »

What is: chroot — системный вызов и утилита в Linux

23 марта 2019
 

 chroot() был добавлен в Version 7 Unix в 1979 году и используется для изоляции файловой системы. По сути, является предшественником вообще всей идеи нынешней контейнеризации, только в современных системах используются namespaces и cgroups, а раньше применяли chroot для создания изолированного от хоста рабочего окружения, которое могло использоваться для тестирования. Собственно, ch и root и является… Читать далее »

What is: YAML — общий обзор, типы данных, YAML vs JSON и PyYAML

14 марта 2019
 

 YAML — один из наиболее популярных форматов… Они сами не знают — форматом чего, на самом деле. Изначально он был «Yet Another Markup Language» — «Ещё один язык разметки», позже стал «YAML Ain’t Markup Language» — «YAML — не язык разметки» ((с) Wiki Rus и Wiki Eng): Originally YAML was said to mean Yet Another Markup… Читать далее »

What is: SSL/TLS в деталях

20 марта 2018
 

 Протоколы криптографии предоставляют возможность установления защищённых соединений между двумя удалёнными хостами. Два наиболее часто встречающихся набора протоколов — SSL/TLS, основная задача которых заключается в обеспечении конфидициальности передаваемых данных, обеспечении целостности данных (т.е. гарантирование того, что данные не были изменены или подменены во время доставки между узлами), а так же в обеспечении идентификации и аутенфикации ресурсов и… Читать далее »

What is: Linux namespaces, примеры PID и Network namespaces

10 марта 2018
 

 Данный пост обединяет в себе два других замечательных (на мой взгляд) поста на тему Namespaces в Linux — A Tutorial for Isolating Your System with Linux Namespaces и Introduction to Linux namespaces — Part 1: UTS, с небольшими дополнениями и изменениями. Тем не менее — крайне рекомендую к прочтению оба поста выше, и ознакомиться с другими ссылками из… Читать далее »

What is: Load Balancing — алгоритмы

27 февраля 2018
 

 Основной задачей балансировщика является определение того, какой из серверов из бекенд-пула может наиболее эффективно обработать входящий пакет данных. Для этого у балансировщика (Load Balancer, LB) имеется несколько алгоритмов, наличие и возможность применения которых зависит от типа LB и его настроек. Основное различие алгоритмов — это уровень их применения: 7-ой, Application (уровень приложения), 4-ый, Транспортный уровень… Читать далее »

What is: модель OSI

3 октября 2017
 

 Захотелось немного потрогать raw sockets на С, заодно решил описать модель OSI — набросок поста давно лежал в черновиках. Модель OSI Open System Interconnection (OSI) — набор протоколов, описывающих процесс взаимодействия по сети двух распределённых систем, независимо от их архитектуры. Модель OSI не является протоколом сама по себе, а описывает структуру для построения гибкой, отказоустойчивой и функционально… Читать далее »

Linux: C — адресное пространство процесса

17 сентября 2017
 

 Адресное пространство процесса на примере программы на C. Используемые утилиты и файлы: size /proc/$PID/maps objdump pmap Все примеры выполняются на ОС: С ядром: С использованием gcc: