Photon: linux by VMWARE

Postato il Aggiornato il

Photon-OSPhoton è un progetto open source di VMWARE che ha dato vita ad un sistema operativo, basato su linux (RPM based), ottimizzato e pensato per il deploy e lo sviluppo di applicazioni native nel cloud e isolate in container.
Il progetto è in fase di tecnology preview ed è stato sviluppato per essere avviato molto velocemente ed avere dimensioni molto ridotte,  completamente compatibile con le piattaforme vmware vSphere 5.5 e la recentissima 6.0.
Supporta i formati container più comuni tra cui Docker, Rocket (RKT) e Garden e include il sistema di gestione dei pacchetti Yum.
I progetti open source di vmware saranno integrati nella piattaforma di gestione unificata per il cloud “vCloud Air”, creando un ambiente coerente che permetta alle aziende di eseguire sia i container sia le macchine virtuali su un’unica piattaforma per supportare sia le applicazioni tradizionali sia quelle sviluppate nativamente per il cloud, e permettere una maggiore portabilità delle applicazioni pacchettizzate in formato “container” per ora solo linux ma in futuro anche windows.
Photon è disponibile per il download tramite GitHub e le immagini ISO sono distribuiti sotto il contratto di licenza VMware Technology Preview” mentre la licenza open source è consultabile nel file di licenza Open Source.
Vediamo come installare ed utilizzare Photon su infrastruttura virtuale vmware considerando che i requisiti  hardware dipendono dal tipo di container che si vuole avviare sul sistema, tipicamente possiamo configurare:

  • 2 vCPU,
  • 1024 MB Ram
  • 20GB hard disk
Selezionare infine come Guest OS Linux “Other 3.x Linux (64bit)” e avviamo la macchina virtuale:
photon01
Selezionare install per lanciare l’installazione e scegliere il tipo di pacchetto:
  • Photom OS (Micro): versione ridotta che non dispone di pacchetti sufficienti per fare da hosting containers ed è adatta solo per l’esecuzione di un applicazione come container ma è la versione  più sicura.
  • Photom Container OS (Minimal): è una versione minimale e quindi molto performante, che permette le funzioni basi per l’hosting e l’avvio dei containers.
  • Photon Full OS (All): versione completa che include tutti i componenti necessari per eseguire i containers.
  • Photom Custom OS: versione personalizzabile per creare una ambiente specifico sulle proprie esigenze

Nell’esempio è stata scelta la versione Full OS:

 photon02

Dopo aver inserito le credenziali di root  e il volume si procede con l’installazione:

photon03

Terminata l’installazione ed effettuato il reboot della macchina si può fare login sulla console con le credenziali di root e subito dopo lanciare il comando per abilitare il servizio docker a partire ad ogni riavvio della macchina:

sistemctl enable docker

e successivamente inizializzare il docker engine:

sistemctl start docker

photon04

Ora il sevizio (daemon) Docker è avviato e possiamo scaricare dall’hub e lanciare un container basato su “Nginx Web Server”:

docker run -d -p 80:80 vmwarecna/nginx

photon05

Una volta che il processo “docker run” è completato avremo già il website del container nginx già avviato ed operativo.
Con il comando ifconfig verifichiamo quale indirizzo IP è configurato sulla scheda di rete eth0:

photon06
Digitando l’IP 192.168.81.32 nel browser avremo accesso alla pagina web di nginx:

photon07

Altri containers nello stesso modo possono essere scaricati e avviati su Photon!
Qui trovate una collection dei comandi base di Photon OS.

IZ

2 pensieri riguardo “Photon: linux by VMWARE

    Luciano Rinetti ha detto:
    23/04/2015 alle 18:42

    Bell’articolo,
    ma mi lascia un po perplesso il confronto tra Container e VM. In un ambiente di produzione dove conta solo la continuita’ di esercizio, quale e’ la scelta migliore ? Ad es per dei mail server ?
    grazie

      Ivan ha risposto:
      27/04/2015 alle 11:43

      Ciao Luciano,

      la virtualizzazione a “container” sembra la “moda” del momento, anche se non è una novità basta vedere openvz, infatti anche RedHat ha sviluppato la sua soluzione Atomic Host così come Google sostiene il progetto open source CoreOS, oppure abbiamo il famoso Docker ed infine vmware con Photon.
      Il vantaggio principale dei containers, rispetto ad una vm, è che gli sviluppatori non devono più preoccuparsi dei requisiti della macchina di destinazione perchè non viene emulato tutto l’hardware, ma semplicemente si sviluppa l’applicazione e ne si definisce il container…poi se gira nel cloud o in vsphere o altrove non ha così importanza l’ambiente di runtime.
      Perché virtualizzare un’intera macchina, quando sarebbe possibile virtualizzare solamente una piccola parte di essa?
      Virtualizzando ed astraendo solo il sistema operativo e le componenti necessarie all’esecuzione dell’applicazione, invece che l’intera macchina, l’avvio è molto più veloce rispetto ai tempi di avvio di una classica VM e quindi si ha una rapida disponibilità del tutto.
      Infine si ha un controllo più granulare perchè le applicazioni sono suddivisibili in “microservizi” isolati, garantendo un controllo migliore sulle applicazioni stesse e con un miglioramento generale delle performance del sistema.
      Quindi il container è pensato per “lanciare” servizi e applicazioni velocemente e indifferentemente dal sistema stesso ovvero come i webserver sui vari servizi cloud PaaS (Platform as a service) che usano questo tipo di virtualizzazione per ottimizzare il consumo delle risorse e limitarle.
      Ecco un articolo interessante in merito:
      http://www.linuxjournal.com/content/containers%E2%80%94not-virtual-machines%E2%80%94are-future-cloud
      Occorre infine analizzare i carichi di lavoro e casi d’uso per decidere che tipo di virtualizzazione sia più opportuna adottare;nel caso del server mail conviene sia virtualizzato ancora interamente per garantire l’alta affidabilità delle sue componenti perchè generalmente i carichi di lavoro CPU e Ram sono elevati e l’hardware su cui gira fa ancora la differenza.
      Spero di avere chiarito il più possibile🙂

      IZ

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...