Как стать автором
Обновить
28
0
Ксения Лисовская @sHaggY_caT

DevOPS/SRE/BackEnd developer/QA

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

Оптимизация Linux для desktop и игр

Время на прочтение8 мин
Количество просмотров173K
В этой статье я хочу поделиться почти 10-летним опытом использования Linux на домашнем компьютере. За это время я провел много экспериментов над ядром, испробовал различные конфигурации для разных применений и теперь хочу все это систематизировать в длинный пост с рекомендациями как выжать из linux максимум и добиться отличной производительности, без необходимости покупать мощное железо.

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

Хоть я и пообещал, что после прочтения этой статьи, можно будет играть в Metro 2033 на калькуляторе (шутка, такого не будет), все же она начнется с рекомендации купить кое-что из железа, если у вас этого еще нет.
Читать дальше →
Всего голосов 132: ↑99 и ↓33+66
Комментарии296

28 ошибок стартапера в глазах инвестора. Опыт бизнес-ангела

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



Управляющий директор венчурного фонда Vantage Point Capital Partners Ричард Хэррок в своей жизни повидал немало элеватор-спитчей и, решив поделиться опытом, составил для Forbes список основных ошибок и поступков, которых стартапер должен избежать во время презентации своего продукта, если хочет обрести благосклонность бизнес-ангела или привлечь венчурные инвестиции.
Читать дальше →
Всего голосов 59: ↑43 и ↓16+27
Комментарии19

Proxmox API. Введение

Время на прочтение5 мин
Количество просмотров24K
Всем привет!
Сегодня я бы хотел немного рассказать об использовании API небезызвестной системы виртуализации — Proxmox.

Предыстория…
С проксмоксом я столкнулся несколько лет назад, когда мне в руки попала неплохая машина, расположенная в одном из дата центров пресловутого Хетзнера. На тот момент у нас встал вопрос о поднятии виртуализации под свои нужды. Мы рассматривали несколько вариантов, а именно: VMWare, OpenStack и конечно же Proxmox. Не буду говорить, что он лучше 2-ух других кандидатов, просто на тот момент он вполне удовлетворял нашим потребностям. Через некоторое время, появилась необходимость создать своего рода панель управления для сторонних пользователей, которые могли бы просто отслеживать статус своей виртуальной машины, запускать/останавливать ВМ, делать ребут, а так же управлять несколькими настройками. Конечно же, проксмокс позволяет добавлять пользователей, а так же группы пользователей и назначать им свои права. Но нам такой вариант не подходил. Не знаю как сейчас, но на тот момент нормальной документации API Proxmox на русском языке не было. Меня, конечно же, это не остановило и я вполне обошелся англоязычной версией, в которой кстати все очень хорошо и наглядно описано. Однако, всегда есть люди, которые не очень ладят с английским. Так вот, эта статья для Вас.
Сразу оговорюсь, что все VM (виртуальные машины) у нас были на базе KVM. Следовательно и API которое мы рассмотрим в этой статье будет для машин на базе KVM с использованием PhP.

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

Basis: B1

Время на прочтение5 мин
Количество просмотров19K
Привет, Хабр!

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

Исправить ситуацию я решил с помощью классического устройства, впервые продемонстрированного на CES 2012. Два года прошло, но оно не потеряло актуальности — а сам тренд стал более популярным. Это Basis B1.

image

k1b0rg
Столько железок! И все ради того, что бы оторвать задницу от стула.

HomoLuden
Интересно, сколько человеко-часов потрачено в сидячем положении, чтобы мы смогли заставить себя из такого же положения выйти на время?

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

Activité: фитнес-трекер, который не похож на все остальные трекеры

Время на прочтение2 мин
Количество просмотров37K
The Withings Activité aims to be both a functional activity tracker and a fashionable acce...
Фотография часов попала сюда по ошибке? Ах да, это и есть фитнес-трекер, первое впечатление обманчиво.

Подавляющая часть гаджетов из мира носимой электроники выглядят весьма технологично и стильно. Это — гаджеты с софт-тач покрытием, из металла и пластика, которые выглядят… ну, как гаджеты. Можно даже говорить о стиле «hi-tech», который очень многим нравится.

Многим, но не всем. Те же умные часы Pebble всем хороши, но человек, у которого есть любимые механические часы, не всегда откажется от своих часов в пользу такого устройства. Что делать, если хочется приобрести умный гаджет, например, фитнес-трекер, но не нравится то, как он выглядит? Теперь выход есть, и этим выходом можно назвать Activité, механические часы фитнес-трекер стильный гибрид механических часов и фитнес-трекера, созданный компанией Withings.

Activité — первое устройство, созданное компанией, с уклоном в мир моды, весьма технологичной моды.

Читать дальше →
Всего голосов 52: ↑47 и ↓5+42
Комментарии56

LifeTrak: мы думали, что у Pebble нет конкурентов

Время на прочтение4 мин
Количество просмотров21K
Осенью 2014 года в продажу поступит четвертый по счету LifeTrak с индексом R450 (R415). Компания успешно открыла для себя возможности циркуля, и создала первый круглый гаджет в своей продуктовой линейке.

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

Нам, как официальному дистрибьютору LifeTrak в РФ, удалось в числе первых получить новинку и ее протестировать. Что нам понравилось, а что нет в новых часах от LifeTrak — читаем под катом.


Осторожно, трафик, много фотографий.
Читать дальше →
Всего голосов 24: ↑19 и ↓5+14
Комментарии34

FiDELYS: умные часы, фитнес-трекер и система безопасности

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


Умных часов стало еще больше: на днях появилась информация о FiDELYS, интересном устройстве, которое отличаются от аналогов наличием некоторых, действительно уникальных, функций.

Эти часики, насколько можно понять из описания, предоставленного разработчиками, можно использовать в качестве системы безопасности/аутентификации, благодаря встроенной технологии Iris Verification. Плюс ко всему, FiDELYS можно будет заряжать при помощи беспроводной зарядки.

Читать дальше →
Всего голосов 37: ↑30 и ↓7+23
Комментарии12

Почему вам следует загрузить свой разум в суперкомпьютер?

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


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

Отправиться к звёздам в виде «программного обеспечения» корабля? Стать подлинным Искусственным Интеллектом и творить виртуальные миры во всю силу воображения? Получить тело робота и наслаждаться жизнью неуязвимой машины? Всё возможно, даже если предел ваших мечтаний — небольшая «прокачка» мозга с целью повышения работоспособности. Осталось дождаться технологической сингулярности и заранее решить несколько интересных проблем.
Читать дальше →
Всего голосов 138: ↑108 и ↓30+78
Комментарии417

Эффективная многопоточность в Python

Время на прочтение7 мин
Количество просмотров76K
Хочу поделиться простым рецептом, как можно эффективно выполнять большое число http-запросов и других задач ввода-вывода из обычного Питона. Самое правильное, что можно было бы сделать — использовать асинхронные фреймворки вроде Торнадо или gevent. Но иногда этот вариант не подходит, потому что встроить event loop в уже существующий проект проблематично.

В моем случае уже существовало Django-приложение, из которого примерно раз в месяц нужно было выгрузить немного очень мелких файлов на AWS s3. Шло время, количество файлов стало приближаться к 50 тысячам, и выгружать их по очереди стало утомительным. Как известно, s3 не поддерживает множественное обновление за один PUT-запрос, а установленная опытным путем максимальная скорость запросов с сервера ec2 в том же датацентре не превышает 17 в секунду (что очень не мало, кстати). Таким образом, время обновления для 50 тысяч файлов стало приближаться к одному часу.

Питонисты с детства знают, что от использования потоков (тредов операционной системы) нет никакого толка из-за глобального лока интерпретатора. Но немногие догадываются, что как и любой лок, этот время от времени освобождается. В частности, это происходит при операциях ввода-вывода, в том числе и сетевых. А значит, потоки можно использовать для распараллеливания http-запросов — пока один поток ожидает ответа, другой спокойно обрабатывает результат предыдущего или готовит следующий.

Получается, всего-то нужен пул потоков, который будет выполнять запросы. К счастью, такой пул уже написан. Начиная с версии 3.2 для унификации всей асинхронной работы в Питоне появилась библиотека concurrent.futures. Для второй версии Питона есть бекпорт под именем futures. Код до безобразия прост:

from concurrent.futures import ThreadPoolExecutor

with ThreadPoolExecutor(concurrency) as executor:
    for _ in executor.map(upload, queryset):
        pass

Здесь concurrency — число рабочих потоков, upload — функция, выполняющую саму задачу, queryset — итератор объектов, которые по одному будут передаваться в задачу. Уже этот код при concurrency в 150 смог пропихнуть на сервера Амазона ≈450 запросов в секунду.
Читать дальше →
Всего голосов 31: ↑27 и ↓4+23
Комментарии12

Развертывание сервера на Windows Server 2012 / Dell PowerEdge R420 с использованием puppet

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

Задача


Необходимо развернуть сервер со следующими требованиями:

  • Массив дисков RAID-10
  • Full Performance in BIOS
  • Windows Server 2012 с всеми обновлениями и патчами
  • Это будущий сервер приложений со службами для которых необходим .net 4.5
  • Мониторинг доступности сервера, а также CPU, Памяти и свободного места на диске
  • Необходимо подключить сервер к системе выкатки релизов Octopus Deploy


Сложности


Основное требование здесь — все должно быть максимально автоматизировано, участие человека минимизировано до 1 минута «в начале» и 1 минута «в конце». Целью такой автоматизации является потенциальная необходимость «поднять» в дальнейшем несколько новых серверов достаточно быстро. Решение должно быть не сложным для восприятия младшими админами и разработчиками, в чьи обязанности развертывание серверов не входит.
Читать дальше →
Всего голосов 18: ↑7 и ↓11-4
Комментарии7

Автоконфигурация с помощью Puppet и AWS Cloud Formation

Время на прочтение9 мин
Количество просмотров8.9K
imageВот и настал тот день, когда пришлось отложить в сторону кукбуки, рецепты, нож шеф-повара и немного позаниматься кукловодством.
Для начала постановка задачи довольно тривиальная — организовать для девелоперов возможность быстро и просто разворачивать окружение. Обязательное требование — для автоконфигурации использовать Puppet Enterprise
Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Комментарии10

Puppet + Opsview: автоматический мониторинг на основе шаблонов

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

Задача


Мы используем Opsview для мониторинга и Puppet для управления конфигурациями. В Opsview есть шаблоны (Host Templates), которые позволяют определить определенный список проверок (Service Checks) для определенного типа хостов. Например для хоста с шаблоном IIS будут проверяться всевозможные параметры IIS данного хоста, к примеру количество текущих подключений или например средняя скорость подключения.

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

Сложности


Основная сложность здесь, как обычно, в том что этого никто не сделал этого для меня. Не существует модуля «Мониторинг IIS в один клик» для моей инфраструктуры. Практически сложность заключается в том, как сообщить модулю который управляет конфигурацией Opsview что в другом модуле создали сайт, передать параметры URI которые нужно мониторить, а также имена шаблонов хоста (в данном случае это будет как минимум шаблон IIS). Мои попытки и пробы включали следующее:
Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии0

Chef или как управлять тысячей серверов

Время на прочтение10 мин
Количество просмотров72K
Suck on my chocolate salty balls (c) ChefДавайте каждый попробует ответить на вопрос: как установить apache на сервер? Этот вопрос порождает ещё десяток: какая ОС стоит на сервере, какую версию ставить, где лежат конфиги по-умолчанию и т.д. и т.п.

А теперь давайте попробуем ответить на вопрос: как установить apache на 1000 серверов? Тут, при стандартном подходе, вопросов возникнет ровно в 1000 раз больше. Часть из вас наверняка подумали, что можно написать скрипт на shell/perl/python/ruby, который будет обходить все сервера и устанавливать apache, другая часть подумала о distributed shell'ах (PDsh, dsh, etc), кто-то же подумал монтировать rootfs серверов по NFS.

В ряде случаев выше предложенные варианты решений удовлетворительны, но на практике я нигде не видел полностью гомогенных систем (зачастую, внутри компании можно встретить не только разные версии ОС, но и различные дистрибутивы. Также в России/СНГ очень распространена каша из FreeBSD/Linux в ядре проектов), так что вряд ли за адекватное время будет возможно написать скрипт, который установит и настроит apache на зоопарке в 1000 машин под CentOS, Debian, Ubuntu, FreeBSD всевозможных версий.

По моим наблюдениям, очень мало IT подразделений, даже очень крупных компаниий, используют в своей работе SCM (Software Configuration Management). В этом посте я постараюсь описать все преимущества использования Chef в IT инфраструктуре на простых примерах и больших масштабах.

Если же, после столь короткого вступления, вы не прониклись идеей Chef, да и времени читать длинный технический пост у вас нет, то рекомендую вам пролистать до конца и посмотреть как используем Chef мы, Engine Yard, 37signals и подумать, можете ли вы переложить на него часть своей работы.
Читать дальше →
Всего голосов 97: ↑91 и ↓6+85
Комментарии26

Факты в puppet

Время на прочтение2 мин
Количество просмотров11K
Зачастую мы сталкиваемся с проблемой что стандартных фактов которые поставляются вместе с puppet не всегда хватает. Решение этой проблемы может быть достигнуто путем добавления новых фактов. Вы можете добавлять свои факты, написанные на Ruby, на puppet сервер. Затем сервер, используя синхронизацию плагинов, распространит их на все клиенты.
Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Комментарии3

Как и зачем защищать доступ в Интернет на предприятии — часть 1

Время на прочтение10 мин
Количество просмотров57K
Сегодня мы с вами цинично поговорим о старой-доброй задаче – защите сотрудников и их рабочих станций при доступе к Интернет-ресурсам. В статье мы рассмотрим распространённые мифы, современные угрозы и типовые требования организаций по защите веб-трафика.

Если из всей статьи вы запомните всего один факт, то знайте – на сайтах для взрослых шанс подцепить зловреда в десятки раз меньше, чем на обычных Интернет-ресурсах.


Узнать больше
Всего голосов 35: ↑29 и ↓6+23
Комментарии61

Настройка современного Puppet сервера с нуля

Время на прочтение9 мин
Количество просмотров64K
Недавно я переосмыслил процедуру установки нового сервера Puppet с нуля на Ubuntu 12.04, включая все современные свистелки и перделки. В итоге у меня получился этот гайд.

Для начала нам потребуется чистая Ubuntu c работающей сетью и настроенным DNS.

В итоге мы должны получить:
  • Установленый везде Puppet 3-й версии
  • Конфиги в git репозитории с общим доступом
  • Динамические окружения, управляемые r10k
  • Поддержку PuppetDB
  • Поддержку Hiera


Данное руководство довольно длинное, т.к. все настройки делаются вручную, чтобы впоследствии легко можно было пользоваться результатом и подстраивать его под себя. Единственным исключением является PuppetDB, который проще установливать через собственный модуль от Puppet Labs, а не вручную.

Предполагается, что все команды будут выполнены от пользователя root на сервере Puppet, если не указано иное.
Читать дальше →
Всего голосов 33: ↑30 и ↓3+27
Комментарии15

Тонкая настройка Synaptics Touchpad

Время на прочтение3 мин
Количество просмотров118K
Synaptics производит отличные тачпады: они отзывчивы, обладают мультитачем и, что самое главное, их можно долго и нудно легко и просто настраивать под свои ловкие пальчики.

Вот только одна незадачка: вся эта прелесть прекрасно работает в Windows 7, в то время как в Linux как всегда лишь унылые огрызки, и наполовину не использующие все свои возможности.

Бесстрашный Хабраюзер, готов ли ты бороться со вселенской несправедливостью? Тогда добро пожаловать под хабракат, тебя ждет море удовольствия, linux-way и миллионы счастливых кликов на выходе :)
Читать дальше →
Всего голосов 62: ↑46 и ↓16+30
Комментарии51

Как смотреть фильмы в оригинале, если английский слабоват? Решение!

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


Хочу рассказать о своем небольшом проекте для изучающих английский язык.

Как известно, чтобы изучать и не забывать язык, им надо пользоваться. И один из способов практиковать язык — это начать смотреть фильмы в оригинале.
Но как можно начать смотреть фильмы и получать при этом удовольствие, если в каждом диалоге актеров встречаются незнакомые слова?

В интернете полно методик, где советуют, например, смотреть по 3 раза или подготавливаться к просмотру, выписывая и заучивая заранее слова из субтитров. Да, возможно это эффективно, и кому-то подойдут такие способы, но это же так скучно… Я бы не смог смотреть 3 раза подряд один и тот же фильм. Хочется получать удовольствие от просмотра, смотреть сразу и без подготовки и все понимать.

Как же этого добиться?
Всего голосов 196: ↑186 и ↓10+176
Комментарии105

Каков он — рекламный бюджет стартапа?

Время на прочтение11 мин
Количество просмотров21K
на пути к идеальному рекламному бюджету

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

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

Конец февраля ознаменовался началом операции. Действовали строго по сценарию, но скоро стало понятно, что с рекламой вышла накладочка. Правда, не такая, как вы подумали. Расположитесь поудобнее, вас ожидает занимательное чтиво.
Читать дальше →
Всего голосов 48: ↑39 и ↓9+30
Комментарии65

un1c0rn, «Google для уязвимостей»

Время на прочтение2 мин
Количество просмотров25K
На хабре уже появлялись статьи о незащищенных инстансах mongodb и непропатченных openssl с heartbleed.
Проект un1c0rn решил не мелочиться и сделать целый «поисковик уязвимостей», в статье на Motherboard.vice.com un1c0rn даже назвали «Google-ом для уязвимостей».



UPDATE 17.06.14 — un1c0rn стал платным! Теперь для доступа к результатым эксплойтов они просят перевести на их кошелек сумму не менее 0,01 BTC
Warning:
Only part of the leaked data is available.
Send your contribution to… (> 0.01 BTC) to unlock the full leak.


Читать дальше →
Всего голосов 51: ↑50 и ↓1+49
Комментарии29

Информация

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