Projekt Fstorage. www.fstorage.pl. Łukasz Podkalicki Bartosz Kropiewnicki



Podobne dokumenty
Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

Programowanie Komponentowe WebAPI

Budowanie interfejsów do baz danych

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

Serwery LDAP w środowisku produktów w Oracle

Wybrane działy Informatyki Stosowanej

Wszystkie parametry pracy serwera konfigurujemy w poszczególnych zakładkach aplikacji, podzielonych wg zakresu funkcjonalnego.

Projektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Wybrane działy Informatyki Stosowanej

Zbuduj prywatną chmurę backupu w firmie. Xopero Backup. Centralnie zarządzane rozwiązanie do backupu serwerów i stacji roboczych

Stos TCP/IP. Warstwa aplikacji cz.2

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

Architektura i mechanizmy systemu

Sieciowa instalacja Sekafi 3 SQL

OPROGRAMOWANIE KEMAS zbudowane jest na platformie KEMAS NET

Win Admin Replikator Instrukcja Obsługi

Szczegółowy harmonogram rzeczowy realizacji prac systemu B2B

Systemy internetowe. Wykład 5 Architektura WWW. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

System kontroli wersji - wprowadzenie. Rzeszów,2 XII 2010

ZiMSK dr inż. Łukasz Sturgulewski, DHCP

Opis komunikacji na potrzeby integracji z systemem klienta (12 kwiecień, 2007)

Odseparowanie kodu PHP i warstwy prezentacji od dawna było celem

Poniższy diagram prezentuje scenariusz subskrypcji aplikacji do usługi CallEventNotifications.

Strona wizytówka od 400 zł

HP StoreOnce B6200 Przykład wdrożenia

12. Wirtualne sieci prywatne (VPN)

DESlock+ szybki start

Ełk, dn r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, Ełk. Nip ZAPYTANIE OFERTOWE

Rodzaje pamięci masowych by Silas Mariusz

System generacji raportów

systemów intra- i internetowych Platformy softwarowe dla rozwoju Architektura Internetu (2) Plan prezentacji: Architektura Internetu (1)

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

RODO a programy Matsol

Bezpieczeństwo Systemów Komputerowych. Wirtualne Sieci Prywatne (VPN)

Marcin Heliński, Cezary Mazurek, Tomasz Parkoła, Marcin Werla

Konspekt pracy inżynierskiej

Usługi sieciowe systemu Linux

KOŁO NAUKOWE INFORMATYKÓW SYSTEMY KONTROLI WERSJI CZ.1 16 XII 2009 OPRACOWAŁ: PRZEMYSŁAW PARDEL

XML-RPC: Zdalne wykonywanie procedur

Wojciech Dworakowski. Zabezpieczanie aplikacji. Firewalle aplikacyjne - internetowych

Luxriot VMS. Dawid Adamczyk

Xopero Backup Appliance

AE/ZP-27-16/14. Oprogramowanie do wykonywania kopii zapasowych oraz zarządzania maszynami wirtualnymi

DHL CAS ORACLE Wymagania oraz instalacja

Programowanie współbieżne i rozproszone

Serwer SSH. Wprowadzenie do serwera SSH Instalacja i konfiguracja Zarządzanie kluczami

Pojęcie systemu baz danych

Posiada (TAK / NIE. Zrzut ekranu. Opis funkcji

Zbuduj prywatnπ chmurê backupu w? rmie. Xopero Backup. Centralnie zarzπdzane rozwiπzanie do backupu serwerów i stacji roboczych

Firebird Alternatywa dla popularnych darmowych systemów bazodanowych MySQL i Postgres

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania.

I. Informacje ogólne. Jednym z takich systemów jest Mambo.

Narzędzia klienta usługi archiwizacji

7. zainstalowane oprogramowanie zarządzane stacje robocze

Sprawozdanie. (notatki) Sieci komputerowe i bazy danych. Laboratorium nr.3 Temat: Zastosowanie protokołów przesyłania plików

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja

Systemy Rozproszone Technologia ICE

Zarządzanie rolami jakie może pełnić serwer System prosi o wybór roli jaklą ma spełniać serwer.

Specyfikacja SYSTEMU ELEKTRONICZNEGO OBIEGU DOKUMENTÓW zintegrowany z platformą E-PUAP

Ministerstwo Finansów

Sieci VPN SSL czy IPSec?

Nowoczesne technologie bliżej nas 1

Koncepcja wirtualnej pracowni GIS w oparciu o oprogramowanie open source

Monitorowanie Sieci nonblocking content packet filtering

Letnia Akademia SUSE. Implementacja nowych rozwiązań open source wszystko, co musisz wiedzieć!

TSMBOX. Backup Appliance Build for Recovery Speed. Przemysław Jagoda. Zbigniew Parys

Win Admin Replikator Instrukcja Obsługi

Dokumentacja końcowa projektu z ZPR

Tworzenie aplikacji Web Alicja Zwiewka. Page 1

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Co to jest NODE.JS? Nowoczesne środowisko programistyczne

ELM SYSTEM ZARZĄDZANIA CYKLEM ŻYCIA SPRZĘTU

ROZSZERZAJĄC FUNKCJONALNOŚCI MEMCACHED

Referat pracy dyplomowej

CONFidence 13/05/2006. Jarosław Sajko, PCSS

Moduł Media backup oraz konfiguracja serwera zapasowego

IdyllaOS. Prosty, alternatywny system operacyjny. Autor: Grzegorz Gliński. Kontakt:

e-off f i f ce: :Sekr k e r tari r at t w chm h urz r e Marcin Pytel

Wprowadzenie SYSTEMY SIECIOWE. Michał Simiński

INTERNET - Wrocław Usługi bezpieczeństwa w rozproszonych strukturach obliczeniowych typu grid

Instalator umożliwia zainstalowanie aplikacji klienckiej na komputerze użytkownika końcowego. Na instalator składają się następujące funkcje:

Programowanie w Internecie

Zalecenia dotyczące budowania infrastruktury sprzętowej systemu Comarch ERP XL Aktualizacja dokumentu:

SPECYFIKACJA WYMAGAŃ. w zakresie migracji i uruchomienia nowego serwisu WWW na potrzeby PKP S.A.

Niezawodne usługi outsourcingowe na przykładzie usług kampusowych i Krajowego Magazynu Danych w sieci PIONIER

Popularne dostępne rozwiązania. Najpopularniejsze środowiska programistyczne:

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.

ActiveXperts SMS Messaging Server

Studium przypadku Case Study CCNA2-ROUTING. Warianty projektów

Wspomaganie pracy w terenie za pomocą technologii BlackBerry MDS. (c) 2008 Grupa SPOT SJ

INFRA. System Connector. Opis wdrożenia systemu

OpenLaszlo. OpenLaszlo

PRZEDMIOT ZAMÓWIENIA I TERMINY REALIZACJI

Adres IP

Od czego zacząć przy budowaniu środowisk wysokiej dostępności?

Projekt: Microsoft i CISCO dla Zachodniopomorskich MŚP

Systemy obiegu informacji i Protokół SWAP "CC"

Program szkolenia: Administracja SQL Server

ZADANIE.10 DHCP (Router, ASA) 1,5h

Aplikacje WWW Wprowadzenie

Transkrypt:

Projekt Fstorage www.fstorage.pl Łukasz Podkalicki Bartosz Kropiewnicki

Konspekt 1. Problemy związane ze składowaniem plików 2. Dostępne darmowe technologie 3. Opis najczęściej stosowanej technologii 4. Opis rozwiązania Fstorage 5. Mała demonstracja (jak się uda) 7. Zastosowanie 8. Ścieżka rozwoju

Problemy związane ze składowaniem plików 1.Brak prostych, wygodnych do wdrożenia, darmowych mechanizmów 2.Tworzenie rozwiązań dedykowanych 3.Skalowalność (obciążenia, przestrzeni dyskowej, prosta decentralizacja) 4.Potrzeba rozwiązania wysokiej dostępności 5.Kopie zapasowe 6.Uniwersalność i autonomiczność rozwiązania 7.Koszty utrzymania i konserwacji

Dostępne darmowe technologie 1. MogileFS 2. GlusterFS 3. Google File System (GFS) 4. Lustre 5. XtreemFS 6. MooseFS Gemius S.A. 7. Ceph utrzymywany przez Uniwersytet Kalifornijski, Santa Cruz

Opis najczęściej stosowanej technologii MogileFS stworzony przez Danga Interactive, jest jedną z najczęściej stosowanych rozwiązań przez developerów Replikacja plików odbywa się pomiędzy różnymi węzłami Niezależny od lokalnego systemu plików na serwerze Pliki identyfikowane są przez klucze w globalnej przestrzeni nazw Rozproszona architektura (składowiska, trakery i bazy trakerów) Działa w warstwie aplikacyjnej (brak modułu kernela) Wymaga bazy danych do składowania metadanych plików Liniowe skalowanie (nowe pliki przesyłane są do nowo dostawionego serwera)

Opis najczęściej stosowanej technologii Schemat obrazujący działanie MogileFS:

Opis najczęściej stosowanej technologii MogileFS przykład wykorzystania API modułu PHP

Opis rozwiązania Fstorage Czym jest Fstorage? System klasy Content Server System klasy Media Server Serwer cache'y

Opis rozwiązania Fstorage Uproszczony schemat działania:

Opis rozwiązania Fstorage Serwer programowy, Fstoraged zaimplementowany w ANSI C (c99) przygotowany dla Linux oraz BSD lekki i szybki (obecnie ~ 450 KB kodu, czas odpowiedzi ~4ms) obsługa równocześnie dwóch protokołów na jednym porcie (FSTP oraz HTTP) Replikowanie plików (dwa typy replikacji, zdefiniowana ilość kopii lub automatyczna) Jednowątkowy silnik do obsługi zdarzeniowej synchronizacji operacji na plikach (regulowany efekt pruningu, zlecanie replikacji, inc/dec cachy liczbowych, etc). Rozproszona architektura (każdy fstoraged jest węzłem w sieci fstorage'owej, bootstraping z jednego IP, wymiana kontaktów między węzłami, węzły są sobie równe brak podziału na węzły GOD, master/slave czy tracker) Składowanie oraz serwowanie plików statycznych (FSTP, HTTP) Składowanie oraz strumieniowanie plików multimedialnych (FSTP, HTTP) Składowanie oraz serwowanie cache'y (FSTP) Prosta autoryzacja połączeń (Allowed IP)

Opis rozwiązania Fstorage Serwer programowy, Fstoraged Aplikacja niezależny od lokalnego systemu plików globalna przestrzeń nazw dla kluczy (w przypadku metod HTTP, GET oraz DELETE wymagane jest podanie skrótu crc16 z klucza zapisanego w 45'wym systemie liczbowym pozycyjnym, służy do tego statyczna funkcja/metoda API, hash) Pliki na serwerze rozpraszane są w 256 katalogach (hash z klucza decyduje do którego katalogu trafi plik) Content Metadata zapisywane są w specjalnych plikach z roz..hdr (w tym statystyki o pliku: ilość pobrań, czas utworzenia, czas ważności, mimetype, flagi, etc). serwer nie wymaga żadnej bazy danych (wykorzystuje swoje własne mechanizmy metakatalogowej bazy plikowej, X.500) Obsługiwane Protokoły: FSTP (dedykowana, binarna warstwa transportowa, File Storage Transfer Protocol) HTTP (dostępne metody: HEAD, GET, PUT, DELETE)

Opis rozwiązania Fstorage Serwer programowy, Fstoraged

Opis rozwiązania Fstorage Serwer programowy, Fstoraged Instalacja: Uruchomienie:

Fstorage Client/API Opis rozwiązania Fstorage Aktualnie dostępne Implementacje są w językach ANSI C (c99), C++ (gnu+ +98), Python (v >= 2.5), PHP (v >= 5.0.1) Po instalacji fstoraged mamy gotowe do użycia implementacje klienckie dla ANSI C oraz C++ (fstorage.h, fstorage++.h; -lfstorage, -lfstorage++; FSTP) Aby użyć Fstorage w PHP należy zainstalować moduł PHP, phpfstorage wymaga biblioteki -lfstorage++ (FSTP) Aby użyć Fstorage w Python'nie należy zainstalować Python package, pyfstorage wymaga biblioteki -lfstorage (FSTP) Dodatkowo, klientem serwera fstorage może być każda aplikacja korzystająca z protokołu HTTP (wget, przeglądarka, etc.)

Opis rozwiązania Fstorage Fstorage Client/API Prosty interfejs Różnorodność zastosowań

Fstorage Client/API Opis rozwiązania Fstorage Instalacja modułu PHP wygląda standardowo: Edycja php.ini dodanie lini, extension=fstorage.so Sprawdzenie:

Opis rozwiązania Fstorage Przykład wykorzystania klienta PHP:

Ścieżka rozwoju Zastąpienie mechanizmów proxy reaktywnym protokołem routingowym na poziomie kernela (kmodfstorage). Realizacja cache'y pamięciowych dla popularnych plików (ograniczenia I/O dysków) Obsługa SSL Obsługa IPv6

Dziękujemy za uwagę lukasz@fstorage.pl