Разное

О Code Signing

Хочу сказать, что процедура выдачи Verisign Code Signing сертификатов, если пользоваться вот прямо их средствами, какая-то ужасающая:

  • Приватный ключ (сгенерированный Verisign) приезжает в формате .p12
  • Сертификат - в формате PEM
  • Signtool хочет все вместе в формате .PFX (он же, похоже, .p12)
При этом - никаких инструкций "как с этой фигней взлететь" (для сертификатов сайтов - хоть есть "как это все поставить в Apache"), только строгое предупреждение в E-mail, по смыслу такое:
  • Вам обязательно нужны два intermediate-сертификата, возьмите их отсюда.
  • А на странице где эти сертификаты - две textarea с сертификатами, дескать Select All и сохраните в текстовый файл.

Кроме того, в E-mail инструкции строго написано, что скачивать сертификат можно строго на том компьютере, который делал запрос. Что делать, если за прошедшее время машинка дала дуба (а нам рисовали сертификат 2 недели, не верьте что в Штатах все быстро) - неизвестно.

На этом фоне рождаются душераздирающие инструкции вроде всосите все в MSIE и им экспортируйте, но они годятся только если private key уже импортирован в систему (например, сделан MS-овской тулзой, которая сразу инсталлирует сделанный ключ в систему), скачаный с Verisign приватный ключ - не импортируется.

Под катом - инструкция, как все починить с помощью OpenSSL (записки для себя):

О процессорных сокетах

1. Верно ли я понимаю, что всякие Xeon E55xx, X55xx, L55xx с сокетом LGA1366 в теории могут работать в любой материнке с сокетом 1366, а на практике нужна поддержка от BIOS и надо смотреть на сайте вендора, прежде чем... Вроде это обсуждали, но это была боковая ветка, а хочется конкретно понять.

Вот, к примеру, есть у меня Asus Rampage III Gene. С одной стороны, у нее в списке CPU на сайте - только i7. С другой стороны в похожую Rampage II Gene Xeon и даже оверклочат (поддержки Xeon для Rampage II Gene тоже официально нет). По их следам идут другие умники и у них xeon в R3G тоже работает. Как узнать о проблемах (если таковые бывают) до покупки? Ну то есть с 1366 проблемы нет, у меня материнка, про которую я ЭТО обдумываю - Xeon-ы поддерживает (согласно сайту производителя), но хочется общий принцип понять.

2. Верно ли я понимаю, что аналогичный случай произойдет с LGA2011 и всякие Xeon E5-26xx и E5-16xx тоже (со временем) будут работать в материнках, сделанных под i7 с сокетом 2011? И поддержка зависит от BIOS, никаких дополнительных телодвижений (спец-питания, еще чего) в аппаратуре не надо.

Какое слово сказал паровозик?

Жена со старшей дочерью нашли в детской журналке прекрасное:
Под катом - полная картинка

Reality Show на 150 килокамер

Имею сказать, что шоу на 150 тысяч камер - удалось.

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

Я восхищен.

О боевой революционной социологии

Я не люблю писать о политике, 10G ethernet или цифровое фото - гораздо интереснее.

Но тут, волею судеб, довелось 10 минут поанализировать данные правильного, настоящего опроса населения (попросили, я и посмотрел), не пропадать же добру.

В интернете (и, в частности, соцсетях) последние дни активно пиарится общественный опрос общественного же мнения (в соцсетях преимущественно ссылаются на сайт эха, сошлюсь и я). Согласно этим данным, рейтинг Путина сильно преувеличен, "Шансы Путина на победу в первом туре равны нулю", и так далее.

По счастью, это тот же самый опрос, "Гражданина Социолога", для которого доступны первичные данные по ряду городов. Список городов совпадает, количество респондентов совпадает, все совпадает.

Давайте посмотрим на них повнимательнее.

О последствиях наводнений

А напомните мне, сколько стоили в дефолт-сити самые дешевые 2- и 3-Tb диски до наводнения. WD Green и подобные.

Мне почему-то вспоминается, что 2500 и 4000 примерно, но ведь могу и путать.

Update: про 2Tb уже накидали данных, спасибо. 3Tb я помню что коэффициент было в районе 1.7-1.8 примерно т.е. экономически было еще невыгодно, но было "вот-вот".

10G дома: Infiniband + FreeBSD

Я тут интересовался про Infiniband и FreeBSD, теперь могу и сам рассказать :)

Datagram mode

Для начала нужна FreeBSD 9. У меня - какая-то, cvsup делал где-то в январе или около того.

Далее все тривиально:

/etc/make.conf:

WITH_OFED=yes
Конфиг ядра (в GENERIC это место не включено) /sys/amd64/conf/OFED:
include GENERIC
options OFED # Infiniband protocol stack and support
options SDP # Sockets Direct Protocol for infiniband
device ipoib # IP over IB devices
device mlx4ib # ConnectX Infiniband support
device mlxen # ConnectX Ethernet support
device mthca # Infinihost cards
У меня карты mthca, остальные два драйвера в моем случае вероятно не нужны.

Далее все просто:

cd /usr/src
make buildworld && make installworld # поставит IB-шный утиль, всякие ibstat и opensm
make buildkernel KERNCONF=OFED && make installkernel KERNCONF=OFED

Что-то из этого добра (то ли userland IB-шный, то ли ядро) не собирается clang-ом, поэтому про CC=clang стоит забыть.

Если нужен Subnet manager (на другом конце линка/свитче его нет), то opensm_enable=YES в rc.conf (а если нету /etc/rc.d/opensm, то накатить его mergemaster-ом).

Бутимся....

10G дома: новые бенчмарки на Myricom

Опробованная вчера новая бенчмарка (с подсчетом md5 по куче файлов) сделана и для Myricom. Вкратце (сервер, время 1-й попытки, время 2-й попытки)

  • Win7: 2:10,2:09
  • Linux, Samba: 5:10,5:01
  • Linux, iSCSI: 1:37, 1:00

Бенчмарка "копирование Qt" оказалась очень чувствительной к количеству свободной памяти на машине. Что-то оно там префетчит, если памяти много. Как следствие, сравнение копирований между моими записями - неверное занятие. Внутри каждого отдельного поста - консистентно.

Мораль:

  • На крупных потоках один хрен, что IB, что Myricom (ну для IB я намеривал скорости побольше, но это неважно).
  • С Win7-"сервером" Myricom несколько быстрее IB. Не знаю почему.
  • С Linux-сервером - практически один хрен, что по Samba (медленно), что по iSCSI (быстро)
При этом IB-карты дешевле и двухпортовые т.е. на сервер и две WS нужны три карты, а не 4. Ну и SRP, MPI и прочие Infiniband-развлечения. Минусы тоже есть: не поддерживаются маками (Myricom - поддерживается), требуются пляски с IB-стеком, OpenSM опять же.

Завтра расскажу, как Infiniband c FreeBSD сочетается.

Q: генеалогия соляриса

А тут вот разными способами подталкивают к (опен)солярису, дескать и ZFS там и SRP (и, небось, прямо встроенный в ZFS iscsi-target) и вообще цветет мульен цветов.

Только я стал туда смотреть и полностью запутался. Вопрос дня: OpenSolaris 11 (Oracle) или OpenIndiana? Возможность что-то перекомпилировать несущественна сама по себе.

10G дома: Infiniband, Linux, Samba, iSCSI, SRP

Для начала картинка. Это SRP (SCSI RDMA Protocol), поднятый на Linux, клиент - Windows 7.

Если сравнивать с картинкой для iSCSI поверх Myricom (вторая картинка в этом посте), то выросла скорость на мелких блоках и нет падения на блоках больше 256к.

Но по порядку.

ZFS performance Q: hw RAID или RAIDZ(2)

А вот такой практический вопрос.

Есть, к примеру, 6-8 не очень быстрых дисков (7200 rpm, что-нибудь типа Barracuda ES или как они теперь правильно называются, Seagate Constellation?). Двухтерабайтников, скажем (потому и не 10k/15k).

К тому же примеру, есть какой-то 8-портовый контроллер. Вот прямо на руках есть Adaptec 5805. Покупать что-то еще новомодное и быстрое (столь хвалимые LSI 9280, к примеру) не хочется, жаба не велит.

Процессор на тазике будет достаточно быстрый, что-нть в духе i7-920, памяти тоже не пожалею (12G скорее всего).

Хочется на этом месте поднять ZFS (потому что очень удобно на практике), предположительно на FreeBSD, но солярку (в каком-то лице) тоже можно рассмотреть.

Собственно, вопрос:

А как это правильно конфигурировать то:

  • JBOD или 6(8) single-disk arrays и ZFS поверх?
  • Или RAID6 на контроллере и ZFS "на одном томе"?
Вопрос касается именно производительности, причем типичных паттернов я вижу два:
  • I like to move it, move it большими файлами (кино, бэкапы, да мало ли в хозяйстве больших файлов). Т.е. линейное чтение-запись во всей красе.
  • Доступ по iscsi, причем тома будут прямо вот средствами ZFS нарезаны. А на этих томах - всякое разное.

Интернеты - противоречивы. У одних бойцов RAIDZ несколько медленнее, у других - наоборот. Как правило, из тестов непонятно, куда RAIDZ упирался, мог ведь и банально в память/процессор.

Помимо RAIDZ2/RAID6 рассматриваю еще и вариант с mirror, но он для 8 дисков какой-то обидный.

10G дома: Infiniband, Windows-SMB

Продолжаю потихоньку упражняться с 10G, вынул Myricom, вставил IB. Все под виндой, до Linux+IB руки только на выходных дойдут.

Для начала - завлекательная картинка:

На самом деле, я и слегка за 1Gb/sec видел, чего не должно бы быть (реальных гигабит данных 8 ровно), спишем на точность подсчета виндой.

Под катом: как оно было получено и что было получено еще.

10G дома: Myricom, Windows-SMB, iSCSI

Продолжаю развлечения с 10G между двумя рабочими станциями.

Windows - Windows

Запускаю на обеих машинах Win7, на одной делаю Ramdrive на 8G, расшариваю его прямо windows-средствами, запускаю Atto disk benchmark, получаю вот такую картинку:

Каких-то настроек на серверной стороне я не делал, я их и не знаю.

Картинки с Самбы на той же машине (для сравнения) запрятаны в этом посте.

Как видим, на мелких блоках стало побыстрее в 1.5-2 раза (2 раза - для блока 8к), на больших блоках - незначительно медленнее.

Копирование крупных файлов идет с примерно той же скоростью, в районе 500-600MB/sec, то есть быстрее, чем можно надеяться имея в массиве разумное для дома количество HDD под этой сетью. Про копирование мелких файлов будет ниже и отдельно.

10G дома: Myricom + Samba

Продолжаем развлекаться с 10G. Сначала картинка, чтобы было веселее. Это копирование с локального диска на "NAS"

Под катом - как она получена (и почему NAS в кавычках)

10G дома: Myricom 10G

Помимо Infiniband-карточек, я, как и собирался, запасся картами Myrinet 10G. Портов меньше, дороже (получилось $80 за карту), но тоже интересно.

После пары дней мучений (о которых ниже) удалось получить такое вот (tcp, 1 поток):

------------------------------------------------------------
Client connecting to 10.3.1.2, TCP port 5001
TCP window size:  256 KByte
------------------------------------------------------------
[  3] local 10.3.1.1 port 1383 connected with 10.3.1.2 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  7.77 GBytes  6.68 Gbits/sec
Это Iperf, между Win7 и Linux. Медленнее чем IB в connected mode, быстрее чем в обычном режиме. Что неудивительно, ибо в connected mode размер пакета 64k, в обычной - 2k, а тут чем больше - тем лучше.

Плюсы (в сравнении с Mellanox):

  • Есть драйвера для мака (не пробовал). Ну и вообще, все кроме Windows поддерживают сходу, для виндов - просто ставятся драйвера.
  • Аппаратные контрольные суммы для IP, в случае IPoIB все считается, как я подозреваю, софтом. В результате 26Gbit (два двунаправленных потока по IB) грузят i7-920 ровно наполовину. Мне, впрочем, нужно меньше, оттого я не сильно парюсь.

Минусы:

  • Никаких наворотов, вроде Winsock Direct, SRP, SDP, RDMA. Просто Ethernet 10G. Это может быть и плюс, если хочется просто работать (Subnet Manager не нужен, ARP как у людей и т.п.), но IB-шные навороты в локальном масштабе вполне могут быть и полезны.
  • Один порт. Т.е. цена за порт выше раза в 4 (хотя и остается низкой).
  • Карты сильно греются, пришлось искать слот с обдувом.
В бой поставлю, пожалуй, IB, а пару этих оставлю в заначке, может и пригодятся.

10G дома: IB performance

На всплывавший ранее вопрос "а потянет ли PCIe 1.0 8x два порта Infiniband" ответить не могу, ибо кабель на руках пока один. Один порт тянет:

                    RDMA_Read Bidirectional BW Test
Connection type : RC
  local address:  LID 0x200, QPN 0x8042600, PSN 0xd0710000, RKey 0x3100f6 VAddr 0x00000000f60040
  remote address: LID 0x100, QPN 0x8041c00, PSN 0x982e0000, RKey 0x3100b6 VAddr 0x00000001060040
Mtu : 2048
------------------------------------------------------------------
 #bytes #iterations    BW peak[MB/sec]    BW average[MB/sec]  
      2        1000               0.79                  0.75
      4        1000               1.81                  1.51
      8        1000               3.38                  3.00
     16        1000               8.44                  6.02
     32        1000              12.67                 12.02
     64        1000              25.33                 23.41
    128        1000              67.55                 44.28
    256        1000             108.09                 81.34
    512        1000             170.66                164.09
   1024        1000             432.35                323.87
   2048        1000             720.58                660.57
   4096        1000            1127.86               1107.30
   8192        1000            1572.17               1485.81
  16384        1000            1729.38               1712.38
  32768        1000            1804.58               1797.25
  65536        1000            1844.68               1836.56
 131072        1000            1857.06               1856.84
 262144        1000            1867.50               1866.47
 524288        1000            1872.77               1871.86
1048576        1000            1874.88               1874.69
2097152        1000            1876.21               1876.13
4194304        1000            1876.87               1876.80
8388608        1000            1877.20               1877.18
------------------------------------------------------------------

Это двунаправленный BW, один поток туда, другой - обратно, одновременно. Я щетаю, 7.5Gbit/s payload в одну сторону (из теоретических 8.0) - это вполне нормально.

Заодно понятна польза Jumbo Frames на Ether, особливо на 10G.

Под катом Latency:

10G дома: первые успехи

Как я и предполагал в предыдущем посте на тему, дело было в бобине кривом кабеле (а чего я хотел за $16 без доставки...).

Не сдержался, купил 3-метровый D-Link в московской рознице, руки то чешутся.

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

ttcp PID=0x1e20 TID=0xd60
ttcp -t: buflen=65000, nbuf=10000, align=16384/0, port=5001  tcp  -> 10.1.1.2
ttcp -t: 650000000 bytes in 718.00 real MilliSeconds = 863.35 MByte/sec +++
ttcp -t: 10000 I/O calls, msec/call = 0.07, calls/sec = 13927.58

Это Connected Mode, MTU 65520, размер пакета - 65000 для ровного счета. Windows - Windows.

А помянутая выше тонкость простая: если нет свитча, то Subnet Manager надо запускать до того, как воткнута карта. Без этого оно о скорости договаривается не всякий раз правильно, бывают и те 1x, которые меня мучали в прошлый раз.

И, сюрприз, IPoIB прекрасно работает при 4x, но не работает на 1x. Хотя Infiniband-пакеты успешно ходят на обеих скоростях.

Плотно займусь рассмотрением скоростей (самба, iscsi, SRP) - не раньше выходных, пока RawDigger не дает отвлечься. C FreeBSD, вероятно, тоже будут приключения.

О техническом писательстве

Пишу доку к варезу, первый раз за много лет - для обычного пользователя, сферического в вакууме (все что писал в последние годы - было доками по библиотекам т.е. для программистов).

Нашел в самой задаче крупное логическое противоречие:

  1. С одной стороны: загружать разработчика такой работой - противоречит самой идее разделения труда. Архитекторы должны архитектить, кодеры - кодить, тестеры - тестить, технические писатели - писать мануалы, а специалисты по пуговицам - пришивать пуговицы.
  2. С другой стороны: технический писатель имеет дело с черным ящиком. Он не знает что там внутри, если в программе вдруг что-то нелогично, то не его (писательское) дело против этого протестовать. Ему что дали - про то он и споет.

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

    А вот пиша (писуя?) документацию - до всех потаенных углов долезешь и все нелогичности внезапно увидишь. У меня список мелких багов образовался за время писания - больший, чем за предыдущие месяц-два.

У меня нет никакого конструктива, понятно что варез большого размера в одно рыло не разработать, а значит разделение труда - необходимо(е зло). Но все вместе наводит на меня тоску: найм техписателя для написания доки автоматически означает ухудшение качества продукта (в хорошем случае - с одновременным улучшением качества документации).

Мастера художественного передергивания

Очень трудно удержаться и вообще ничего не писать о политике. Вот опять не получилось.

Вот есть свежий опрос Левады. Всех, понятно, интересуют предстоящие выборы, там эта тема раскрыта двумя способами:

  • Открытый список, хоть Дарта Вейдера вписывай. По этому методу у Путина 37% поддержки (проголосовал бы за него в ближайшие выходные) от населения, у Зюганова ( 2) - 8%. А 41% населения тем или иным способом затруднился с ответом.
  • Закрытый список, проценты только от определившихся: 63% запутина, 15% зазюганова.
Дальше пресса начинает об этом писать. Ну, понятно, что 8 против 37, что 15 против 63 - разные весовые категории, и там и сям 4.5 раза. Поэтому мастера журналистики для Пу берут цифирку из первой таблички (поменьше), а для Зю - из второй (побольше).

Отличились:

Молодцы, че. В борьбе за правое дело и передернуть не грех. А если вдруг Пу наберет over 50 (или 60) в первом же туре (что, согласно результатам вышеупомянутого опроса, вполне вероятно) - массовка будет заранее знать что все подтасовано, ибо соцопросы давали 37%

Пацан сказал - пацан сделал

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

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

Имею сказать, что это совершенно новый класс ощущений, проехал раза в три больше, чем обычно.

Pages

Subscribe to Разное