Tomasz Barbaszewski Open Source dzisiaj
2 Chmura 1961: Prof. John McCarthy jeden z twórców technologii komputerowej (LISP, Algol, podział czasu procesora, sztuczna inteligencja...): Computing may someday be organized as a public utility just as the telephone system is a public utility, Professor John McCarthy said at MIT s centennial celebration in 1961: Each subscriber needs to pay only for the capacity he actually uses, but he has access to all programming languages characteristic of a very large system Certain subscribers might offer service to other subscribers The computer utility could become the basis of a new and important industry.
Chmura 2015: 3
4 Systemy operacyjne najszybszych maszyn na Świecie Źródło: www.top500.org
5 Open Source w polskiej administracji Badanie Pentor zlecone przez FWIOO w ramach programu unijnego. Pełna wersja www.fwioo.pl
6 Open Source w polskiej administracji Badanie Pentor zlecone przez FWIOO w ramach programu unijnego. Pełna wersja www.fwioo.pl
Open Source Model (David A.Wheeler) Developers Trusted developers Trusted repositories Active users! 7
Developers: 8 Osoba prywatna lub grupa osób netfilter, vtun itp. Uczelnia, jednostka naukowa NCSA (httpd i Mosaic), Stanford Univ (TCL)... Organizacja, fundacja itp. Apache Software Foundation, Xorg Foundation... Jednostka rządowa NSA (SE Linux), NASA Goddard (Beowulf cluster)... Developers udostępniają oprogramowanie na licencji otwartej wraz z dostępem do kodu źródłowego oraz prawem do wprowadzania poprawek i modyfikacji Lecz z wyłączeniem gwarancji i serwisu - AS IS.
9 Trusted developers (LINUX): Osoba prywatna lub grupa osób Debian, Slackware, Slax, MintPPC,Tiny Core.. Uczelnia,jednostka naukowa, program rządowy CERN, Fermilab (Scientific Linux), Pardus, Red Flag... Organizacja, fundacja itp. Gentoo, ClearOS, Lubuntu, Puppy Linux... Firma komercyjna RedHat, SuSE, Canonical, Oracle, Mandriva, Xandros... SUPER GLUE Companies Cel: Stworzyć spójną całość Udostępnianą jako repozytorium
10 Płać za usługi nie za produkty! Basic kit, Dostęp sieciowy PAY FREE Prawa do użytkowania (Right to use) Licencja otwarta FREE Usługi: PAY Support, Maintenance Updates, Upgrades Szkolenia, Certyfikacje FREE
11 Płać za usługi nie za produkty! kolejny krok chmura (NIST approach) i dane i dane i dane i dane i dane i dane Platforma dane OS,i middleware Platforma dane OS,i middleware Platforma dane OS,i middleware Infrastruktura i dane HW Komputer Infrastruktura i dane HW Komputer Infrastruktura i dane HW Komputer PaaS SaaS IaaS
12 Chmura = wirtualizacja Bare metal clouds Bare metal clouds : Usługi w chmurze mogą być udostępniane z wykorzystaniem dedykowanych zasobów (np. blade servers) Określona i stała wydajność (deterministic performance) Najkrótsze opóźnienia (extreme low latency) Stała lokalizacja danych i usług (data locality) Prostsze i zazwyczaj skuteczniejsze rozwiązanie systemu bezpieczeństwa (certyfikaty PKI, mechanizmy kryptograficzne...) Wysokie koszty instalacji i zarządzania!
Chmura = wirtualizacja 13 Hardware virtualization: Usługi w chmurze mogą być udostępnianez wykorzystaniem serwerów wirtualnych. Dedykowany system gospodarza - np.. ESXi, XEN, Mechanizm jądra systemu np. Kernel-based Virtual Machine (kvm), Warstwa aplikacji np. VirtualBox Najczęściej współdzielenie zasobów gospodarza Niezdefiniowana wydajność i czas odpowiedzi (możliwe QoS) Możliwość pozostawienia Single Points of Failure Utrudnione zarządzanie certyfikatami i mechnizmami kryptograficznymi Niższe koszty instalacji i zarządzania, szeroki wybór oprogramowania do zarządzania maszynami wirtualnymi (także OpenSource)
Chmura = wirtualizacja 14 Operating-system-level virtualization (kontenery): multiple isolated user spaces w systemie operacyjnym (rozwinięta idea chroot!) Wykorzystywane są funkcje systemu operacyjnego, Kontenery korzystają z odrębnych user spaces, Dla Linuksa dostępne od 2001 roku! Linux-Vserver, Parallels Virtuoso, dla FreeBSD jeszcze wcześniej. Docker od 2013 r., ostatnio Rocket ( https://coreos.com ) Bardzo mały narzut brak emulacji, wielu instancji systemów, Rozwiązanie ograniczone do systemu, na którym wydzielane są isolated user spaces, Bardzo proste przenoszenie kontenerów, zbliżone do instalacji dodatkowych programów (lecz prostsze I szybsze), Poważne problemy związane z bezpieczeństwem konieczność wykorzystywania dodatkowych narzędzi (SELinux, AppArmor)..
15 Czy oprogramowanie Open Source może być bezpieczne? Bezpieczeństwo rozwiązań programowych musi być kontrolowane! Formalnie - Common Criteria (poziomy EAL) (np. EAL4 AIX, HP-UX, SuSE, RedHat, Oracle Linux, Solaris, Windows...) Nieformalnie (Community check) Możliwe praktycznie jedynie dla oprogramowania otwartego.
16 Bezpieczeństwo to nie tylko SSH! Kontrola integralności oprogramowania systemowego Kompletność, poprawność praw dostępu, skróty kryptograficzne, istotnych plików binarnych i konfiguracyjnych (np. /bin/login, /etc/resolv.conf) Sprawdzanie aktywności procesów oraz ich dostępu do zasobów Wybór właściwej polityki bezpieczeństwa (targeted, MCS/MLS) Bezpieczeństwo programów użytkowych Wykorzystywanie systemów read-only (np. Squash), sprawdzanie plików konfiguracyjnych i skryptów startowych, integralności, uruchamianych procesów Separacja zadań (sandboxes)
17 Wybór i znaczenie kluczowych interfejsów Minimalizacja efektu Vendor Lock-In! Swobodny wybór dostawcy rozwiązań, Cyrus Azani, Reza Khorramshahgol An Effective Business Strategy for Building Affordable and Adaptable Architectures Preferowanie standardów otwartych Ułatwienie serwisowania, modernizacji oraz rozbudowy systemu.
18 Agile manifesto cycle Deming quality cycle Kaizen: Stałe doskonalenie warunkiem wysokiej jakości! Market driven software : Właściwości określone badaniami rynkowymi, Wyposażone w szereg funkcji, trudna modernizacja, Dostęp z półki. Customer driven software : Właściwości potrzebami klienta, Zewnętrzna kontrola jakości, Eliminacja nadmiarowych funkcji, Łatwa modernizacja, Przygotowywane na zamówienie.
19 Dziękuję za uwagę i zapraszam na prezentacje i warsztaty