LINUX.ORG.RU

Вышла Ajenti alpha - набор инструментов для управления Linux-серверами

 ,


0

4

Спустя полгода после начала разработки своего детища Евгением Панковым, благодаря активной помощи сообщества, увидела свет первая alpha-версия Ajenti.

Ajenti - это удивительный по красоте и простоте набор инструментов, который поможет новичкам освоить настройку домашнего Linux-сервера. Проект предоставляет платформу для быстрого написания плагинов для управления разнообразным серверным ПО, практически полноценный UI-тулкит (на AJAX) для управления через веб-интерфейс.

Поддерживаемые дистрибутивы:

  • OpenSuSE
  • Ubuntu
  • Arch
  • Debian

Уже есть плагины для настройки:

  • Сети
  • UPS и мониторинга питания
  • Пакетных менеджеров (APT, Zypper, Pacman)
  • Пользователей (passwd)
  • Cron
  • fstab
  • Сервисов (Upstart, rc.d, init.d)
  • Файрволла (iptables)
  • Apache 2 (модули, хосты)
  • Samba
  • Squid (+SARG)
  • Shell
  • Просмотрщик логов
  • Простейший SQL-клиент (MySQL, pgSQL)

За последние полгода была полностью переписана внутренняя архитектура — теперь поддерживается «плагинизация» любого уровня вложенности, а вместо медленного Genshi используется быстрый XSLT (среднее ускорение рендеринга составило x5). Автор Ajenti будет рад видеть в своей команде новых разработчиков. Связаться с автором можно по электронке: john.pankov@gmail.com

Демо-версия

Исходники

Скриншоты

>>> Подробности



Проверено: maxcom ()
Последнее исправление: mono (всего исправлений: 3)
Ответ на: комментарий от Trojan_Winlock

Бздя будет, я гарантирую это (с) Сейчас ковыряю несколько систем в виртуалках (FreeBSD, CentOS). Как разберусь настолько, чтобы все не запарывать с первого раза, начну добавлять поддержку. Нашелся человек, который будет поддерживать Gentoo. Документация по написанию плагинов есть в Wiki, документация по использованию в процессе (пример - уже есть контекстные подсказки по неочевидным параметрам в iptables). По обработке проблем - пишу плагин, который будет анализировать падения демонов по логам и предлагать решения, а также хранить историю правки конфигов (пока что просто бекап при изменении, но думаю, можно прикрутить сюда git)

EugenyPankov
()
Ответ на: комментарий от jcd

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

Voviandr
()

Может, я какой админ неправильный, но на своём веку я ещё не встречал серверов с тривиальной настройкой, где нет каких-нибудь черезодноместопроходных извратов. Почему-то при наличии и без того массы конфигураторов всегда приходится редактировать моим любимым joe всё подряд.
А ещё вопрос такой к автору: как вы считаете, может ли быть основанный на человекоредактируемых файлах конфигуратор быть устойчивым к тому, что конфиги могут редактироваться ещё и вручную. Я на своём опыте пришёл к неутешительному в общем-то выводу, сделав заключение о том, что конфиги должны генерироваться из закрытого на редактирование руками формата, поскольку проверять их синтаксическую корректность, а также всякие глюки типа дублирующихся строк - занятие неблагодарное, сродни коыврянию в Г., а уж проверять осмысленность присвоенных значений - и вовсе из области, граничащей с ИИ. Кстати, то, что асболютно корректный конфигуратор должен обладать ИИ - вообще немудрено, ведь редактируемые конфиги и расчитаны на то, что их будет человек править, а не машина.

DRVTiny ★★★★★
()
Ответ на: комментарий от DRVTiny

> А ещё вопрос такой к автору

Обрати внимсание на весь топик ... я так понял на неудобные автору вопросы он не отвечает ;)

mx__ ★★★★★
()
Ответ на: комментарий от Trashman

> отправьте на конкурс чтоле.

Действительно, было бы неплохо. Правда, автор не с России.

pevzi ★★★★★
()

Помогите пожалуйста запустить, вот что в браузере выдаёт.

   Backend not available
Ajenti requires a backend plugin for your distribution.
Please install needed packages.

You need a plugin that provides INetworkConfig interface support for debian platform.

bsd_user
()
Ответ на: комментарий от DRVTiny

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

EugenyPankov
()
Ответ на: комментарий от Trojan_Winlock

Ты не поверишь, но многие считают работу админом унизительной, а вот настроить в три клика свой юутненький домашний сервачок хочется многим ;)

Для детишек есть менее упоротый deban. Для мажорных пользователей - windows и фрилансеры.

mikki
()

$ uname -a
Linux ubuntu 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:04:26 UTC 2009 i686 GNU/Linux
$ sudo apt-get install python-openssl python-lxml python-mysqldb python-psycopg2
$ sudo echo «deb http://eugeny.github.com/ajenti/repo/ /» >> /etc/apt/sources.list
$ sudo apt-get update
$ sudo apt-get --yes install ajenti
$ /etc/init.d/ajenti start
* Starting Ajenti [ OK ]
$ pidof ajenti; echo $?
1
$ tail /var/log/ajenti.err.log
File «/usr/share/ajenti/ajenti/daemon.py», line 68, in delpid
os.remove(self.pidfile)
OSError: [Errno 2] No such file or directory: '/var/run/ajenti.pid'
Error in sys.exitfunc:
Traceback (most recent call last):
File «/usr/lib/python2.6/atexit.py», line 24, in _run_exitfuncs
func(*targs, **kargs)
File «/usr/share/ajenti/ajenti/daemon.py», line 68, in delpid
os.remove(self.pidfile)
OSError: [Errno 2] No such file or directory: '/var/run/ajenti.pid'

Frakhtan-teh ★★
()

хорошая, годная штука

isako ★★★
()
Ответ на: комментарий от EugenyPankov

Установил все, теперь при старте пишет в лог:

Traceback (most recent call last):
File «serve.py», line 80, in <module>
ajentid.start()
File «/usr/share/ajenti/ajenti/daemon.py», line 88, in start
self.daemonize()
File «/usr/share/ajenti/ajenti/daemon.py», line 65, in daemonize
file(self.pidfile,'w+').write(«%s\n» % pid)
IOError: [Errno 13] Permission denied: '/var/run/ajenti.pid'
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
File «/usr/lib/python2.6/atexit.py», line 24, in _run_exitfuncs
func(*targs, **kargs)
File «/usr/share/ajenti/ajenti/daemon.py», line 68, in delpid
os.remove(self.pidfile)
OSError: [Errno 2] No such file or directory: '/var/run/ajenti.pid'
Error in sys.exitfunc:
Traceback (most recent call last):
File «/usr/lib/python2.6/atexit.py», line 24, in _run_exitfuncs
func(*targs, **kargs)
File «/usr/share/ajenti/ajenti/daemon.py», line 68, in delpid
os.remove(self.pidfile)
OSError: [Errno 2] No such file or directory: '/var/run/ajenti.pid'

Frakhtan-teh ★★
()
Ответ на: комментарий от EugenyPankov

Точно, совсем забыл.
Запустил от рута, запустилось.

В ответ на первый запрос отдает 500 ошибку:

$ HEAD 10.100.115.209:8000
500 Server closed connection without sending any data back
Content-Type: text/plain
Client-Date: Sun, 26 Sep 2010 13:07:37 GMT
Client-Warning: Internal response

Последующие не принимает, до перезапуска:

$ HEAD 10.100.115.209:8000
500 Can't connect to 10.100.115.209:8000 (connect: В соединении отказано)
Content-Type: text/plain
Client-Date: Sun, 26 Sep 2010 13:08:22 GMT
Client-Warning: Internal response

В журнале ошибок пусто.

Запустил с strace:

$ sudo strace -o ajenti -ff /usr/bin/ajenti --start

$ grep SIGSEGV ajenti.*
ajenti.3332:rt_sigaction(SIGSEGV, NULL, {SIG_DFL, [], 0}, 8) = 0
ajenti.3351:rt_sigaction(SIGSEGV, NULL, {SIG_DFL, [], 0}, 8) = 0
ajenti.3353:select(4, [3], [], [], {0, 500000}
+++ killed by SIGSEGV +++
ajenti.3356:--- SIGSEGV (Segmentation fault) @ 0 (0) ---

Могу куда-нибудь отправить.

Frakhtan-teh ★★
()
Ответ на: комментарий от trapezoid

>webmin умирает в жутких муках

чего ему умирать ? стабильный проверенный временем и суровыми админами продукт.

Voviandr
()
Ответ на: комментарий от EugenyPankov

P.S. что за конкурс?

«Лучший свободный проект России».

Лучше Марку отпиши - толку больше будет :) В серверной Убунте будет смотреться прекрасно :)

Trojan_Winlock
() автор топика
Ответ на: комментарий от Trojan_Winlock

Как раз на серверную убунту, свежеразвернутую на впску, пытаюсь поставить (:

Frakhtan-teh ★★
()

Сотый раз - в первый класс?

Еще одна попытка заменить хорошего админа с vim на олуха с «интуитивно-понятной» гуёвиной...

Может быть это кому-нибудь и нужно. :)

de_simakov
()
# echo "deb http://eugeny.github.com/ajenti/repo/ /" >> /etc/apt/sources.list
# apt-get update
# apt-get install ajenti
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
E: Не удалось найти пакет ajenti

А почему у меня ничего не находит?

athost ★★★★★
()
Ответ на: Сотый раз - в первый класс? от de_simakov

vim и хорошего знания конфигов эта штука не сможет заменить в сложных случаях, но зато может быть хорошим аргументом в пользу СПО - типа посмотрите, как у нас всё чётко и красиво настраивается. и кстати, где взять столько матёрых админов, владеющих vim-ом и знающих конфиги назубок ? тут и олухов днём с огнём не сыщешь...

Voviandr
()

Крутая вещь, мне очень нравится.

JN
()
Ответ на: Сотый раз - в первый класс? от de_simakov

Еще одна попытка заменить хорошего админа с vim на олуха с «интуитивно-понятной» гуёвиной...

Дорогие школьники, вы только что ознакомились с ярким примером батхёрта очередного серенького одмина. Учитесь хорошо, становитесь не одминами, а именно программистами. Тогда вас не заменит ни одна гуевина и вы сможете троллить одминчегов, поплевывая на них сверху, многократно повышая свое ЧСВ. Удачи в учебе.

Trojan_Winlock
() автор топика

Интересная вещь.
Непонятно несколько моментов:
1. Почему не работает реп?
2. Как подрубить плагины?
3. Как нормально установить? Или просто прописать конфиг и заупскать через python serve.py ?

dgeliko ★★
()
Ответ на: комментарий от tailgunner

Вы поняли с точностью до наоборот v_v

sv75 ★★★★★
()
Ответ на: комментарий от Trojan_Winlock

> Учитесь хорошо, становитесь не одминами, а именно программистами. Тогда вас не заменит ни одна гуевина и вы сможете троллить одминчегов, поплевывая на них сверху, многократно повышая свое ЧСВ. Удачи в учебе.

Да ладно, средний прогер --- лишь плагин к VS с элементами ИИ и с большой вероятностью сглючить.

sv75 ★★★★★
()
Ответ на: комментарий от sv75

Да ладно, средний прогер

В этом-то и соль.

Среднего админа давно уже может заменить любая подобная утилита.

Среднего прогера так же. Есть же уже для Андроида утилита, которая способна мелочь простыми кликами мышки.

Так вот, и такие гуевины и такие софтинки/заменители программистов очень нужны. Они помогут опустить с небес на землю быдло-админов и быдло-прогеров.

Trojan_Winlock
() автор топика
Ответ на: комментарий от Trojan_Winlock

> Среднего админа давно уже может заменить любая подобная утилита.

*Заменить*? Сильно сомневаюсь.

sv75 ★★★★★
()
Ответ на: комментарий от sv75

*Заменить*? Сильно сомневаюсь.

Ах, ну да. Нужно ведь еще провод сетки по квартире-офису кинуть и обжать. Ну да, что б руки не марать об эту черновую работу таки нужен средний одмин.

Trojan_Winlock
() автор топика
Ответ на: комментарий от ArtemZ

>вы бы ещё генту на сервера ставили

Добро пожаловать в calculate, Очень даже вкусненько.

вот тут смотреть http://www.calculate-linux.ru/

Админам сорри за флуд

anonymous
()
Ответ на: комментарий от EugenyPankov

Backend not available Ajenti requires a backend plugin for your distribution. Please install needed packages.

You need a plugin that provides INetworkConfig interface support for Ubuntu platform.

Все плагины установил. Что ему еще надо?

athost ★★★★★
()
Ответ на: комментарий от BSD

Неплохо, жаль FreeBSD не поддерживает :-/

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

Trojan_Winlock
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.