avatar

Всичко на PostgreSQL

Напоследък, в процеса на търсене на удобни и скалируеми решения, се убеждавам все повече в качествата на PostgreSQL като високопроизводителна и функционална свободна система за бази данни с отворен код. Горещо я препоръчвам на всеки, който има възможност да я използва, т.е. ако софтуерът, който смята да използва, не изисква точно определена СУБД.

Преди няколко дни се заех с постепенната миграция на някои неща от MySQL, започвайки от мейлсистемата. Пощенската система на този сървър, на който се хоства и http://bglog.net е комплексно решение, включващо:

  • Postfix - основен MTA
  • Courier-authdaemon/pop/imap
  • Amavis - интерфейс към антивирусен скенер (какъвто ви хареса)
  • PostgreSQL - съхранява данните на виртуалните потребители и домейни
  • Hastymail - уебмейл система, ползваща imap (много лека и бърза, оправя се безпроблемно с десетки хиляди писма, съхранявани в imap сървъра)
  • Postfixadmin - удобен уебинтерфейс за управление на цялата работа. Отскоро поддържа PostgreSQL (първоначално работеше само с MySQL), но за безпроблемната работа се наложи малко пачване, което даде като резултат един tarball, който съм публикувал тук.

Postfixadmin позволява да контролирате потребителите, които се явяват администратори на домейни, да добавяте, премахвате и редактирате домейни и пощенски кутии; за всеки домейн можете да зададете максимум брой кутии, псевдоними, подразбираща се квота и т.н., а обикновените потребители могат да си сменят паролите и да пренасочват писмата си където пожелаят... Възможностите са много, а интерфейсът е удобен:



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

За да бъдат нещата съвсем пълни обаче, трябваше да пристъпим и към реорганизация на DNS сървъра. Досега използвах ISC BIND, за който е излишно да говоря. Всеки е чувал за него и за неговите огромни възможности. При мен обаче се чувства чувствителна нужда от едно по-просто решение, което същевременно да предлага и удобни възможности за всеки потребител - събственик на домейн - да управлява зоната си през уебинтерфейс, без да е нужно да е специалист по DNS.

Спрях се на PowerDNS: богато документиран, официално поддържан в Debian, бързо се интегрира с PostgreSQL, което гарантира бързина и надеждност, идва с приятен и лесен за работа уебинтерфейс - PowerAdmin.




Освен, че се администрира лесно, PowerDNS разполага със собствен уебсървър за следене на статуса на DNS заявките, натоварването на DNS сървъра и изобщо детайлна информация за всичко, свързано с обслужването на DNS системата. Нещо като mod_status на Apache.




С тези промени може да се каже, че най-критичната част от системата разчита изцяло на PostgreSQL, с което се надявам, че освен удобна за управление системата става достатъчно добре скалируема и подсигурена. Да не забравяме и бързината и намаленото натоварване, разбира се.

Отново подчертавам, че всичко това е осъществено изцяло и само със свободен софтуер!