Как стать автором
Обновить
Selectel
IT-инфраструктура для бизнеса
Сначала показывать

Экскурсия по Селектелу: ДЦ «Цветочная»

Время на прочтение4 мин
Количество просмотров24K
Продолжаем цикл экскурсий по Селектелу. На этот раз — дата-центр «Цветочная». Там же находятся наши офисные помещения (то есть мы).

Начнём с видео экскурсии (обратите внимание на кнопку HD сверху):

(альтернативная ссылка)

Серверная


Серверная на Цветочной имеет очень высокий потолок. Благодаря этому там находится довольно значительный объём прохладного воздуха. Наш НЗ, так сказать.

На этой фотографии видна высота потолков. На фотографии — бесперебойники, точнее, их силовая часть. Аккумуляторы находятся в другом помещении. Три белых ящика посередине — электрические коммутационные узлы, которые позволяют вывести из эксплуатации любой из источника питания (оба ввода городской электрической сети, упсы, дизели) без остановки работы. Я откровенно плаваю в такой электротехнике, но во время профилактики я в них (издалека) заглядывал — внутри огромной толщины медные шины — в палец толщиной, шириной в ладонь.



На фотографии ниже можно видеть как именно выглядит холодный коридор — в относительно тесном Технодоме не было возможности увидеть его целиком, на Цветочной — можно. Каждая такая «комнатка» распределяет холодный воздух для двух рядов стоек для серверов. Эта фотография сделана через «смотровое окошко для клиентов» не во время основной фотосессии, так что зал находится в совершенно непарадном виде: половина освещения выключена (экономим, угу), виден след от ежедневной влажной уборки.
Читать дальше →
Всего голосов 49: ↑42 и ↓7+35
Комментарии56

Экскурсия по Селектелу: ДЦ «Технодом»

Время на прочтение4 мин
Количество просмотров28K
«Идея запостить фотографии из наших ДЦ родилась давно. Но то времени нет, то у фотографов-любителей, вроде меня, руки не из того места растут, то ещё что-то. Наконец, собрались вместе свободное время и прямые руки.

В этом цикле статей мы покажем как выглядят наши ДЦ.

Итак, старейший дата-центр Селектела (с которого компания, собственно, и началась), под кодовым названием »Технодом".

Видео


Небольшая видео-экскурсия:


Серверная


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

(картинки кликабельны)


Традиционно, основным форматом, использующимся для размещения серверов, являются 19" (19 дюймов), их высота измеряется в юнитах (вершках, хе-хе). Сервера плотно монтируются один над другим в специальные шкафы с вертикальными направляющими. Шкафы иногда ещё называют «стойкой». В «Технодоме» используются шкафы 42 U размером (внутренние направляющие имеют высоту 42 юнита, плюс чуть-чуть снизу, плюс чуть-чуть сверху, плюс чуть-чуть с боков на стенки и место для кабелей — то есть фактический размер шкафа больше, чем 1.8 метра в высоту и 48 сантиметров в длину). Реальная полезная нагрузка шкафа несколько меньше, так как туда ещё монтируются розетки (тоже 19"). Размеры самого шкафа: высота 2030, ширина 600 мм. Глубина шкафов разная — на выбор 620, 820 и 1020мм.

(под катом — ещё фотографии серверной, оборудования и людей)
Читать дальше →
Всего голосов 68: ↑65 и ↓3+62
Комментарии84

pyxs — библиотека к xenstore на питоне

Время на прочтение1 мин
Количество просмотров2.6K
Вступление: Ключевым элементом всех тулстеков для Xen является xenstore — сервис, позволяющий иметь «общую БД» для всех доменов на хосте. Давным-давно существует библиотека libxs для доступа к ней из приложений на Си. К ней есть биндинг на питоне (xen.lowlevel.xs), однако, у него есть очень серьёзные проблемы с многопоточной подпиской на события. Нас это не устраивало и для работы нашего сервиса memory on demand была написана библиотека pyxs, которая позволяет иметь очень комфортную работу с xenstore, многопоточные подписки и т.д.

По здравому размышлению было принято решение отдать её людям под LGPL-лицензией.

Примеры использования

Простое чтение и запись:
from pyxs import Client

xs=Client():
xs["/foobar/a"] = "baz"
print xs["/foobar/a"]


Второй важный класс — это Monitor для организации подписки на множественные изменения, ради которого всё писалось:

from pyxs import Monitor

xs=Monitor():
xs.watch("/local/domain/1")
xs.watch("/local/domain/2")
while true:
    print xs.wait()

Нас разбудит каждый раз, когда что-то поменяется в первом ИЛИ втором пути.

Сссылка на гитхабе: github.com/selectel/pyxs
Документация: pyxs.readthedocs.org
Всего голосов 30: ↑25 и ↓5+20
Комментарии0

Новый интерфейс панели управления

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

Комментарии проектировщика

Проектирование интерфейсов — это процесс постоянного улучшения. И недавно мы запустили первую версию нового интерфейса.
Изменение коснулось всего — и внешнего вида, и логики, и внутренних сервисов. Поэтому сразу же отмечу — поддержка предыдущих версий не планируется.
Разумеется, с новой панелью придется ознакомиться, опробовать, привыкнуть. Но это стоит того — сейчас сделан первый шаг к полному обновлению сервисов Selectel, а это значит, что панель будет меняться, новые технологии в последствии позволят ускорить её развитие.
Читать дальше →
Всего голосов 39: ↑31 и ↓8+23
Комментарии24

Приостановка облака для новых пользователей

Время на прочтение3 мин
Количество просмотров11K
С первого числа мы закрываем возможность установки новых машин. Новых клиентов мы уже прекратили принимать.

Существующие виртуальные машины существующих клиентов будут обслуживаться далее без изменений. Так же просьба не делать «машины про запас» — мы прекратили приём новых клиентов не от добрых обстоятельств.

Причина — мы перешли границы рассчитанных мощностей, а переписывание архитектуры «на ходу» — ужасная практика. В связи с этим решено взять таймаут и перестать гнаться за отделом рекламы (кстати, по этой причине мы и замолкли на Хабре — надеялись чуть снизить поток приходящих). Однако, люди приходили — и доходило до смешного, в одной из долго и тщательно выписываемых компонент мы закладывались на потолок в приблизительно 10к коннектов. Тестирование/исправление (процесс preproduction) затянулся на месяц… И к моменту, когда мы выкатили эту компоненту, оказалось, что она уже «в притык» (6-9к коннектов в секунду). А ведь писали мы её несколько месяцев!

И стало очевидно, что мы просто не справляемся. Решение о прекращении приёма новых клиентов далось не сильно легко (ну вы понимаете, споры в стиле «а с чего вам зарплату платить?» и т.д.), но здравый технический смысл победил здоровую жадн устремлённость к успеху компании.

Сколько займёт переработка? Планируемый срок — около 2-3 месяцев, сколько реально потребуется — не знаю. Во-первых, потому что придётся серьёзно переделывать архитектуру, централизованные БД окончательно будут удалены; децентрализация всего и вся — задача крайне нетривиальная.
Читать дальше →
Всего голосов 93: ↑79 и ↓14+65
Комментарии36

Видео с LIR training course

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

Мы обещали — мы делаем. Видео с training course, которое проходило в Санкт-Петербурге в конце июля 2011 года.

Условия от NCC: курс предназначен только для LIR, таким образом, если вы не являетесь сотрудником организации, имеющей статус Local Internet Registry, то вы не имеете права просматривать это видео.
Читать дальше →
Всего голосов 34: ↑25 и ↓9+16
Комментарии21

Особенности работы дисков в облаке

Время на прочтение2 мин
Количество просмотров10K
После создания нового диска появляется желание проверить его скорость. Например, линейную.

dd if=/dev/xvdb of=/dev/null bs=1M count=1000         
1048576000 bytes (1.0 GB) copied, 1.29269 s, 811 MB/s  

dd if=/dev/zero of=/dev/xvdb  bs=1k  count=1000
10240000 bytes (10 MB) copied, 24.3481 s, 421 kB/s

Обескураживающие цифры, правда? При этом если повторить эксперимент, то скорость чтения упадёт, а скорость записи вырастет до положенных 60-150Мб/с.

Причина этого — в copy-on-write режиме работы блочных устройств, обслуживаемых blktap в Xen Cloud Platform.


Читать дальше →
Всего голосов 47: ↑45 и ↓2+43
Комментарии35

Как работает наш биллинг

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

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

Архитектура


У нас разделены аккаунтинг и биллинг, или, на бюрократическом языке, система автоматического учёта и система автоматического расчёта.

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

Работает он очень близко к гипервизору. Например, значения процессорного времени и памяти читаются напрямую из гипервизора, а счётчики дисков и трафика — из счётчиков производительности блочных (сетевых) устройств в dom0.

Заметим, что аккаунтиг ничего не знает и про «сегодня», «вчера», «за неделю» и т.д. — он просто считает счётчик. Который растёт вверх неубывающе за всё время жизни машины. Рядом, правда, добавлен ещё один сервис, который собирает данные для графиков, но в процессе списания денег никак не участвует.
Читать дальше →
Всего голосов 63: ↑50 и ↓13+37
Комментарии23

Новости облака

Время на прочтение3 мин
Количество просмотров5.1K
Новости одной строкой:
  • поддержка скроллинга в консоли облачных машин
  • снятие лимитов памяти в шаблонах
  • флаг 'запретить операции' для виртуальных машин

Консоль

Скроллинг


Мы добавили историю вывода на экран. Теперь, «уползший» с экрана текст доступен некоторое время для просмотра. Перемещаться по истории можно кнопками Shft-PgUp, Shift-PgDown. Размер буфера выбран так, чтобы на загрузившейся машине можно было увидеть сообщения до перезагрузки. В дальнейшем появятся ещё дополнения к этой истории. Традиционно, реализация этого функционала — в нашем репозитории на гитхабе. На картинке — история загрузки машины. Виден вывод машины до перезагрузки и первые шаги новой загрузки.


Кстати, раз мы заговорили о консоли, вот несколько интересных возможностей консоли, о которых, возможно, не все знают.

Alt-SysRq

Читать дальше →
Всего голосов 50: ↑48 и ↓2+46
Комментарии22

Изменение тарифов облака

Время на прочтение3 мин
Количество просмотров8.7K
Новость вкратце: С 1 августа мы меняем цены. Значительные изменения: цена исходящего трафика уменьшается с 1 рубля за Гб до 64 копеек за Гб, дисковые операции повышаются с 3 рублей за миллион до 5 рублей за миллион. Остальные цены меняются незначительно, объяснение «зачем» ниже. Кроме того, мы переводим официальные цены с величины «цены за час» на «цену за секунду». Официальные цены приведены в конце статьи, в таблице ниже они даются с дробными копейками и в расчёте «за час» для возможности сравнения со старыми ценами.

Ресурс Старые цены Новые цены
Процессорное время 1 рубль за час ↓ 90 копеек за час
Оперативная память 50 копеек за Гб*ч ↑ 57,6 копейки за час
Дисковые операции 3 рубля за миллион ↑ 5 рублей за миллион
Прочитанные/записанные данные 10 копеек за Гб 10 копеек за Гб
Хранение данных 5 рублей за Тб*ч ↓ 4.5 рубля за Тб*ч
Входящий трафик 20 копеек за Гб ↓ 16 копеек за Гб
Исходящий трафик 1 рубль за Гб ↓ 64 копейки за Гб

Мы изменяем цены с двумя целями: первая: изменение ценовой политики (дисковые операции и интернет трафик), вторая — корректировка цен для более аккуратного учёта и списания. Вообще, их планировалось проводить раздельно, но коммерческий отдел вполне справедливо заметил, что лучше объединить эти изменения, а не отвлекать клиентов лишний раз.

IOPS'ы дороже, трафик дешевле

Не будем скрывать, нагрузка на диски — самая неприятная для облака проблема. Исходя из концепции облака «за ваши деньги — хоть на голове пляшите», мы скорректировали цены так, чтобы получать достаточную компенсацию за неудобную для нас нагрузку.

Снижение цены трафика — шаг навстречу крупным клиентам, для которых расходы на исходящий трафик иногда достигают 50% от общих расходов.
Читать дальше →
Всего голосов 58: ↑45 и ↓13+32
Комментарии84

Библиотека сериализации в JSON для Erlang

Время на прочтение3 мин
Количество просмотров6.7K
Поскольку мы очень активно используем opensource решения в своей деятельности, вполне естественным является и обратный процесс — публикация под свободными лицензиями библиотек и компонент, созданных в нашей компании.

В этот раз мы публикуем библиотеку сериализации в JSON типов данных Erlang, авторства si14 под BSD 2-clause license. Те проекты, для которых написана эта библиотека, ещё не готовы (ждите анонсов к осени), но библиотека уже стала вполне самостоятельной и может применяться в множестве других случаев. Традиционно, рассчитываем на кооперацию в совершенствовании, с интересом услышим о применении в других проектах.

В дебри Erlang'а

В отличие от многих динамических языков, в Erlang'е есть опциональные аннотации типов для функций и record'ов. На текущий момент они используются минимум 3 утилитами: edoc (формирует документацию из исходников; пример получаемой документации можно увидеть, например, здесь), что более важно, dialyzer (анализирует существующую информацию о типах и сообщает об ошибках несоответствия типов, в том числе несоответствия декларируемого и выведенного типов) и PropEr (система автоматической генерации тестов на основании информации о типах и декларативно задаваемых свойств функций). Использование этих деклараций стало правилом хорошего тона, поэтому почти все качественные проекты на Erlang'е имеют их. Нельзя ли использовать информацию о типах где-либо ещё?

JANE

В процессе разработки одного из проектов возникла идея: почему бы не использовать существующую информацию о типах прямо в JS
Читать дальше →
Всего голосов 45: ↑41 и ↓4+37
Комментарии14

Графики в облаке

Время на прочтение4 мин
Количество просмотров11K
Новость одной строкой: клиентам стали доступны графики потребления ресурсов виртуальными машинами в облаке.

Графики для виртуальных машин в облаке Селектел

История создания

Статистика, точнее, её первая версия, была сделана ещё в районе ноября месяца (до момента публичного анонса запуска облака). Это была очень наивная версия, которая честно считала статистику для каждой машины, писала её в БД.

Несколько скриншотов этой статистики даже появлялось у нас в блоге.

Мы уже почти были готовы опубликовать её для клиентов, как, вдруг, обнаружился прискорбный факт: при буквально нескольких сотнях машин 8-ядерного Xeon'а не достаточно для того, чтобы посчитать её всю.

Причина была в наивной математике. Источники статистики для каждой виртуальной машины:
Читать дальше →
Всего голосов 68: ↑65 и ↓3+62
Комментарии40

Эмулятор терминала Pyte

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

Как и было обещано, мы выпускаем под LGPL нашу библиотеку эмуляции эмулятора терминала linux, которую мы используем для показа консолей виртуальных машин в облаке. Называется она, соответственно, pyte (PYthon Terminal Emulator).

По нашим собственным оценкам, покрытие «текстового» функционала console_codes приближается к 100% (от 80 до 90%, как подсказывают пессимисты из числа оппортунистов среди разработчиков).

Не реализованы: коды загрузки шрифтов в знакогенератор VGA-адаптера, управление энергосбережением VESA, звуковая сигнализация (коды управления частотой и длительностью звука), управление палитрой, собственные чарсеты; в общем всё то, что не имеет отношения к тексту.

Зато реализованы все остальные сложные функции, такие, как блокировка регионов экрана для записи, скроллинга, управление режимами переноса строк, правильная обработка атрибутов при различных видов удаления текста и т.д. — всё то, что нужно существующим приложениям, таким как nano, adom (на картинке фрагмент ESC-кодов и получающегося изображения как раз из ADOM'а), vim, emacs, mc, aptitude, dialog, yast2 и т.д. для полноценной отрисовки.

Библиотека написана на питоне и заточена под удобство манипуляций над экраном, абстрагируясь от графического представления изображения, что позволяет её использовать в коде, осуществляющим дальнейшие преобразования (например, передачи экрана в JS или сериализации в БД).

Второй важной особенностью библиотеки является поддержка диффов (разниц) между предыдущим и текущим состоянием экрана. Это необходимо для экономной передачи изображения через каналы ограниченной скорости (читай, интернет) и отрисовки на устройствах ограниченной производительности (читай, javascript).

История создания

Читать дальше →
Всего голосов 72: ↑72 и ↓0+72
Комментарии35

RIPE в гостях у Селектела проводит обучающие курсы в Санкт-Петербурге

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

RIPE (европейский интернет-регистратор, организация, распределяющая IP-адреса) проводит два обучающих курса в Санкт-Петербурге.

RIPE NCC LIR Training Course

Проходит: 21.07.2011
Место проведения: Санкт-Петербург, в отеле Holiday Inn (адрес см ниже)
Темы:
  • The Internet Registry (IR) System
  • Exercise: RIPE and the RIPE NCC
  • The Policy Development Process
  • Exercise: First Day at Work as an LIR Contact
  • The RIPE Database
  • IPv4 Resources
  • Exercise: Making Assignments
  • Other Resources: AS Numbers & IPv6
  • RIPE NCC Services
  • Exercise: Slogan

RIPE NCC IPv6 Training Course

Проходит: 22.07.2011
Место проведения: Санкт-Петербург, в отеле Holiday Inn (там же, адрес ниже)
Темы:
  • The Registry System
  • IPv4?
  • Exercise: Business Case
  • IPv6 Basics
  • Exercise: Addressing Plan
  • Getting it
  • Deploying
  • Exercise: Deployment Challenges

Расписание и место

Читать дальше →
Всего голосов 32: ↑25 и ↓7+18
Комментарии20

Тонкая настройка memory on demand в облаке

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

Новость одной строкой: теперь клиенты могут изменять параметры MOD из панели управления.

Давным-давно в нашем mod-server'е была реализована возможность управления параметрами выделения памяти. Это было реализовано на уровне самого сервера и параметров базы данных.

… Но этого не было в веб-интерфейсе. Самые настойчивые клиенты просили изменить настройки — и мы их меняли вручную. Глупо, да?

Наконец-таки, мы исправили ситуацию — настройки MOD-сервера стали доступны клиентам. Большая их часть применяется «на ходу» и не требует перезагрузки или приостановки обслуживания.

Принцип работы Memory-on-Demand

Читать дальше →
Всего голосов 44: ↑39 и ↓5+34
Комментарии34

Полноценный IP-KVM для всех дедикейтед серверов

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

Новость одним абзацем: теперь у всех без исключения наших dedicated серверов (включая Xeon'ы и Atom'ы) есть возможность пользоваться IP-KVM'ом, встроенным в IPMI. Это:
  • возможность смотреть консоль (включая графические режимы, биос и т.д.)
  • Нажимать всякие хитрые кнопки (Ctrl-Alt-Del, Alt-SysRq, и т.д.) с виртуальной клавиатуры
  • возможность подключать ISO как будто это USB-CD, подключенный к серверу
  • Аналогично — образы дискет (этим ещё кто-то пользуется?)
  • Включать/выключать питание сервера вне зависимости от мнения об этом операционной системы.

История

Читать дальше →
Всего голосов 53: ↑46 и ↓7+39
Комментарии36

Как изучать исходные тексты

Время на прочтение5 мин
Количество просмотров14K
Бувально в тот момент, когда я (не очень успешно) вычитывал ошибки и опечатки в предыдущем посте, bobry предложил обсудить, как сделать в консоли историю (которая, Shift-PgUp).

Очевидным методом сделать что-то связанное с терминалами — посмотреть, как сделано у других и сделать так же. В процессе изучения этого мы обратили внимание на интересную особенность: некоторые программы, показывая содержимое, восстанавливают экран до запуска приложения (mc, vim, nano, less и т.д.). Кроме того, при их запуске исчезает (в xterm/gnome-terminal) скролл-бар.

Для изучения «каким образом» было решено остановиться на MC, как самом старинном (и не зависящем от ncurses) приложении.

Далее идёт роматичная история о том, как mc делает toggle_panel() с большим количеством цитат из исходного кода.

Заодно, читатель сможет посмотреть, как выглядит процесс «посмотри в исходниках».
Читать дальше →
Всего голосов 52: ↑49 и ↓3+46
Комментарии47

Сага о том, как мы писали консоль

Время на прочтение8 мин
Количество просмотров21K
            Если посадить тысячу мартышек за тысячу пишущих машинок, то за тысячу лет они напишут эмулятор терминала. — вместо эпиграфа.

Извините фальстарт, это не я, это андроидный смартбук.

Когда мы только запускали облако, первой проблемой было «как нам получить консоль». Штатный механизм XCP поразумевает, что консоль рисуется с помощью VNCTerm, а желающий её увидеть должен сначала пойти в XenAPI, получить там session-id консоли, пойти на порт консоли, передать session-id, получить RFB, завёрнутый в HTTP, развернуть HTTP, вынуть RFB (он же VNC), отдать её локальному рендереру VNC (VNC-клиенту или java-апплету с тем же функционалом). При этом консоль закрывалась (сессия рвалась) при каждой перезагрузке виртуальной машины. Она рвалась даже при миграции виртуальной машины. Другими словами, это была технология, которая подразумевала «глянул одним глазком, починил ssh/iptables и забыл». Неудобно, медленно, сложно. Выкатывать такое в продакт совсем не хотелось.

И я залез в дебри serial-howto, console-howto и ещё несколько ужасных документов, рассказывающих о том, как правильно нужно конфигуриовать прерывания на ISA плате у мультикарт, а так же специфику настройки linux-2.2 для работы с оными. Параллельно изучалось устройство консоли в зене (внимательный читатель мог даже заметить, когда именно я более-менее разобрался в этом вопросе — я писал на хабре краткий обзор того, что происходит с консолью).

После этого пришла мысль: нужно писать своё, потому что готового чужого хорошего нет.

Сначала мы хотели взять хотя бы готовые компоненты и сделать из них своё. Я помню до сих пор ту замечательную схему, в которой мы планировали сохранять в БД вывод anyterm'а, делать двойное туннелирование последовательного порта с использованием UDP… Выглядело это, мягко скажем, неприглядно.

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

Через некоторое время мы пришли к идее «нам нужен свой эмулятор терминала».
Задача казалась относительно простой, пока мы не прикоснулись к бездне, именуемой «escape-коды и типы терминалов...».

Пишущие машинки


Итак, в начале была пишущая машинка. В какой-то момент возникло желание совместить телеграф с пишущей машинкой. Так возник телетайп
Разумеется, инженерам, создававшим телетайп, не было никакого резона делать все с нуля. Они просто приделали коды к каждой клавише пишущей машинки. После некоторых боёв в стиле MS VS Netscape, был создан стандарт html5 на коды для оных машинок, то бишь телетайпов. Если мне память не изменяет, то это ASCII, где предусмотрены все комбинации клавиш, характерные для американской пишущей машинки. Включая код BELL, который, кстати, должен вовсе не делать BEEP, а делать «дзыньк», ибо у пишущих машинок был именно колокольчик, а не спикер.

Читать дальше →
Всего голосов 133: ↑126 и ↓7+119
Комментарии91

Консоль виртуальных машин

Время на прочтение2 мин
Количество просмотров14K
Для виртуальных машин в облаке Селектел была добавлена консоль. Она доступна в панели управления во вкладке «консоль».
Консоль в облаке Селектел
Вот ключевые отличия от примитивного «вот вам VNCterm, разбирайтесь сами»:
  • текстовая консоль — малый трафик
  • никаких плагинов (flash/java и т.д.) — работает средствами html/ajax.
  • консоль можно смотреть одновременно с нескольких браузеров.
  • консоль переживает перезагрузку и миграцию
  • консоль можно увидеть на выключенной машине (ввод не работает по понятным причинам — но можно увидеть как машина выключалась).
  • Копипейст — выделить мышкой и скопировать, вставка Shift-Ins или Cmd-V для маков.
  • Переживает миграцию виртуальной машины без разрывов и неприятностей.
  • Автоматическая регуляция скорости работы — при интерактивной работе скорость увеличивается, на простаивающей машине — снижается.
  • Практически 100% поддержка linux_console — цвета, скроллинг и т.д. Проверены на работоспособность все основные программы — ncurses-based, mc, vim, emacs, nano, пачка консольных игрушек — adom, nethack, тетрис и т.д. Не поддерживается только экзотика вида «загрузить шрифты», «управление VESA-режимами и т.д.».
  • Поддержка большинства комбинаций клавиш (зависит от браузера) — Ctrl-комбинации, Alt-комбинации, функциональные кнопки и т.д.
  • Полная поддержка unicode (настолько, насколько его поддерживает ваш браузер), как минмум, псевдографика и русский язык работают без каких-либо проблем.

Чего не сделано:
Читать дальше →
Всего голосов 103: ↑98 и ↓5+93
Комментарии98

Enlarge your disk now

Время на прочтение2 мин
Количество просмотров11K
Одна из проблем, которая нас преследует — мы слишком много времени уделяем абстрактным (внутренним) аспектам работы. Прошедшие месяцы мы интенсивно работали — но клиенты практически не видели результатов работы, т.к. переписывались и адаптировались к высоким нагрузкам (в тысячи операций в секунду) внутренние компоненты облака.

Ресайз дисков в облаке СелектелНаконец, дошли руки и до простых вещей — мы реализовали в интерфейсе возможность увеличивать размер дисков (в т.ч. системного).

Реальной работы — два часа в панельке, ещё несколько часов на проверку, что всё работает как положено. Но — не хватало времени и рук. Наконец, нашлось время, сделали.

Как это сделать?

Читать дальше →
Всего голосов 43: ↑36 и ↓7+29
Комментарии31

Информация

Сайт
selectel.ru
Дата регистрации
Дата основания
Численность
501–1 000 человек
Местоположение
Россия
Представитель
Влад Ефименко