Как стать автором
Обновить
0
0
eterion @eterion

Пользователь

Отправить сообщение

CORS для чайников: история возникновения, как устроен и оптимальные методы работы

Время на прочтение17 мин
Количество просмотров404K


В этой статье подробно разобрана история и эволюция политики одинакового источника и CORS, а также расписаны разные типы доступа между различными источниками, а также несколько оптимальных решений работы с ними.

Если вы давно хотели разобраться в CORS и вас достали постоянные ошибки, добро пожаловать под кат.

Ошибка в консоли вашего браузера


No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://example.com/

Access to fetch at ‘https://example.com’ from origin ‘http://localhost:3000’ has been blocked by CORS policy.


Я уверен, вам уже доводилось видеть похожие сообщения об ошибках в консоли вашего браузера. Если нет, не волнуйтесь, скоро увидите. Все программисты достаточно часто натыкаются на CORS-ошибки. 

Эти всплывающие ошибки в процессе разработки просто раздражают. Но на самом деле, CORS — это невероятно полезный механизм в мире неправильно настроенных веб серверов, злоумышленников, орудующих в интернете и организаций, продвигающих веб-стандарты.

Но давайте-ка пойдем к истокам…
Читать дальше →
Всего голосов 41: ↑40 и ↓1+57
Комментарии14

10 типичных ошибок при использовании Kubernetes

Время на прочтение11 мин
Количество просмотров28K
Прим. перев.: авторы этой статьи — инженеры из небольшой чешской компании pipetail. Им удалось собрать замечательный список из [местами банальных, но всё ещё] столь актуальных проблем и заблуждений, связанных с эксплуатацией кластеров Kubernetes.



За годы использования Kubernetes нам довелось поработать с большим числом кластеров (как управляемых, так и неуправляемых — на GCP, AWS и Azure). Со временем мы стали замечать, что некоторые ошибки постоянно повторяются. Однако в этом нет ничего постыдного: мы сами совершили большинство из них!

В статье собраны наиболее распространенные ошибки, а также упомянуто о том, как их исправлять.
Читать дальше →
Всего голосов 44: ↑42 и ↓2+49
Комментарии3

Вертикальное автомасштабирование pod'ов в Kubernetes: полное руководство

Время на прочтение22 мин
Количество просмотров26K

Прим перев.: месяц назад Povilas Versockas, CNCF Ambassador и software engineer из Литвы, написал очень подробную статью о том, как работает и как использовать VPA в Kubernetes. Рады поделиться её переводом для русскоязычной аудитории!

Это полное руководство по вертикальному автомасштабированию pod'ов (Vertical Pod Autoscaling, VPA) в Kubernetes. Из него можно узнать, что такое вертикальное автомасштабирование pod'ов, зачем оно нужно и как работает, как устроена модель ресурсных требований Kubernetes, когда использовать VPA и какие существуют ограничения.

Читать далее
Всего голосов 38: ↑38 и ↓0+38
Комментарии1

Единая точка входа с Keycloak и Яндекс в условиях большого переезда

Время на прочтение20 мин
Количество просмотров17K

Так же, как и многие другие компании, мы долго и счастливо использовали целый стек популярных облачных сервисов (Github, Slack, Jira, Confluence и т.д.) и связывал это все Google Workspace, который выступал в том числе и как SSO для всех используемых сервисов.

В связи с последними событиями нам пришлось достаточно быстро искать и реализовывать альтернативу из отечественных сервисов и open source продуктов. При этом одним из требований стало использование общей с «офисными»
и почтовыми сервисами точки аутентификации.

В этой статье я расскажу о том, как мы решали задачу создания SSO поверх выбранного поставщика почтового и «офисных» сервисов для используемых нами приложений с помощью Keycloak и с какими проблемами мы при этом столкнулись.

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии12

GitOps — что это такое и с чем его едят?

Время на прочтение12 мин
Количество просмотров29K

На самом деле почти никто не знает, что такое GitOps. Я тоже заблуждался, пока не начал готовить доклад, а потом статью по этой теме. Самое распространенное определение GitOps — это «хранение состояния в Git», но оно не единственное и не самое главное. Это звучное словечко  придумали в Weaveworks, но его название несколько разнится с его реальным пониманием. Созвучие с DevOps — скорее, маркетинговый ход, чем реальное отражение сущности. Основная идея GitOps в том, что помимо хранения состояния в Git, у нас есть непрерывный процесс его синхронизации с реальным миром, то есть, что у вас Kubernetes-кластере или где либо ещё в вашем окружении.

Меня зовут Андрей Квапил. Я работал в чешском хостинге WEDOS. Он не сильно популярен в России, но это крупнейший хостинг на территории Чехии (просто Чехия маленькая).  Сейчас я работаю во Фланте, но именно на примере европейского хостинга WEDOS, хочу рассказать историю имплементации GitOps.

Читать далее
Всего голосов 25: ↑25 и ↓0+25
Комментарии5

Rclone: rsync для облаков

Время на прочтение5 мин
Количество просмотров75K
PR-2358

В предыдущих публикациях мы уже не раз рассказывали о полезных утилитах для работы с нашим облачным хранилищем. Сегодня мы поговорим ещё об одном интересном, простом в обращении и — не побоимся этого слова — уникальном инструменте. Знакомьтесь: rclone. Разработчики описывают его краткой и ёмкой фразой «rsync для облачных хранилищ».

Основная функция rclone — это синхронизация данных в хранилище и на локальной машине. Утилита несомненна окажется полезной для широкого круга пользователей облачного хранилища. Её можно использовать и для резервного копирования, и в работе со статическими сайтами…

Есть у rclone и опции, которых нет ни у одного другого инструмента аналогичного плана. Подробнее обо всём этом мы расскажем ниже.
Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии14

Способы бэкапирования Persistent Volumes в Kubernetes кластере с помощью Velero

Время на прочтение6 мин
Количество просмотров9.3K

В данной статье рассмотрены в общих чертах процесс создания резервных копий кластера Kubernetes и более детально процесс создания копий PV с помощью Velero.

В дальнейшем резервные копии могут быть использованы для миграции, восстановления кластера на определенную дату, а также клонирования стендов.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии4

Резервное копирование Kubernetes: два практических подхода. Часть 1. Kasten

Время на прочтение7 мин
Количество просмотров8.2K

У многих сочетание понятий «контейнеры» и «резервное копирование» вызывает недоумение. Зачем бэкапить те сущности, которые были созданы специально для быстрого развертывания и уничтожения? Однако в мире ИТ больших компаний такая «странность» необходима. Расскажем о ситуациях, когда резервные копии оказываются полезны, и подробно разберем бэкап двумя способами: с помощью Kasten — решения, установленного внутри кластера Kubernetes, — и внешнего CommVault. Но чтобы не cмешивать всё в одном посте, начнем с Kasten. Поехали!

Читать далее
Всего голосов 10: ↑9 и ↓1+11
Комментарии3

Стратегии деплоя в Kubernetes: rolling, recreate, blue/green, canary, dark (A/B-тестирование)

Время на прочтение5 мин
Количество просмотров75K
Прим. перев.: Этот обзорный материал от Weaveworks знакомит с наиболее популярными стратегиями выката приложений и рассказывает о возможности реализации наиболее продвинутых из них с помощью Kubernetes-оператора Flagger. Он написан простым языком и содержит наглядные схемы, позволяющие разобраться в вопросе даже начинающим инженерам.


Схема взята из другого обзора стратегий выката, сделанного в Container Solutions

Одной из самых больших проблем при разработке cloud native-приложений сегодня является ускорение деплоя. При микросервисном подходе разработчики уже работают с полностью модульными приложениями и проектируют их, позволяя различным командам одновременно писать код и вносить изменения в приложение.

Более короткие и частые развертывания имеют следующие преимущества:

  • Сокращается время выхода на рынок.
  • Новые функции быстрее попадают к пользователям.
  • Отклики пользователей быстрее доходят до команды разработчиков. Это означает, что команда может дополнять функции и исправлять проблемы более оперативно.
  • Повышается моральный дух разработчиков: с большим количеством функций в разработке интереснее работать.
Читать дальше →
Всего голосов 43: ↑40 и ↓3+37
Комментарии3

Зачем и как хранить объекты на примере MinIO

Время на прочтение13 мин
Количество просмотров62K

Наша биг дата проанализировала Telegram-чаты, форумы и разговоры в кулуарах IT-мероприятий и пометила объектные хранилища как инструмент, который ещё не все осмеливаются использовать в своих проектах. Хочу поделиться с вами своим опытом в формате статьи-воркшопа. Если вы пока не знакомы с этой технологией и паттернами её применения, надеюсь, эта статья поможет вам начать использовать её в своих проектах. 

Начать хранить файлы
Всего голосов 18: ↑16 и ↓2+24
Комментарии8

MinIo для самых маленьких

Время на прочтение7 мин
Количество просмотров193K
MinIO — прекрасное решение, когда надо легко и просто организовать объектное хранилище. Элементарная настройка, множество платформ и хорошая производительность сделали своё дело на ниве народной любви. Так что у нас не было другого пути, как месяц назад заявить о совместимости Veeam Backup & Replication и MinIO. Включая такую важную функцию, как Immutability. На самом деле у MinIO есть целый раздел в документации, посвящённый нашей интеграции.

Поэтому сегодня мы поговорим о том, как:

  • Настроить MinIO очень быстро.
  • Настроить MinIO чуть менее быстро, но значительно качественней.
  • Использовать его в качестве Archive Tier для масштабируемого репозитория Veeam SOBR.


Читать дальше →
Всего голосов 12: ↑11 и ↓1+16
Комментарии28

Публикация локального сервера из дома в интернет

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров46K

Приветики. Надеюсь, все отошли от новогодних, и можно писать и читать дальше. Как хозяин умного дома, я состою в чатике по Home Assistant, там прекрасное ответчивое комьюнити,
но периодически задаётся вопрос по тому, как собственно выставить свой веб сервис в интернет. И оказывается, что в двух словах тут не ответишь, а вменяемой инструкции на которую можно дать ссылку - нет. Так что теперь она будет здесь.

Рокет сайнса здесь не встретите, и в целом все эти вещи справедливы и работают уже минимум лет 10, просто не так тривиально понять, какой именно запрос нужно задать в гугл, и что делать.

Мы рассмотрим здесь несколько сценариев - статический белый айпи, динамический белый айпи, и серый. Для серого рассмотрим варианты с готовыми сервисами, с помощью Keenetic и с помощью ssh туннеля. Погнали!

Читать далее
Всего голосов 57: ↑55 и ↓2+62
Комментарии97

Обзор Teleport: организация безопасного доступа для кластеров Kubernetes

Время на прочтение10 мин
Количество просмотров13K

Платформа Kubernetes является одной из самых популярных систем для оркестрации контейнеров. Со временем многие организации полностью переводят свою инфраструктуру и проекты на «рельсы» Kubernetes. Однако здесь возникают вопросы безопасности, связанные с необходимостью контроля – кто и как сможет получать доступ к кластеру Kubernetes. По умолчанию подключиться к кластеру Kubernetes может каждый – для этого достаточно стандартного конфигурационного файла с именем config. Для решения данных проблем безопасности существует продукт под названием Teleport.

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Комментарии5

На каких бесплатных инструментах строить Observability и зонтичный мониторинг: ELK vs Graylog vs Grafana Loki vs Monq

Время на прочтение15 мин
Количество просмотров40K

Сами по себе логи, трейсы, метрики - это очень узкие артефакты состояния нашего объекта наблюдения и обслуживания. Для понимания общей картины нужен взгляд сверху, сбор всех важных сигналов в одну систему и работа с большими данными в ней. Зонтичный подход близок по своим целям к RED и Golden Signals, но по своей сути является противоположным по принципу работы с данными. В Golden Signals мы отслеживаем Latency, Traffic, Errors отдельных сервисов и по ним можем быстро, но очень поверхностно определить их состояние. В случае зонтичного мониторинга или AIOps мы собираем данные о всех логах, событиях систем мониторинга метрик и трейсов, далее выстраиваем там топологию сервиса и определяем алгоритмически состояние здоровья, основываясь на сотнях и тысячах событий, метрик и трейсов. И два подхода, кстати, друг друга не исключают. В этой статье я постараюсь сравнить четыре бесплатных инструмента, которые могли бы дать такую зонтичную картину: ELK, Graylog, Grafana Loki и Monq.

Читать далее
Всего голосов 11: ↑11 и ↓0+11
Комментарии8

GOST: швейцарский нож для туннелирования и обхода блокировок

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров104K

Начиная со вчера Роскмонадзор запрещает писать про инструменты для обхода блокировок, и это событие мы отметим очередной статьей про инструменты для обхода блокировок. Ибо не им указывать, на какие темы мне писать или не писать, пусть идут строем нафиг.

Сегодня я расскажу о замечательном инструменте под названием GOST. Не пугайтесь, он не имеет никакого отношения к ГОСТ-шифрованию или чему-то подобному, на самом деле это Go Simple Tunnel. Он действительно simple (простой) в использовании и настройке, но при этом невероятно мощный, поскольку поддерживает огромное количество протоколов и транспортов, из которых вы при желании сможете построить самые упоротые и бронебойные комбинации, а именно...

Читать далее
Всего голосов 145: ↑142 и ↓3+174
Комментарии113

Жизнь и смерть митохондрий

Время на прочтение14 мин
Количество просмотров91K
Митохондрии – маленькие труженики или большие начальники?

Если вы думаете, что самая важная для нас история совместной жизни начинается во время свадьбы, то это совсем не так. Самая важная история совместной жизни каждого человека началась более миллиарда лет назад, когда наши далекие одноклеточные предки вынуждены были подписать «брачный контракт» с теми, кого мы сейчас называем митохондрии (см. теория симбиогенеза).

Митохондрии имеют две мембраны (внутреннюю и внешнюю) и собственный наследственный материал в виде ДНК (рис.1). На внутренней мембране митохондрий находится система окислительного фосфорилирования, работа которой обеспечивает окисление энергетических субстратов с образованием АТФ.


Рис. 1. Схематическое строение митохондрии

В брачном контракте клетки и митохондрии нет пункта «в болезни и здравии», — и хорошо. Если митохондрия становится старой, клетка может ее убить в процессе митофагии, а митохондрии, в свою очередь, регулируют процесс апоптоза у недееспособных и старых клеток. Если процесс обоюдного контроля качества нарушается, запускаются механизмы старения. Нарушаются механизмы апоптоза, увеличивается количество свободных радикалов, не контролируемых митохондрией. Это вызывает системное воспаление, повреждение ДНК клетки. Таким образом, есть сильная взаимосвязь между МХ дисфункцией, возраст-зависимыми заболеваниями, старением организма и метаболическими дисфункциями [1]. Метаболическая дисфункция – неизменный всадник апокалипсиса старения.
Читать дальше →
Всего голосов 49: ↑48 и ↓1+47
Комментарии53

Android@Home: проникновение в дом

Время на прочтение2 мин
Количество просмотров7.3K
Вчера на конференции Google I/O была анонсирован фреймворк Android@Home, который объединяет функции ОС по использованию Android-устройства в качестве домашнего мультимедийного центра и контроллера домашних приборов.

Фреймворк Android@Home позволяет транслировать контент c Google Music и управлять различными устройствами: бытовой техникой, освещением, контроллерами электроэнергии, системами полива газонов и всем остальным, на что только хватит фантазии у разработчика. См. также описание Open Accessory API для Android 3.1. Это уже выход на новый уровень.
Читать дальше →
Всего голосов 31: ↑27 и ↓4+23
Комментарии29

Как сделать конкурс так, чтобы в нём участвовало больше 2 человек

Время на прочтение6 мин
Количество просмотров39K
Думаю, почти все тут помнят недавний конкурс за MS-планшет, который призвал к жизни кучу мертворожденных топиков и вызвал некоторое бурление. Это было пример того, как можно сделать популярно, активно, динамично, но не в тему. Проблема в том, что иногда даже так сделать не получается.

Если вы сами проводили конкурсы и всё было ок — не читайте топик. Если где-то ждал облом — добро пожаловать под кат.

Читать дальше →
Всего голосов 110: ↑102 и ↓8+94
Комментарии21

Мини-обзор Arduino-совместимых плат различных архитектур

Время на прочтение5 мин
Количество просмотров97K
В тематическом блоге «Программинг микроконтроллеров» уже было несколько статей по поводу выбора первого микроконтроллера и начала работы с ним. Не менее интересны были и комментарии к таким статьям. Одна из мыслей, которая несколько раз поднималась там — это что не все, кто имеют интерес к МК, приходят к ним от транзисторов. Некоторые (дай бог, чтобы побольше), приходят к ним со стороны (прикладного) программирования. Рекомендовать таким людям брать в руки паяльник — не разумно, у них и так есть вещи, которые они могут «попаять». Так мы приходим к слову «Arduino», которое уже многие слышали. Среди бывалых с паяльниками существует стереотип — Arduino это платка на AVR для ленивых. Так ли это? Эта статья — попытка наглядно показать, что Arduino — это не про AVR и не про лень, Arduino — это архитектурно-независимая электронно-механическая платформа совместимых компонентов, по (относительной) значимости не менее важная, чем (в свое время) IBM S/360, IBM PC или USB.



Читать дальше →
Всего голосов 46: ↑43 и ↓3+40
Комментарии40

Текстильный принтер своими руками с минимумом затрат

Время на прочтение2 мин
Количество просмотров48K
Как то захотел я напечатать себе картинку на футболку. Залез в интернетик — а там, оказывается, у людей суперпринтеры есть, которые на этих футболках и печатают. Отлично, подумал я — а не купить ли мне такой же? Но, посмотрев цены на них со мной случилась драма и трагедия. Как то дороговато они стоят — тысяч за пять вечнозеленых можно найти какой нибудь б/у и это будет дешево. В общем немного не та сумма, что бы покупать его как игрушку. И тут я вспомнил про старый добрый EPSON 1290, который пылился в чулане на офисе…

Читать дальше →
Всего голосов 77: ↑70 и ↓7+63
Комментарии68
1

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность