четверг, 9 июля 2009 г.

Админы инструкции не читают

Вот ведь правду говорят - админы не читают инструкций. Даже своих же.

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

А потом мы жалуемся, что пользователи не умеют читать инструкции :-D

Заодно обновил немного интсрукцию.

понедельник, 6 июля 2009 г.

Colorer 06.07.09

Новая версия Colorer

Теперь Colorer при отключении убирает за собой . Т.е. такой ситуации не будет (не должно быть)
Открываем файл в редакторе. Вызываем Colorer (Colorer-take5). Отключаем Colorer ( Configure -> снимаем галку с colorer enabled). Текущая страница остаётся раскрашенной. Переходим к следующей - одноцветная, возвращаемся к первой странице - всё равно цветная. В меню Colorer есть только пункт Configure. Не работает в обоих ветках Фара.
colorer06.07.09

Far жив или мои новые приключения

Какое то время назад обнаружил для себя, что Far еще жив. Мало того что жив, дак и еще и интенсивно развивается.
Сделаны были два основных шага  - это переход на юникод и open source. Новая ветка сменила нумерацию - Far 2. Эти изменения повлекли некоторые проблемы - старые плагины, которые работали на версии 1.7, перестали работать на новой версии. А их разработчики "пропали без вести". У некоторых благо остались исходники.

И вот тут то загорелся я идеей - а почему бы не помочь far-сообществу в разработке плагинов? Появляется большая возможность вспомнить и поднатаскать себя в знании с++, на коем в основном и ведется разработка.

Мужик сказал - мужик сделал. :-) Жертвой был выбран плагин Colorer Игоря Русских. Плагин для раскраски синтаксиса в редакторе. Судя по форуму,  плагин широко используемый. Но к сожалению, автор уже не уделяет плагину должного внимания. А проблем в  плагине хватало.  Хотя бы взять не возможность работы в новых версиях Far.

Потихоньку получилось исправить пару багов, утечек памяти. Самое главное, это удалось связаться с автором и передать ему эти исправления. Теперь эти исправления добавлены в основной репозитарий.

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

четверг, 12 марта 2009 г.

VDS - настройка продолжается

Ковырялся давеча на серваке, настраивал бэкап и экспорт svn в базу Redmine. Да, есть такая особеность в Redmine - он сам не лезет в репозиторий за данными о изменениях. Для этого надо периодически запускать скрипт
ruby script/runner "Repository.fetch_changesets" -e production

Заметил такую неприятную вещь - сайт не особо посещаемый, точнее кроме меня на нем никто не бывает. Поэтому процесс passenger`а постоянно выгружается из памяти за не надобностью. Но вот если после этого зайти на сатй, то он будет грузится порядка 20 -30 секунд, а потом снова будет нормально. Ситуация так себе. Была идея прикрутить wget для периодического запроса главной страницы. Но в начале решил почитать мануал по passender`у. И таки нашел.  Параметр  PassengerPoolIdleTime  - время простоя до выгрузки из памяти. по умолчанию 300 секунд. сделал 3000. Стало гораздо лучше. Особенно изменилось использование памяти. До исправления текущее потребление памяти всей системой было примерно 115 мб, после 74 мб. Занятно.

Надо копать дальше, может что то еще можно оптимизировать. Память на вес золота.

Redmine + Apache + Passenger + Subversion на примере Gentoo


Как ранее писал, решил я настроить себе subversion сервер с багтрекером Redmine. Для этого обзавёлся виртуальным выделенным сервером на 1GB.ru . В качестве операционной системы там установлен Gentoo 2008. Для запуска сайта на Ruby on Rails существует много возможных комбинаций серверов. Например, я пробовал Apache + proxy_balancer + Mongrel , просто Mongrel. Так же всевозможные замены Apache на альтернативные веб-сервера. Но посоветовавшись с админом форума http://rubyclub.com.ua/, пришел к тому, что буду использовать Apache + Passenger. Кстати, в сети не нашел какого-либо мануала про Redmine и эту связку, с чем связаны многие часы раздумий. Ну и для полного счастья, точнее для более быстрой работы Passenger устанавливал Ruby Enterprise Edition. Я не рассматриваю установку и настройку базы данных, т.к. у меня она стоит на мощностях хостинга, а не на моем vds. Цель поста - систематизировать свои знания, оставить себе шпаргалку, ну и показать некоторые нетривиальные места. Практически все собиралось из исходников, так что привязки  конкретно к Gentoo практически нет. Ну и как некоторый показатель - после изучения всех граблей, настройка сервера заняла часа 3-4, и то в связи с ограничением на ресурсы сервера.

четверг, 26 февраля 2009 г.

Раздумья 2

Прошла почти неделя как начались раздумья. Думал правдо я не долго, решил - а почему бы и нет. Запас карман тянет не сильно 8-) .
Выбор пал на своего основного хостера 1Gb.ru. Поменял тариф на VDS и поехал пробовать настроить что мне надо. С воскресенья просто проподаю в консоли, голова никакая. В браузере уже порядка 20-30 открытых вкладок, что для меня при обычных 3-5, огромное количество. Сегодня закончил этап тестирования возможностей моих и сервера, осталось определиться  что конкретно я хочу сделать и реализовать это.
В ходе тестирования выяснилось несколько интересных вещей.

  1. Оказывается в стандартный тариф vds на 1gb.ru входит виртуальный хостинг. Т.е. я могу оставить свой блог на старом месте, не пытаясь настроить его на vds. Это просто значительный плюс. И так скудные ресурсы не будут тратиться на блог.

  2. SVN-клиенты, например TortoiseSVN, могут не работать через proxy-сервер. Пытался подключиться к svn-серверу как по svn:// так и по http:// (apache + web_dav) через HTTP-прокси и SOCKS5 - результат никакой. Максимум чего добился, это подключиться к серверу http:// по http-прокси, но обозревать зхранилище не давало. В тоже время через браузер в хранилище заходило и показывало все коректно. Победить удалось использованием FreeCap и SOCKS5. Заработало на ура по всем протоколам.

  3. Различия в дистрибутивах linux бывают очень большими. Настраивая программу по инструкции для одного дистрибутива, адаптируя команды под свои условия нет никакой гарантии что все заработает. Например собрал subversion с динамической линковкой библиотек. Апач не стал запускаться, т.к. не может найти эти библиотеки. После долгих поисков нашлось решение - нужно проверить есть ли папка с этими библиотеками в файле /etc/ld.so.conf  и запустить команду /sbin/ldconfig. Это для gentoo, для freebsd возможно поможет команда rehash. Позже опишу шаги настройки сервера с сылками на мануалы.


Эпопея получилась захватывающая. Больше всего убивало качество связи дома. Казалось бы, что может быть менее требовательно к связи как консоль ssh? А в итоге дома пбезлимитный тариф на 512 кбит, полностью свободный канал (запущеный джабер за раздражитель не принимается), а работа в консоли тормозит. Если еще запустить миднайт командер - порой бывает тяжко. Другое дело на работе.  Вроде 2 мбита безлим, около полусотни человек в сети (если не больше), все работает через проксю, да еще вроде по этим же 2 мбитам телефонная связь идет - ssh работает на ура. Толи из-за того что дома я вечером ей пользуюсь, а в это время кучу народу сидит в инете, толи просто провайдер не может настроить... но так жить нельзя.

на этой печальной мысли закончился рабочий день )

пятница, 20 февраля 2009 г.

Раздумья о SVN, баг-трекере и виртуальном выделенном сервере

Давно мне покоя не дает идея сделать svn репозиторий для своих проектов в интернете. Правда проектов то не особо , но надеясь на лучшее светлое будущее очень хочется -). Сделать в офисе - так не удобно, а вдруг дома захочу поработать; дома - не подходит; таскать на ноуте - опасно, блин надо научит себя делать бэкапы )). А в интернете как раз нормально получается. А если еще прикрутить баг-трекер, то счастье будет полное.
Т.к. планируется хранить приватный, не open-source код, то бесплатные svn-репозитории не подходят. Да и за последние несколько лет очень много бесплатных перешли на платную основу.  Плюсом, прочитал пост по сравнению баг-трекеров, и понял , что душа просит Redmine - практично, красиво, удобно. Только вот одно плохо - работает он на Ruby. В итоге получается, что нужен хостинг, на котором был бы Ruby, Subversion, в идеале еще и php (для переезда туда блога ), либо несколько отдельных хостингов с каждой фишкой. Но я не ребенок миллионера. Вообще я давно уже не ребёнок, но денег стока все равно нет.
Как часто у меня бывает, стоит подумать о чем то, так сразу натыкаюсь на много только что вышедших статей на эту тему. Появился на хабре пост на  тему создания своего svn сервера на виртуальном выделенном сервере. BarsMonster показал как это делается на хостинге firstvds.ru . Прикинув, что в результате svn-сервер ест не так много ресурсов, то можно поробовать поставить Ruby - а вдруг потянет? Не долго думая купил себе серверок на месяц поиграться.
Небольшого опыта работы с nix системами хватило чтобы установить на FreeBSD svn, mysql, Mongrel ( веб-сервер для Ruby). Правда не без "секса", мануалы в интернете старые, была несовместимость в версия софта. Но в итоге встало все. Правда до запуска  Redmine дело не дошло, т.к. уже на работающей в холостую системе , с запущенными процессами, съелось очень много ресурсов. А брал я самый дешевый тариф -). Mongrel съедал много памяти, да и mysql прожорлив до ресурсов. А если еще попытаться воткнуть туда apache для блога, система точно не выдержит. Глянув на более дорогие тарифы, стал сомневаться - а выдержит ли все это многообразие система за приемлемые деньги?
Тут решил глянуть на тарифы своего основного хостинга 1gb.ru . Хоть самый дешевый тариф у них 380 р в месяц,  у них оказалась классная фишка - часть сервисов, такие как база данных, почта, dns-сервер можно вынести на внешние сервера хостинга. Т.е. они не будут забирать ресурсы твоего выделенного виртуального сервера. Правда при условии что они не будут сильно нагружать проц хостинга. Но это уже что то. Скинув mysql с машины выигрывается не мало ресурсов. Опять не долго думая, взял тестовый сервер ( мало думаю блин ).  Тут уже не фря, а генту в качестве операционки. Уфф, везде свои настройки. Тут мне немного не понравилось, что нету выбора - голая система или с уже установленными сервисами. На голой FreeBsd было приятнее работать чем на Gentoo  с установленными программами - они уже были частично настроены и я тупо не мог найти нужное мне. Но в итоге поднял Mongrel, запустил Redmine. После этого я убидился - хочу Redmine и точка. Погоняв систему стало понятно - ресурсов хватит и на блог.  Единственное  что это надо все правильно настроить.

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