Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.



26.10.2020

Nowa wersja nVision

Można już pobierać nową wersję nVision
26.10.2020

Monitorowanie infrastruktury

Vertiv Environet Alert
23.10.2020

Telefonia w chmurze

NFON Cloudya
23.10.2020

Nowości w EDR

Bitdefender GravityZone
23.10.2020

Wykrywanie anomalii

Flowmon ADS11
23.10.2020

Mobilny monitor

AOC 16T2
22.10.2020

HP Pavilion

HP zaprezentowało nowe laptopy z linii Pavilion.
22.10.2020

Inteligentny monitoring

WD Purple SC QD101
22.10.2020

Przełącznik 2,5GbE

QNAP QSW-1105-5T

Strip Mining – open source na usługach

Data publikacji: 22-01-2020 Autor: Maciej Olanicki
Trwa świetny okres dla open source. Microsoft deklaruje miłość do otwartego oprogramowania i ma duży wkład w jego rozwój, IBM dokonuje największego w branżowej historii przejęcia Red Hata, a na serwerach, w chmurze i na smartfonach rządzą systemy oparte na Linuksie. Jedna kwestia wciąż jest dla dostawców rozwiązań open source wyzwaniem – spieniężanie owoców swojej pracy. Czy zmienią to nowe licencje, które zdają się mieć coraz mniej wspólnego z wartościami leżącymi u, nomen omen, źródeł idei wolnego oprogramowania?
 
Przez lata podstawowym źródłem przychodów dla społeczności rozwijających otwarte oprogramowanie były m.in.: świadczenie pomocy technicznej klientom biznesowym, pakiety szkoleń, adaptacja produktów i usług do konkretnych wdrożeń, a także datki organizacji, które, wspierając to czy inne przedsięwzięcie kwotą dla niego strategiczną, i tak znacząco oszczędzały w porównaniu z kosztami generowanymi przez komercyjne odpowiedniki. Ten model przestaje obowiązywać za sprawą taktyki przyjętej przez dostawców największych usług chmurowych, na czele z Amazonem i Microsoftem. Przychody przez lata nieosiągalne dla niewielkich start-upów, ściśle trzymających się postanowień wolnych licencji, błyskawicznie zostały osiągnięte sprawnymi rękami korporacyjnych menedżerów. Dość powiedzieć, że w czwartym kwartale fiskalnym Amazon Web Services zarobiło dla Amazona 7,4 mld dolarów, czyli 10% wszystkich przychodów. W rekordowym w 40-letniej historii Microsoftu minionym roku fiskalnym Azure zarobiło po raz pierwszy więcej niż Windows. Czy byłoby to możliwe, gdyby nie praca społeczności open source?
 
> W CHMURZE GĘSTO OD OPEN SOURCE
 
Najlepszą odpowiedzią na to pytanie będą twarde dane liczbowe, które w ciągu ostatnich lat wyciekały sporadycznie z Redmond: w drugiej połowie 2015 roku Mark Russinovich, dyrektor techniczny Microsoft Azure, przyznał, że jedna na cztery instancje w chmurze Microsoftu to instancja linuksowa. W 2017 roku ten sam Russinovich wyjawił, że Linux rządzi już na 40% wszystkich maszyn wirtualnych w Azure.
Jesienią 2018 r. inny przedstawiciel korporacji podzielił się informacją, że instancje z Linuksem to już połowa całej microsoftowej chmury, a w lipcu 2019 roku Sasha Levin, programista zaangażowany w Microsofcie w prace nad modyfikacjami jądra Linux, zdradził, że Linux jest już w Azure popularniejszy niż Windows. Cztery lata wystarczyły, by open source podbiło kluczową usługę największego na świecie producenta oprogramowania, który słynie ze swoich systemów operacyjnych. 
 
Jeszcze ciekawiej sprawy mają się na gruncie Amazon Web Services, o czym głośno jest od wielu miesięcy za sprawą konfliktu z firmą Elasticsearch. Pod koniec 2018 roku ten amsterdamski dostawca m.in. niezwykle udanego silnika wyszukiwania o tej samej nazwie po latach udostępniania całości kodu na wolnych licencjach zdecydował się w związku z planami wejścia na giełdę na zmiany. Kod części komponentów miał być odtąd własnościowy, a ewentualny dostęp do niego płatny. Nie mógł na to przystać Amazon, który oferował oprogramowanie Elastic w ramach AWS, nic za to nie płacąc, za to nieźle na nim zarabiając. W rezultacie powstało Open Distro for Elasticsearch – Amazon po prostu sforkował ogólnodostępny kod Elasticsearch i zaczął samodzielnie i niezależnie od Elastic rozwijać go na potrzeby Amazon Web Services. Co ważne, korporacja udostępnia całość na licencji Apache 2.0. W połowie grudnia 2019 r. Andi Gutmans, szef Amazon Elasticsearch Service, odniósł się do zarzutów, według których poprzez „wrogie przejęcie kodu” Amazon pasożytuje na owocach pracy społeczności open source. Krytycy praktyk realizowanych m.in. przez Amazon ukuli nawet dla nich osobny termin – strip mining, czyli wydobycie odkrywkowe, co ma ilustrować łatwość eksploatacji „złóż”, jak i ich skalę. Według Gutmansa sytuacja jest odwrotna: to zmiany wprowadzone przez Elastic godziły w interesy użytkowników, zaś sforkowanie Elasticsearch przez Amazon przywróciło im możliwość korzystania z silnika na dotychczasowych zasadach. Elastic postanowiło bronić się, kierując skargę na praktyki Amazona do sądu. Nie dotyczy ona jednak wykorzystania kodu, bo to przecież jest zgodne z licencją, lecz… znaku towarowego „Elasticsearch”.
 
Sprawa Elasticsearch vs Amazon to bodaj najjaskrawszy przejaw tarć pomiędzy twórcami otwartego oprogramowania a komercyjnymi dostawcami usług chmurowych, którzy świetnie to oprogramowanie spieniężają. Na tym przykładzie widać także paradoks: pierwsi – przynajmniej częściowo – muszą porzucić ideę otwartego oprogramowania, natomiast drudzy w rezultacie występują jako obrońcy tych idei. Nic więc dziwnego, że frustracja społeczności FOSS narasta. Najwięksi gracze budują na jej pracy ogromne usługi, nie dając – w opinii tejże społeczności – nic lub dając niewiele w zamian. Zaczęły zatem rodzić się spostrzeżenia, że dotychczas wykorzystywane wolne licencje nie chronią dostatecznie interesów twórców. Przede wszystkim dlatego, że powstały w czasach, kiedy model SaaS czy IaaS w zasadzie nie istniał, nie mogą zatem odpowiadać na wyzwania bieżących realiów. W gronie twórców otwartego oprogramowania, przede wszystkim bazodanowego, zaczęto zastanawiać się, jakie zapisy mogłyby odwrócić niekorzystny dla nich trend. 
 
> NOWE LICENCJE
 
Jak to zwykle bywa w świecie open source, na nowe wyzwania nie sformułowano jednej odpowiedzi, lecz kilka od siebie niezależnych, a nierzadko wzajemnie się wykluczających. Każda z nich pochodzi od producenta innego oprogramowania bazodanowego. Przyjrzyjmy się więc specyfice najpopularniejszych nowych licencji, ich podobieństwom i różnicom w stosunku do dotychczas wykorzystywanych wolnych licencji oraz – co w kontekście motywacji ich twórców jest najważniejsze – sposobom radzenia sobie z praktykami realizowanymi przez dostawców dużych usług chmurowych.
 
  • Server Side Public License (SSPL) – licencja opracowana przez twórców wykorzystywanego nagminnie w usługach chmurowych oprogramowania bazodanowego MongoDB, które dotąd dystrybuowane było na licencji AGPL. Ta została jednak porzucona ze względu na niejasności w zakresie zobowiązywania dostawców usług sieciowych do udostępniania kodu. W rezultacie zdecydowano się sięgnąć do korzeni AGPL, czyli GPL v3 i to na tej licencji bazuje SSPL. Jedyną zmianą, jaką wprowadza SSPL w stosunku do GPL v3, jest sekcja 13., która zobowiązuje wszystkie firmy wykorzystujące MongoDB jako usługę do udostępnienia całości kodu źródłowego usługi, której składnikiem jest MongoDB. Oznacza to, że dostawcy wykorzystujący MongoDB na użytek zewnętrzny są zobowiązani do udostępniania kodu źródłowego oprogramowania zarządzającego, interfejsów użytkownika, API, oprogramowania automatyzującego, monitorującego, narzędzi kopii zapasowych etc. Słowem – jeśli dostawca wykorzystuje MongoDB w swojej usłudze, to musi udostępnić cały jej kod, tak aby każdy był w stanie uruchomić instancję tej usługi na własnej infrastrukturze. Nie dotyczy to sytuacji, kiedy MongoDB jest wykorzystywane wyłącznie na użytek wewnętrzny dostawcy. W każdej innej sytuacji, tj. gdy MongoDB nie jest świadczone w postaci usługi, obowiązują zapisy tożsame z GPL v3.

 

  • Timescale License (TSL) – inne podejście realizują twórcy Timescale (swoją drogą bazującego na kodzie innego otwartego programu bazodanowego, PostgreSQL). Zdecydowali się oni podzielić swój produkt na trzy segmenty różniące się funkcjonalnością. Darmowy segment o podstawowej funkcjonalności dystrybuowany jest na licencji Apache 2.0, zaś wersja Community (darmowa) oraz Enterprise (płatna) właśnie na nowej licencji TSL. Dostawca zobowiązany jest do wykupienia płatnej wersji Enterprise wyłącznie wtedy, gdy dostarcza oprogramowanie TimescaleDB jako usługę (model Database-as-a-Service) lub gdy dokonuje odsprzedaży. We wszystkich pozostałych scenariuszach możliwe jest bezpłatne wykorzystanie TimescaleDB Open Source bądź wersji Community. Kwestię tę doprecyzowują restrykcje TSL: zabronione jest użycie darmowych wersji TimescaleDB w usługach wykorzystujących współdzielenie czasu, w usługach o wspomnianym modelu DaaS, a także we wszystkich usługach Software-as-a-Service. Ciekawie wypada kwestia udostępniania kodu – jak wspomnieliśmy, wolne w rozumieniu Apache 2.0 są źródła wyłącznie wersji podstawowej, jednak cała reszta kodu, czyli komponenty stanowiące funkcje z wersji Community i Enterprise, dystrybuowane są na własnościowej Timescale License.

 

  • Business Source License (BSL) – licencja sporządzona z inicjatywy Michae­la Wideniusa, twórcy MySQL (oprogramowania przejętego w 2008 r. przez Sun, które zdecydowało się na zaprzestanie udostępniania kodu źródłowego, co było przyczyną odejścia Wideniusa z projektu) oraz MariaDB, czyli otwartego forka MySQL stworzonego w odpowiedzi na decyzję Sun. BSL przedstawiana jest przez Wideniusa nie jako licencja wolna czy własnościowa, lecz jako alternatywa dla obu tych podejść, trzecia droga. W warunkach testowych użytkownik nie jest zobowiązany do uiszczania opłat licencyjnych, jest to konieczne dopiero po wdrożeniu MariaDB w środowisku produkcyjnym, ale tylko jeśli przekroczone zostaną limity ustanowione przez producenta konkretnego narzędzia. W przypadku MariaDB może to być na przykład określona liczba relacyjnych baz danych działająca na produkcji, po przekroczeniu której użytkownik staje się klientem enterprise. Wyróżnikiem BSL jest także wprowadzenie tzw. daty zmiany. Jest to indywidualna dla każdej dużej wersji oprogramowania data, po upływie której oprogramowanie przechodzi z licencji BSL na wybraną przez producenta wolną licencję.

 

  • Cockroach Community License (CCL) – przygotowana na potrzeby Cock­roachDB licencja bazująca na BSL, którą sami twórcy określają mianem „ekstremalnie liberalnej” wersji BSL. Jej niezaprzeczalną zaletą jest prostota, która jednak przekłada się na trudność adaptacji licencji do potrzeby innego oprogramowania niż bazodanowe (a tę wymusza przecież 8. punkt definicji open source). W praktyce CCL dopuszcza więc skalowanie CockroachDB na nieograniczoną liczbę węzłów, osadzanie w aplikacjach, także w aplikacjach dostarczanych jako usługi, możliwe jest też wykorzystanie oprogramowania jako usługi na użytek wewnętrzny. Jedynym ograniczeniem wprowadzanym przez CCL jest zakaz oferowania komercyjnej wersji CockroachDB jako usługi bez wcześniejszego wykupienia licencji. Nie ma tu zatem limitów liczbowych obowiązujących w BSL – użytkownik może skalować na dowolną liczbę węzłów tak długo, jak długo nie świadczy w ten sposób usługi w modelu Database-as-a-Ser­vice. Na gruncie CCL obowiązuje także wprowadzony przez BSL mechanizm daty zmiany.

 

  • Confluent Community License (CCL) – licencja opracowana przez niegdysiejszych twórców Apache Kafka na potrzeby rozwijanego przez nich zestawu narzędzi Confluent rozszerzających możliwości brokera. Architektonicznie jednak narzędzia te stanowią warstwę opakowującą Apache Kafka, co musiało zostać uwzględnione także w zapisach CCL – Apache Kafka wciąż jest więc dystrybuowane na licencji Apache 2.0, zaś komponenty Confluent na CCL. W rezultacie kod jest ogólnodostępny, można go modyfikować i redystrybuować, jednak zabronione jest wykorzystanie go w modelu SaaS, PaaS, IaaS lub jakimkolwiek innym modelu usługowym, jeśli końcowy produkt będzie konkurencyjny wobec oryginalnych produktów dostarczanych przez Confluent. Ten ostatni, kontrowersyjny zapis wyróżnia CCL na tle innych nowych licencji, ale oczywiście nie stanowi nowości, co szerzej opisujemy w ramce Common Clause.

 

[...]

 

Dziennikarz, redaktor, bloger. Entuzjasta wolnego oprogramowania. 

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"