Com instal·lar Apache Zeppelin a Ubuntu 16.04

Apache Zeppelin és un quadern de codi obert basat en la web i una eina col·laborativa per a la ingestió de dades interactives, el descobriment, l'anàlisi i la visualització. Zeppelin admet més de 20 idiomes, inclosos Apache Spark, SQL, R, Elasticsearch i molts més. Apache Zeppelin us permet crear bells documents basats en dades i veure els resultats de les vostres anàlisis.

Requisits previs

  • Una instància del servidor Vultr Ubuntu 16.04.
  • Un usuari de sudo .
  • Un nom de domini apuntat cap al servidor.

Per a aquest tutorial, utilitzarem zeppelin.example.com com a nom de domini apuntat cap a la instància Vultr. Assegureu-vos de substituir totes les ocurrències del nom de domini d'exemple per l'actual.

Actualitzeu el vostre sistema base mitjançant la guia Com actualitzar Ubuntu 16.04 . Un cop actualitzat el sistema, procediu a instal·lar Java.

Instal·leu Java

Apache Zeppelin està escrit en Java, per tant requereix JDK per funcionar. Afegiu el dipòsit d'Ubuntu per a Oracle Java 8.

sudo add-apt-repository --yes ppa:webupd8team/java
sudo apt update

Instal·leu Oracle Java.

sudo apt -y install oracle-java8-installer

Verifica la seva versió.

java -version

Veureu la següent sortida.

user@vultr:~$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

Establiu el camí predeterminat per a Java instal·lant el paquet següent.

sudo apt -y install oracle-java8-set-default

Podeu comprovar si JAVA_HOMEestà configurat executant-lo.

echo $JAVA_HOME

Ja ho veuràs.

user@vultr:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle

Si no veieu cap sortida, haureu de tancar la sessió de l'intèrpret d'ordres actual i tornar a iniciar la sessió.

Instal·leu Zeppelin

Apache Zeppelin envia totes les dependències juntament amb els fitxers binaris, de manera que no necessitem instal·lar res més que Java. Baixeu el binari Zeppelin al vostre sistema. Sempre podeu trobar l'última versió de l'aplicació a la pàgina de descàrrega de Zeppelin .

wget http://www-us.apache.org/dist/zeppelin/zeppelin-0.7.3/zeppelin-0.7.3-bin-all.tgz

Extraieu l'arxiu.

sudo tar xf zeppelin-*-bin-all.tgz -C /opt

L'ordre anterior extreu l'arxiu a /opt/zeppelin-0.7.3-bin-all. Canvieu el nom del directori per comoditat.

sudo mv /opt/zeppelin-*-bin-all /opt/zeppelin

Apache Zeppelin ara està instal·lat. Podeu iniciar immediatament l'aplicació, però no us podreu accedir, ja que localhostnomés escolta . Configurarem Apache Zeppelin com a servei. També configurarem Nginx com a servidor intermediari invers.

Configura Systemd

En aquest pas, configurarem un fitxer d'unitat Systemd per a l'aplicació Zeppelin. Això garantirà que el procés d'aplicació s'iniciï automàticament en el reinici del sistema i els errors.

Per motius de seguretat, creeu un usuari sense privilegis per executar el procés Zeppelin.

sudo useradd -d /opt/zeppelin -s /bin/false zeppelin

Proporcioneu la propietat dels fitxers a l'usuari Zeppelin acabat de crear.

sudo chown -R zeppelin:zeppelin /opt/zeppelin

Creeu un nou fitxer d'unitat de servei Systemd.

sudo nano /etc/systemd/system/zeppelin.service

Omple el fitxer amb el següent.

[Unit]
Description=Zeppelin service
After=syslog.target network.target

[Service]
Type=forking
ExecStart=/opt/zeppelin/bin/zeppelin-daemon.sh start
ExecStop=/opt/zeppelin/bin/zeppelin-daemon.sh stop
ExecReload=/opt/zeppelin/bin/zeppelin-daemon.sh reload
User=zeppelin
Group=zeppelin
Restart=always

[Install]
WantedBy=multi-user.target

Inicieu l'aplicació.

sudo systemctl start zeppelin

Habiliteu el servei Zeppelin perquè s'iniciï automàticament en el moment de l'arrencada.

sudo systemctl enable zeppelin

Per assegurar-vos que el servei s'està executant, podeu executar el següent.

sudo systemctl status zeppelin

Configura el proxy invers

De manera predeterminada, el servidor Zeppelin escolta al localhost port 8080. Utilitzarem Nginx com a servidor intermediari invers perquè es pugui accedir a l'aplicació mitjançant estàndards HTTP i HTTPS ports. També configurarem Nginx perquè utilitzi un SSL generat amb Let's Encrypt SSL CA gratuït.

Instal·leu Nginx.

sudo apt -y install nginx

Inicieu Nginx i activeu-lo perquè s'iniciï automàticament en el moment de l'arrencada.

sudo systemctl start nginx
sudo systemctl enable nginx

Afegiu el repositori Certbot.

sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update

Instal·leu Certbot, que és l'aplicació client de Let's Encrypt CA.

sudo apt -y install certbot

Nota : per obtenir certificats de Let's Encrypt CA, el domini per al qual s'han de generar els certificats s'ha d'apuntar cap al servidor. Si no, feu els canvis necessaris als registres DNS del domini i espereu que el DNS es propagui abans de tornar a fer la sol·licitud de certificat. Certbot verifica l'autoritat del domini abans de proporcionar els certificats.

Generar els certificats SSL.

sudo certbot certonly --webroot -w /var/www/html -d zeppelin.example.com

És probable que els certificats generats s'emmagatzemin a /etc/letsencrypt/live/zeppelin.example.com/. El certificat SSL s'emmagatzemarà com a fullchain.pem i la clau privada com a privkey.pem.

Els certificats de Let's Encrypt caduquen en 90 dies, per tant, es recomana configurar la renovació automàtica dels certificats mitjançant treballs de Cron.

Obriu el fitxer de treball cron.

sudo crontab -e

Afegiu la línia següent al final del fitxer.

30 5 * * * /usr/bin/certbot renew --quiet

El treball cron anterior s'executarà cada dia a les 5:30 del matí. Si el certificat ha de caducar, es renovarà automàticament.

Creeu un fitxer de bloqueig de servidor nou per al lloc Zeppelin.

sudo nano /etc/nginx/sites-available/zeppelin

Omple el fitxer.

upstream zeppelin {
server 127.0.0.1:8080;
}
server {
    listen 80;
    server_name zeppelin.example.com;
    return 301 https://$host$request_uri;
}

server {
    listen 443;
    server_name zeppelin.example.com;

    ssl_certificate           /etc/letsencrypt/live/zeppelin.example.com/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/zeppelin.example.com/privkey.pem;

    ssl on;
    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    access_log  /var/log/nginx/zeppelin.access.log;

location / {
        proxy_pass http://zeppelin;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;
        proxy_redirect off;
    }
location /ws {
    proxy_pass http://zeppelin/ws;
    proxy_http_version 1.1;
    proxy_set_header Upgrade websocket;
    proxy_set_header Connection upgrade;
    proxy_read_timeout 86400;
    }
  }

Activeu el fitxer de configuració.

sudo ln -s /etc/nginx/sites-available/zeppelin /etc/nginx/sites-enabled/zeppelin

Reinicieu Nginx perquè els canvis tinguin efecte.

sudo systemctl restart nginx zeppelin

Ara es pot accedir a Zeppelin a la següent adreça.

https://zeppelin.example.com

Per defecte, no hi ha cap autenticació activada, de manera que podeu utilitzar l'aplicació directament.

Com que l'aplicació és accessible per a tothom, els quaderns que creeu també ho són. És molt important desactivar l'accés anònim i habilitar l'autenticació perquè només els usuaris autenticats puguin accedir a l'aplicació.

Desactiva l'accés anònim

Per desactivar l'accés anònim predeterminat, copieu la plantilla del fitxer de configuració a la seva ubicació activa.

cd /opt/zeppelin
sudo cp conf/zeppelin-site.xml.template conf/zeppelin-site.xml

Editeu el fitxer de configuració.

sudo nano conf/zeppelin-site.xml

Busca les línies següents al fitxer.

<property>
  <name>zeppelin.anonymous.allowed</name>
  <value>true</value>

Canvieu el valor a false per desactivar l'accés anònim.

Activa l'autenticació Shiro

Ara que hem desactivat l'accés anònim, hem d'habilitar algun tipus de mecanisme d'autenticació perquè els usuaris privilegiats puguin iniciar sessió. Apache Zeppelin utilitza l'autenticació Apache Shiro. Copieu el fitxer de configuració de Shiro.

sudo cp conf/shiro.ini.template conf/shiro.ini

Editeu el fitxer de configuració.

sudo nano conf/shiro.ini

Busca les línies següents al fitxer.

[users]

admin = password1, admin
user1 = password2, role1, role2
user2 = password3, role3
user3 = password4, role2

La llista conté el nom d'usuari, la contrasenya i les funcions dels usuaris. De moment, només utilitzarem admin i user1. Canviar la contrasenya d' admin i user1 i desactivar els altres usuaris comentant ells. També podeu canviar el nom d'usuari i els rols dels usuaris. Per obtenir més informació sobre els usuaris i els rols d'Apache Shiro, llegiu la guia d'autorització de Shiro .

Un cop hàgiu canviat les contrasenyes, el bloc de codi li hauria d'agradar.

[users]

admin = StrongPassword, admin
user1 = UserPassword, role1, role2
# user2 = password3, role3
# user3 = password4, role2

Ara reinicieu Zeppelin per aplicar els canvis.

sudo systemctl restart zeppelin

Veureu que l'autenticació s'ha habilitat i podreu iniciar sessió amb el nom d'usuari i la contrasenya establerts al fitxer de configuració de Shiro.


Com instal·lar Cezerin eCommerce a Ubuntu 18.04

Com instal·lar Cezerin eCommerce a Ubuntu 18.04

Cezerin és una aplicació web progressiva de comerç electrònic de codi obert creada amb React i Node.js. En aquest tutorial, aprendràs a implementar un Cezerin per a productio

Com instal·lar laplicació de butlletí Mailtrain a Ubuntu 16.04

Com instal·lar laplicació de butlletí Mailtrain a Ubuntu 16.04

Utilitzeu un sistema diferent? Mailtrain és una aplicació de butlletí de codi obert allotjada basada en Node.js i MySQL/MariaDB. La font de Mailtrains és a GitHub. Thi

Com instal·lar Osclass a Ubuntu 18.04 LTS

Com instal·lar Osclass a Ubuntu 18.04 LTS

Utilitzeu un sistema diferent? Osclass és un projecte de codi obert que us permet crear fàcilment un lloc classificat sense cap coneixement tècnic. La seva font

Com instal·lar Zammad 2.0 a Ubuntu 16.04 LTS

Com instal·lar Zammad 2.0 a Ubuntu 16.04 LTS

Utilitzeu un sistema diferent? Zammad és un sistema d'assistència/tickets de codi obert dissenyat per als equips d'atenció al client. Amb Zammad, atenció al client

Com instal·lar Matomo Analytics a Ubuntu 16.04

Com instal·lar Matomo Analytics a Ubuntu 16.04

Utilitzeu un sistema diferent? Matomo (abans Piwik) és una plataforma d'anàlisi de codi obert, una alternativa oberta a Google Analytics. La font de Matomo està allotjada o

Instal·lació dAkaunting a Ubuntu 16.04

Instal·lació dAkaunting a Ubuntu 16.04

Utilitzeu un sistema diferent? Akaunting és un programari de comptabilitat en línia gratuït, de codi obert i dissenyat per a petites empreses i autònoms. Està construït amb enginy

Com instal·lar Apache Zeppelin a Ubuntu 16.04

Com instal·lar Apache Zeppelin a Ubuntu 16.04

Utilitzeu un sistema diferent? Apache Zeppelin és un quadern de codi obert basat en la web i una eina de col·laboració per a la ingestió de dades interactives, el descobriment, l'anàlisi i

Com instal·lar InvoicePlane a Ubuntu 16.04

Com instal·lar InvoicePlane a Ubuntu 16.04

Utilitzeu un sistema diferent? InvoicePlane és una aplicació de facturació gratuïta i de codi obert. El seu codi font es pot trobar en aquest dipòsit de Github. Aquesta guia

Com instal·lar Attendize a Ubuntu 18.04 LTS

Com instal·lar Attendize a Ubuntu 18.04 LTS

Utilitzeu un sistema diferent? Attendize és una plataforma de venda d'entrades i gestió d'esdeveniments de codi obert basada en el Laravel PHP Framework. Assisteix al bacallà font

Com instal·lar Sentrifugo HRM a Ubuntu 16.04

Com instal·lar Sentrifugo HRM a Ubuntu 16.04

Utilitzeu un sistema diferent? Sentrifugo HRM és una aplicació de gestió de recursos humans (HRM) gratuïta i de codi obert. És un ric en funcions i fàcilment configurable

Com instal·lar Shopware CE a Ubuntu 18.04 LTS

Com instal·lar Shopware CE a Ubuntu 18.04 LTS

Utilitzeu un sistema diferent? Shopware és una plataforma de comerç electrònic de codi obert per a empreses en línia. El codi font de Shopware està allotjat a Github. Aquesta guia sho

Com instal·lar Open Web Analytics a Ubuntu 18.04

Com instal·lar Open Web Analytics a Ubuntu 18.04

Utilitzeu un sistema diferent? Open Web Analytics (OWA) és un programa d'anàlisi web de codi obert que es pot utilitzar per fer un seguiment i analitzar com la gent utilitza el vostre lloc web

Com instal·lar Taiga Project Management Tool a Ubuntu 16.04

Com instal·lar Taiga Project Management Tool a Ubuntu 16.04

Utilitzeu un sistema diferent? Taiga és una aplicació gratuïta i de codi obert per a la gestió de projectes. A diferència d'altres eines de gestió de projectes, Taiga utilitza un incremental

Com instal·lar Dolibarr a Ubuntu 16.04

Com instal·lar Dolibarr a Ubuntu 16.04

Utilitzeu un sistema diferent? Dolibarr és una planificació de recursos empresarials (ERP) i gestió de relacions amb els clients (CRM) de codi obert per a empreses. Dolibarr

Com instal·lar osTicket a Ubuntu 18.04 LTS

Com instal·lar osTicket a Ubuntu 18.04 LTS

Utilitzeu un sistema diferent? osTicket és un sistema d'entrades d'atenció al client de codi obert. El codi font osTicket està allotjat públicament a Github. En aquest tutorial

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

La Intel·ligència Artificial no està en el futur, és aquí mateix en el present. En aquest bloc Llegiu com les aplicacions d'Intel·ligència Artificial han afectat diversos sectors.

Atacs DDOS: una breu visió general

Atacs DDOS: una breu visió general

També ets víctima d'atacs DDOS i estàs confós sobre els mètodes de prevenció? Llegiu aquest article per resoldre les vostres consultes.

Us heu preguntat mai com guanyen diners els pirates informàtics?

Us heu preguntat mai com guanyen diners els pirates informàtics?

Potser haureu sentit que els pirates informàtics guanyen molts diners, però us heu preguntat mai com guanyen aquest tipus de diners? anem a discutir.

Invents revolucionaris de Google que us facilitaran la vida.

Invents revolucionaris de Google que us facilitaran la vida.

Vols veure els invents revolucionaris de Google i com aquests invents van canviar la vida de tots els éssers humans actuals? A continuació, llegiu al bloc per veure els invents de Google.

Divendres essencial: què va passar amb els cotxes impulsats per IA?

Divendres essencial: què va passar amb els cotxes impulsats per IA?

El concepte de cotxes autònoms per sortir a les carreteres amb l'ajuda de la intel·ligència artificial és un somni que tenim des de fa temps. Però malgrat les diverses promeses, no es veuen enlloc. Llegeix aquest blog per saber-ne més...

Singularitat tecnològica: un futur llunyà de la civilització humana?

Singularitat tecnològica: un futur llunyà de la civilització humana?

A mesura que la ciència evoluciona a un ritme ràpid, fent-se càrrec de molts dels nostres esforços, també augmenten els riscos de sotmetre'ns a una singularitat inexplicable. Llegeix, què pot significar per a nosaltres la singularitat.

Evolució de lemmagatzematge de dades – Infografia

Evolució de lemmagatzematge de dades – Infografia

Els mètodes d'emmagatzematge de les dades que han anat evolucionant poden ser des del naixement de les dades. Aquest bloc tracta l'evolució de l'emmagatzematge de dades a partir d'una infografia.

Funcionalitats de les capes darquitectura de referència de Big Data

Funcionalitats de les capes darquitectura de referència de Big Data

Llegeix el blog per conèixer de la manera més senzilla les diferents capes de l'Arquitectura Big Data i les seves funcionalitats.

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

En aquest món digital, els dispositius domèstics intel·ligents s'han convertit en una part crucial de les vides. A continuació, es mostren alguns avantatges sorprenents dels dispositius domèstics intel·ligents sobre com fan que la nostra vida valgui la pena i sigui més senzilla.

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Recentment, Apple va llançar macOS Catalina 10.15.4, una actualització de suplements per solucionar problemes, però sembla que l'actualització està causant més problemes que provoquen el bloqueig de les màquines Mac. Llegiu aquest article per obtenir més informació