Nowe posty

Autor Wątek: Aplikacja do zarządzania serwerem gentoo - pomoc w wyborze pracy inż.  (Przeczytany 3811 razy)

Offline Kamil

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 449
    • Zobacz profil
Witam.
Jako że zbliża się termin wyboru pracy dyplomowej na mojej uczelni, mam pomysł by stworzyć aplikacje webową służącą do konfiguracji serwera z systemem gentoo.

Jako że sam posiadam taki serwer, wpadłem na taki pomysł. Tylko nie wiem dokładnie jak z realizacją takiego pomysłu.

Założenia to:
- użycie django i pythona jako frontendu
- biblioteka django + skrypty w bashu : pośrednik w komunikacji i przekazywaniu informacji pomiędzy serwerem a użytkownikiem końcowym
- zarzadzanie m.in. usługami, plikami konfiguracyjnymi, aktualizacjami, pakietami...

Czy próbowaliście w jakiś podobny sposób komunikować się z systemem? Macie jakieś może pomysły, podpowiedzi?

Wszystkie uwagi bardzo mi pomogą :)

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 2508
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
    • Linuxpedia.PL
Aplikacja do zarządzania serwerem gentoo - pomoc w wyborze pracy inż.
« Odpowiedź #1 dnia: 2013-12-05, 22:09:21 »
1. Czyli taki wlasny Webmin,  tyle że w Pythonie? Weź pod uwagę to, ile osób i od jak dawna siedzi nad Webminem...
2. Po co te skrypty w bashu? Jest coś, co możesz zrobić z basha a nie da się bezpośrednio z Pythona?
3. Serdecznie życzę powodzenia z parsowaniem i generacją miliona formatów plików konfiguracyjnych -  z czego niektóre formaty to naprawdę "moving target",  m. in.  samba,  squid i tym podobne polka eksperymentalne. Musisz szczególnie zadbać o to,  aby nie było regresji pliku, tj cykl odczyt - zapis - odczyt - zapis nie gubił informacji; szczególnie jeżeli pierwszy odczyt następuje na pliku zrobionym "z ręki" przez użytkownika,  czyli w formacie lekko innym niż generowany przez aplikację.
4. Możesz ewentualnie olać istniejące pliki i konfigurację trzymać we własnej bazie. Frontend edytuje tą bazę a "zastosuj"  generuje nowe pliki z bazy,  nie patrząc w ogóle na istniejące. Upraszcza to projekt, bo nie trzeba pałować się z parserem,  wystarczy zrobić generator.
Paweł Kraszewski
~Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Offline Kamil

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 449
    • Zobacz profil
Aplikacja do zarządzania serwerem gentoo - pomoc w wyborze pracy inż.
« Odpowiedź #2 dnia: 2013-12-08, 11:22:37 »
1. To że ludzie siedzą na Webminie wiem, jednak w tym nie widzę problemu. Ma to być aplikacja przede wszystkim dla mnie, a jeżeli ktoś by chciał z tego korzystać to tylko będę się cieszył :)
2. Skrypty w bashu to taka ewentualność, jeszcze nie wiem dokładnie do czego bym ich użył, ale myślę że w praniu wyjdzie że i tak pewnie jakieś proste będą potrzebne.
3,4. Dokładnie tak jak mówisz - myślę o trzymaniu plików w bazie, ich aktualnych oraz dawnych wersji.

Wiem że to dużo pracy, jednak myślę że powoli uda mi się to zrealizować.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 2508
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
    • Linuxpedia.PL
Aplikacja do zarządzania serwerem gentoo - pomoc w wyborze pracy inż.
« Odpowiedź #3 dnia: 2013-12-08, 17:57:14 »
1.  Nie wiem,  czy się zrozumieliśmy -  nie chodziło mi o NA Webminie tylko NAD webminem. O deweloperów nie o użytkowników.
2. To było pytanie retoryczne. Bash nie ma żadnej magii,  której nie da się zrobić w innym języku skryptowym.
3,4. Czy masz narzucony zestaw narzędzi? Tj. czy na przykład masz narzuconego Pythona?
Paweł Kraszewski
~Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Offline Kamil

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 449
    • Zobacz profil
Aplikacja do zarządzania serwerem gentoo - pomoc w wyborze pracy inż.
« Odpowiedź #4 dnia: 2013-12-08, 20:31:20 »
Wiadomo że na początku nie będę robił bardzo skomplikowanego systemu, klonując webmina. A jak dalej potoczą się działania to zobaczymy.
Jeżeli chodzi o narzędzia to nie. Mogę swobodnie korzystać ze wszystkiego.