X2Go Case Study:
Opensource Remote Desktopom do 10+ k€ uštede

Ivan Guštin, ELIN & HULK ~ DORS/CLUC 2018

Što radim u radno vrijeme
za $$$?

Što radim u slobodno vrijeme
za gušt?

Situacija - početna točka

  • korisnik: knjigovodstveni servis
    • 25+ godina
    • 40+ poslovnih klijenata
  • korisnici:
    • 5 lokalnih
    • 40+ udaljenih (client-server)
  • stalni link 2/2 Mbps
  • 2 aplikacije - migracija nije opcija
    • Windows app + Oracle baza
    • Java app + DB2 baza
  • 2 Linux servera
    • za Oracle bazu
    • za DB2 bazu

Problemi

  • relativno stari serveri koje treba zamijeniti (cca 20 kkn/server)
  • link usko grlo, treba znatno brži, zbog količine udaljenih korisnika i njihovih bržih linkova
  • broj korisnika, njihova aktivnost i količina podataka u porastu
  • ručni update aplikacije kod svakog korisnika je mučenje
  • korisnička računala šarolika

Cilj

  • novija i jača serverijada
  • brži pristup serverima/bazama
  • jednokratni+paušalni trošak
    načelno nije limitiran
    • ...ali je poželjan što manji
    • ...ali ne na uštrb kvalitete
    • ...i gledati dugoročno
    • ...i muzička želja

Sitna slova oko cilja

  • Win Home & Linux klijenti
  • Remote Desktop bio bi ekstra
    • brzina
    • centralni update jedne instance aplikacija
    • remote printing je obavezan
    • remote folder share je poželjan

Opcija 1 - lokalno

  • nova lokalna oprema
    • 1 jači ili više slabijih servera
    • ~30-50 kkn
  • brži stalni link
    • cca 2-5 kkn/mj

Opcija 2 - cloud

  • puno jači server za manje $$$
  • 2 x Xeon/128GB RAM/SSD
  • puno brži link
  • mjesečni paušal 150 €
  • gasi se lokalni link
  • manja lokalna potrošnja struje

Lakši dio

  • na host serveru Linux + OpenVPN
  • 1. virtualka: Linux + Oracle baza
  • 2. virtualka: Linux + DB2 baza
  • rezultat - odličan, drastično brže za malo $$$

Teži dio

  • apetiti rastu
  • aplikacije na serveru + Remote Desktop pristup
  • još veća brzina
  • jednostavno ažuriranje
  • client-independent

Platforma?

Naravno, MS!

  • nativna platforma za jednu korištenu aplikaciju
  • korisniku poznata i prirodna
  • MS Remote Desktop radi odlično
    • isprobano na Win7Pro s "onim" patchom
    • stavljen Windows Server 2012 trial u zasebnu virtualku
  • brzina - još veća, sve super, ali...

Remote printing?$#!%&%#$!?

  • teoretski, "radi out-of-the-box"
  • u praksi, NE RADI NIKAKO
  • prema MS supportu, 3 koraka remote printinga:
    • traži isti driver, ako ne nađe, onda
    • traži sličan, ako ne nađe, onda
    • uzme generički
  • u praksi, nikad ne radi dok nema identičan driver
    • teška PITA: 45+ remote korisnika s najmanje toliko općenito različitih printera, pri čemu za mnoge i ne postoje za WinSrv2012-64
  • rješenje: TSPrint
    • radi odlično, kroz virtualni printer na serveru
    • ...ali košta dodatno, ~400€

Najteži M$$$ dio

  • niz tzv. "MS partnera" uopće ne zna ponuditi i izračunati licence
  • nakon niza upita i dobivenih ponuda za licenciranje, konačna je:
    • 9EM-00124 - WinSvrSTDCore 2016 SNGL OLP 2Lic NL CoreLic
      1.145,34 kn * 8 kom = 7.788,31 kn

    • R18-05123 - WinSvrCAL 2016 SNGL OLP NL UsrCAL:
      391,00 kn * 45 kom = 17.595,00 kn

    • 6VC-03224 - WinRmtDsktpSrvcsCAL 2016 SNGL OLP NL UsrCAL
      1.368,55 kn * 45 kom = 61.584,75 kn

    • Ukupno: 86.968,06 kn ili 11.705,00 €, + PDV

    • trajne licence, ali "bez mogućnosti nadogradnje"

  • korisnik ostao šokiran

    • ...ali svejedno razmišljao o kupnji do trenutka...

Ali to uopće nije legalno!?!

MS licence korisnik kupuje za svoj hardware.

Hardware u cloudu nije korisnikov, već od hostera.

Te licece kupuje hoster, a korisnik plaća najam/paušal.

(MS pro partner)

Koliko košta kod hostera?

~300 €/mjesečno (za 45 korisnika)
(podsjetnik: najam servera košta 150 €/mjesečno)

I tu je palo 'odlučno NE'

"Čuj, a možeš li ti ipak nešto s onim tvojim Linuxom da ne boli tako jako?"

Opcije

  • Remote X-Window Session
  • Vino
  • TeamViewer
  • *VNC
  • LTSP
  • ...?
  • ...ništa ni približno traženim zahtjevima

Spominjao se i onaj X2Go...?

  • počeo razvoj prije 10+ godina
  • relativno malo poznat i slabo raširen
    • kome treba full-blown remote Linux Desktop? ;)
  • ali u međuvremenu i te kako sazrio
  • x2go.org

Što je X2Go?

  • programsko rješenje za Remote Desktop
    • nije bazirano na MS Remote Desktop Protokolu
    • bazirano na NX protokolu tvrtke NoMachine
    • motivirano boljom zamjenom za spori remote X Session
  • i serverski i klijentski dio
  • najbolji i jedini (?) pravi FLOSS pandan MS TS + RDC
  • ...pa čak i ponešto bolji

X2Go - way 2 go

  • server side: Linux desktop* + X2Go Server
  • client side: X2Go Client
    • za Win (Home!), macOS i Linux
  • radi brzo, čak i preko sporih linkova
  • robustan disconnect/reconnect
  • neograničen broj istovremenih korisnika
  • SSH tunelirano
  • remote printer sharing preko virtualnog printera
    • ne zahtijeva instalaciju drivera na serveru
      za svaki klijentski printer kao MS rješenje
  • remote file sharing
  • remote sound
  • komercijalni support
  • ...to je to!!!

X2Go reference

  • Cisco
  • NASA
  • CERN

Proof of concept

Nakon upoznavanja rješenja, inicijalni testovi prošli odlično

Olakotne okolnosti

  • Linux Desktop i Windows aplikacije?!?
  • Java app radi na svemu
  • Win app + Oracle client rade 100% pod Wineom
    • suglasnost i podrška vendora Windows aplikacije

Trenutačna situacija

  • korisnik koristi baze u cloudu za produkciju
  • X2Go Remote Desktop opcija se testira
    • edukacija korisnika i njegovih klijenata
    • testiranje različitih klijenata i printera
    • testiranje različitih klijentskih linkova
    • testiranje različitih klijentskih scenarija
    • testiranje Win app pod Wineom
    • sitni problemi oko nekih verzija Win
  • ocjena: obećavajuće

Rezime

  • preporučam!
  • preduvjet za MS okruženje?
    • da aplikacije rade na Linuxu :)

Pitanja?

Iskustva?

Komentari?