От Python скрипта до WSGI приложения

Автор: admin от 23-04-2015, 18:57, посмотрело: 1030

Появилась задача написать веб интерфейс управления устройством. Управлять устройством будет Raspberry Pi. Логика управления написана python, соответственно и интерфейс хотелось бы на python. Хочу поделится своим опытом.


  • 1. lighttpd mod_cgi и простой скрипт

  • 2. web.py на порту 8080

  • 3. WCGI интерфейс

  • 4. Простой сервер WSGI

  • 5. WSGI с использованием wsgiref

  • 6. WSGI c помощью flup

  • 7. web.py приложение с использованием flup

  • 8. Немного особенностей

Категория: Программирование » Веб-разработка

 

Monitoring-as-a-service для инфраструктур на примере сервиса Anturis

Автор: admin от 23-04-2015, 17:57, посмотрело: 483

Мониторинг является одним из неотъемлемых компонентов менеджмента IT инфраструктур. На сегодняшний день существует множество решений и подходов к мониторингу, самые популярные из них можно выделить в две группы:


  • Только внешний мониторинг, который используется для анализа ситуации со стороны пользователей. В этом случае смотрятся такие метрики, как Response Time, Uptime, Round-trip Time и пр. Лидером в этом сегменте является шведский Pingdom, хотя существует множество аналогов (в т.ч. бесплатных), а также сервисов, специализирующихся на определенных регионах. Минусом таких решений является то, что при наличии понимания проблемы, сложно выявить ее причину и, соответственно, быстро устранить.

  • Open-source системы для мониторинга, такие как Nagios или Zabbix. Такой подход популярен прежде всего высокой степенью кастомизации и практически безграничным функционалом, который можно расширить с помощью самописных скриптов и сторонних плагинов. В то же время, такие системы требуют достаточно много времени на обучение внедрению и поддержку компонентов самого мониторинга. Кроме того, теряется некоторый функционал внешнего мониторинга (например, проверки из разных географических положений).



Monitoring-as-a-service


Существует множество IT специалистов, которым явно не хватает только внешнего мониторинга, а тратить большую часть своего времени и средств на разворачивание и поддержку собственной системы мониторинга они не готовы. Поэтому в последние несколько лет на рынке появился новый класс решений — monitoring-as-a-service или hosted monitoring.

Категория: Админитстрирование » Системное администрирование

 

CAN-USB адаптер из stm32vldiscovery

Автор: admin от 23-04-2015, 17:15, посмотрело: 2861

CAN-USB адаптер из stm32vldiscovery

При разработке устройств с CAN-интерфейсом желательно иметь удобный инструмент для отслеживания сообщений в сети. Для RS232/485 существует множество бюджетных USB адаптеров и куча разнообразного софта, а вот для CAN мне не удалось найти недорогое готовое решение.

В то же самое время на сайтах автолюбителей находились самодельные устройства для подключения к CAN шине автомобиля. Одними из готовых проектов были USB<>CAN Bus Interface (CAN Hacker), реализованный на Atmega+SJA1000 и проект STM32-CAN-Busadapter, реализованный на STM32F105. Работают они с программой CAN Hacker, которая выглядит достаточно удобной для работы. Беглый анализ протокола команд по USB показал, что эти устройства представляются COM портом, и дальнейшее общение происходит в виде передачи команд из ASCII символов.

В закромах была найдена плата STM32VLDiscovery, которая и стала объектом испытаний. На ней мы будем повторять «STM32-CAN-Busadapter».
Что из этого получилось

Категория: Программирование, Сделай Сам

 

7 инструментов для облегчения организации облачной инфраструктуры

Автор: admin от 23-04-2015, 17:13, посмотрело: 337

7 инструментов для облегчения организации облачной инфраструктуры


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

Для облегчения задач построения и автоматизации облачной инфраструктуры используются различные методы и ПО. В сегоднешнем материале — подборка из семи таких инструментов и технологий (а также ссылки на конкурирующие продукты и аналоги).

Категория: Программирование » Веб-разработка

 

Google вложит еще $1 млрд в свой дата-центр в Каунсил-Блафс

Автор: admin от 23-04-2015, 16:55, посмотрело: 462

Google вложит еще $1 млрд в свой дата-центр в Каунсил-Блафс

Всего несколько лет назад, место где сейчас базируется один из наиболее известных дата-центров корпорации Google в Каунсил-Блафс, Айова, США, не представляло собой ничего особенного. Это было обычное поле. В 2007 году корпорация заплатила за это поле, став его владельцем. Прошло несколько лет, пока в Google приняли решение начать строительство производительного дата-центра в этом месте, причем бюджет строительства составил $1 млрд. Сейчас здесь находится один из крупнейших дата-центров компании, обеспечивающий работу нескольких сервисов Google, включая YouTube.

Дата-центр состоит из двух частей, и еще одну предполагается достроить в рамках нового проекта. Сейчас корпорация решила вложить дополнительный миллиард долларов в расширение своего дата-центра. Один из основных факторов, который побудил команию вложить средства именно в Каунсил-Блафс — благоприятные погодные условия и налоговый климат. Здесь прохладно, энергия относительно недорогая, энергетическая инфраструктура надежная, плюс много свободной земли и желающих поработать на благо ИТ-сферы региона.

Категория: Компании » Google

 

Как мы организовали мини-провайдер в поселке

Автор: admin от 23-04-2015, 16:53, посмотрело: 502

Переехав по работе на Крайний Север столкнулся с проблемой отсутствия нормального интернета (сотовые операторы не в счет, ибо все равно не устраивает). Потыкавшись пару недель с поиском WiFi сетей по соседству, нашел доброго человека, который решил организовать какое-то подобие провайдера с раздачей интернета всем желающим по WiFi. Но у этого человека не было знаний и опыта по настройке сетей и, как следствие, сеть была построена не очень хорошо.

Переговорив, мы решили объединиться. У меня худо-бедно есть опыт по настройке серверов под *nix и построения сетей, у него оборудование и 2-3 канала в интернет через соседей и их ADSL-модемы.

Категория: Программирование, Linux

 

Еще один способ узнать, кто залогинен на сайте, используя faye + redis

Автор: admin от 23-04-2015, 16:29, посмотрело: 409

Проблема


Было приложение, использующее Ruby on Rails, и стандартный набор гемов (вроде devise). На одной из страниц необходимо было выводить информацию о текущих активных пользователях.

Решение


Первой же мыслью было при каждом запросе записывать в текущего юзера время этого самого запроса и, таким образом, зная таймаут сессии, можно было вычислить, кто активен, а кто нет. Но таймаут стоял порядка 15 минут, поэтому если вкладку просто закрыли — то он все еще будет «активным» на протяжении этого времени. Уменьшать таймаут сессии было нельзя. Да и вариант каждый раз обновлять запись в базе выглядел немного костыльно, учитывая, что одновременных активных юзеров было порядка 2к. Из самых быстрых и простых вариантов — реализация используя вебсокеты + redis.

Faye vs WebsocketRails


tldr; В итоге был выбран faye.

Изначальный выбор был предоставлен двумя вариантами. Гугление ответ на вопрос что лучше не дало, поэтому все плюсы и минусы — это то, что удалось накопать из доков и статей.

Плюсов у websocket-rails я не нашел, зато минусы были очевидные: последнее обновление было довольно давно, на каждое подключение открывался отдельный поток, что потенциально могло заддосить наш и так не очень мощный сервер. Faye в свою очередь работает через event machine и полностью асинхронный, плюс постоянно обновляется.

Категория: Программирование » Веб-разработка

 

Реализуем безопасный VPN-протокол

Автор: admin от 23-04-2015, 16:21, посмотрело: 603

Снова тема VPN, конфиденциальной передачи данных, безопасности и криптографии. Сейчас, в эру пост-Сноудена, стало модно клепать безопасные, уважающие приватность, невзламываемые, защищённые от спецслужб и цензуры программы. Однако эта статья – не очередной маркетинговый пиар, а, скорее, демонстрация того, как применяются криптографические примитивы и на что стоит обращать внимание при разработке подобного программного обеспечения.

Реализуем безопасный VPN-протокол


Результатом этой работы предполагается создание работающего клиент-сервера, пригодного для review разработчиками (то есть немного кода на высокоуровневом языке), достаточно производительного, чтобы использоваться в промышленных условиях, имеющего высокий порог безопасности: GoVPN.

Категория: Информационная безопасность, Криптография

 

Опять суровый Open source для госкомпаний и большого бизнеса с примерами решений. Я в него верю, если что

Автор: admin от 23-04-2015, 16:11, посмотрело: 629

Опять суровый Open source для госкомпаний и большого бизнеса с примерами решений. Я в него верю, если что
Я (справа) пытаюсь объяснять крупному бизнесу, что такое опенсорс, а мой коллега слева придает опенсорсным решениям душевности.

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

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

Начну не с этого. Начну с того, что напомню, что ещё 17 декабря 2010 г в распоряжении №2299-р В. Путин подписал план перехода федеральных органов власти и бюджетных учреждений на использование свободного ПО. Сейчас расскажу, как мы по плану уже живём в мире русского опенсорса.

Категория: Админитстрирование » Системное администрирование

 

Взламываем D-Link DIR-890L

Автор: admin от 23-04-2015, 15:56, посмотрело: 585

Последние 6 месяцев я был жутко занят и не следил за новыми хренями от D-Link. Чтобы немного поразвлечься, я зашел на их сайт, и меня поприветствовал этот кошмар:
Взламываем D-Link DIR-890L
Самый безумный роутер D-Link DIR-890L за $300

Пожалуй, самым «безумным» в роутере является то, что он работает под управлением все той же забагованной прошивки, которую D-Link ставит в свои роутеры вот уже несколько лет…and the hits just keep on coming.

Хорошо, давайте как обычно — возьмем последнюю версию прошивки, пройдемся по ней binwalk и посмотрим, что мы получили:
DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
0             0x0             DLOB firmware header, boot partition: "dev=/dev/mtdblock/7"
116           0x74            LZMA compressed data, properties: 0x5D, dictionary size: 33554432 bytes, uncompressed size: 4905376 bytes
1835124       0x1C0074        PackImg section delimiter tag, little endian size: 6345472 bytes; big endian size: 13852672 bytes
1835156       0x1C0094        Squashfs filesystem, little endian, version 4.0, compress

Похоже на обычную прошивку с Linux, а если вы заглядывали в любую прошивку D-Link за последние несколько лет, вы без труда вспомните структуру директорий:
$ ls squashfs-root
bin  dev  etc  home  htdocs  include  lib  mnt  mydlink  proc  sbin  sys  tmp  usr  var  www

Все, что относится к HTTP, UPnP и HNAP, расположено в директории htdocs. Самый интересный файл здесь — htdocs/cgibin — ELF-бинарник для ARM, который выполняется вебсервером для, хм, почти всего: все симлинки к CGI, UPnP и HNAP-ссылкам ведут на этот файл

Категория: Информационная безопасность, Сетевые технологии

 
Назад Вперед