Kako instalirati Apache Zeppelin na Ubuntu 16.04

Apache Zeppelin je web-bazirano prijenosno računalo otvorenog koda i alat za suradnju za interaktivno unos podataka, otkrivanje, analitiku i vizualizaciju. Zeppelin podržava više od 20 jezika uključujući Apache Spark, SQL, R, Elasticsearch i mnoge druge. Apache Zeppelin vam omogućuje stvaranje prekrasnih dokumenata vođenih podacima i pregled rezultata vaše analitike.

Preduvjeti

  • Instanca poslužitelja Vultr Ubuntu 16.04.
  • Korisnik sudoa .
  • Naziv domene usmjeren prema poslužitelju.

Za ovaj vodič koristit ćemo zeppelin.example.com kao ime domene usmjereno na Vultr instancu. Svakako zamijenite sva pojavljivanja primjera naziva domene stvarnim.

Ažurirajte svoj osnovni sustav pomoću vodiča Kako ažurirati Ubuntu 16.04 . Nakon što se vaš sustav ažurira, nastavite s instalacijom Jave.

Instalirajte Javu

Apache Zeppelin je napisan na Javi, stoga je za rad potreban JDK. Dodajte Ubuntu spremište za Oracle Java 8.

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

Instalirajte Oracle Javu.

sudo apt -y install oracle-java8-installer

Provjerite njegovu verziju.

java -version

Vidjet ćete sljedeći izlaz.

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)

Postavite zadani put za Javu instaliranjem sljedećeg paketa.

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

Možete provjeriti je li JAVA_HOMEpostavljeno pokretanjem.

echo $JAVA_HOME

Vidjet ćeš.

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

Ako uopće ne vidite nikakav izlaz, morat ćete se odjaviti iz trenutne ljuske i ponovno se prijaviti.

Instalirajte Zeppelin

Apache Zeppelin isporučuje sve ovisnosti zajedno s binarnim datotekama, tako da ne moramo instalirati ništa drugo osim Jave. Preuzmite binarni program Zeppelin na svoj sustav. Najnoviju verziju aplikacije uvijek možete pronaći na stranici za preuzimanje Zeppelina .

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

Ekstrahirajte arhivu.

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

Gornja naredba će izdvojiti arhivu u /opt/zeppelin-0.7.3-bin-all. Preimenujte imenik radi praktičnosti.

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

Apache Zeppelin je sada instaliran. Možete odmah pokrenuti aplikaciju, ali ona vam neće biti dostupna, jer samo sluša localhost. Apache Zeppelin ćemo konfigurirati kao uslugu. Nginx ćemo također konfigurirati kao obrnuti proxy.

Konfigurirajte Systemd

U ovom koraku ćemo postaviti Systemd jediničnu datoteku za Zeppelin aplikaciju. To će osigurati da se proces prijave automatski pokrene nakon ponovnog pokretanja sustava i kvarova.

Iz sigurnosnih razloga stvorite neprivilegiranog korisnika za pokretanje Zeppelin procesa.

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

Omogućite vlasništvo nad datotekama novostvorenom korisniku Zeppelina.

sudo chown -R zeppelin:zeppelin /opt/zeppelin

Napravite novu datoteku Systemd servisne jedinice.

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

Popunite datoteku sljedećim.

[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

Pokrenite aplikaciju.

sudo systemctl start zeppelin

Omogućite uslugu Zeppelin da se automatski pokrene prilikom pokretanja.

sudo systemctl enable zeppelin

Kako biste bili sigurni da je usluga pokrenuta, možete pokrenuti sljedeće.

sudo systemctl status zeppelin

Konfigurirajte obrnuti proxy

Prema zadanim postavkama, Zeppelin poslužitelj sluša localhost port 8080. Koristit ćemo Nginx kao obrnuti proxy tako da se aplikaciji može pristupiti putem standarda HTTP i HTTPS portova. Također ćemo konfigurirati Nginx da koristi SSL generiran s Let's Encrypt besplatnim SSL CA.

Instalirajte Nginx.

sudo apt -y install nginx

Pokrenite Nginx i omogućite mu automatsko pokretanje prilikom pokretanja.

sudo systemctl start nginx
sudo systemctl enable nginx

Dodajte Certbot repozitorij.

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

Instalirajte Certbot, klijentsku aplikaciju za Let's Encrypt CA.

sudo apt -y install certbot

Napomena : Za dobivanje certifikata od Let's Encrypt CA, domena za koju se certifikati trebaju generirati mora biti usmjerena prema poslužitelju. Ako nije, izvršite potrebne promjene u DNS zapisima domene i pričekajte da se DNS širi prije nego što ponovno uputite zahtjev za certifikatom. Certbot provjerava autoritet domene prije pružanja certifikata.

Generirajte SSL certifikate.

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

Generirani certifikati vjerojatno će biti pohranjeni u /etc/letsencrypt/live/zeppelin.example.com/. SSL certifikat će biti pohranjen kao, fullchain.pem a privatni ključ će biti pohranjen kao privkey.pem.

Let's Encrypt certifikati istječu za 90 dana, stoga je preporučljivo postaviti automatsku obnovu certifikata pomoću Cron poslova.

Otvorite cron datoteku posla.

sudo crontab -e

Dodajte sljedeći redak na kraj datoteke.

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

Gornji cron posao će se izvoditi svaki dan u 5:30 ujutro. Ako potvrda istekne, automatski će se obnoviti.

Napravite novu datoteku bloka poslužitelja za Zeppelin stranicu.

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

Popunite datoteku.

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;
    }
  }

Aktivirajte konfiguracijsku datoteku.

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

Ponovno pokrenite Nginx kako bi promjene stupile na snagu.

sudo systemctl restart nginx zeppelin

Zeppelin je sada dostupan na sljedećoj adresi.

https://zeppelin.example.com

Prema zadanim postavkama, autentifikacija nije omogućena, tako da možete izravno koristiti aplikaciju.

Budući da je aplikacija dostupna svima, bilježnice koje izradite također su dostupne svima. Vrlo je važno onemogućiti anonimni pristup i omogućiti autentifikaciju kako bi samo provjereni korisnici mogli pristupiti aplikaciji.

Onemogućite anonimni pristup

Da biste onemogućili zadani anonimni pristup, kopirajte predložak konfiguracijske datoteke na njegovu lokaciju uživo.

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

Uredite konfiguracijsku datoteku.

sudo nano conf/zeppelin-site.xml

Pronađite sljedeće retke u datoteci.

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

Promijenite vrijednost na false da biste onemogućili anonimni pristup.

Omogući Shiro autentifikaciju

Sada kada smo onemogućili anonimni pristup, moramo omogućiti neku vrstu mehanizma provjere autentičnosti kako bi se privilegirani korisnici mogli prijaviti. Apache Zeppelin koristi Apache Shiro autentifikaciju. Kopirajte konfiguracijsku datoteku Shiro.

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

Uredite konfiguracijsku datoteku.

sudo nano conf/shiro.ini

Pronađite sljedeće retke u datoteci.

[users]

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

Popis sadrži korisničko ime, lozinku i uloge korisnika. Za sada ćemo koristiti samo admin i user1. Promjena lozinke admin i user1 te onemogućiti ostale korisnike komentiranjem. Također možete promijeniti korisničko ime i uloge korisnika. Da biste saznali više o korisnicima i ulogama Apache Shiroa, pročitajte vodič za autorizaciju za Shiro .

Nakon što promijenite lozinke, blok koda bi trebao izgledati ovako.

[users]

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

Sada ponovno pokrenite Zeppelin kako biste primijenili promjene.

sudo systemctl restart zeppelin

Vidjet ćete da je autentifikacija omogućena i moći ćete se prijaviti pomoću korisničkog imena i lozinke postavljene u konfiguracijskoj datoteci Shiro.


Kako instalirati Microweber na CentOS 7

Kako instalirati Microweber na CentOS 7

Korištenje drugog sustava? Microweber je CMS i internetska trgovina otvorenog koda povuci i ispusti. Izvorni kod Microwebera nalazi se na GitHubu. Ovaj vodič će vam pokazati

Kako instalirati Cezerin eCommerce na Ubuntu 18.04

Kako instalirati Cezerin eCommerce na Ubuntu 18.04

Cezerin je progresivna web aplikacija otvorenog koda za e-trgovinu izgrađena pomoću Reacta i Node.js. U ovom vodiču naučit ćete kako primijeniti Cezerin za proizvodnju

Instalacija Microwebera na Debian 9

Instalacija Microwebera na Debian 9

Korištenje drugog sustava? Microweber je CMS i internetska trgovina otvorenog koda povuci i ispusti. Izvorni kod Microwebera nalazi se na GitHubu. Ovaj vodič će vam pokazati

Instalacija Akauntinga na Debian 9

Instalacija Akauntinga na Debian 9

Korištenje drugog sustava? Akaunting je besplatan računovodstveni softver otvorenog koda i online računovodstveni softver dizajniran za male tvrtke i slobodnjake. Izgrađen je duhovito

OpenBSD kao rješenje za e-trgovinu s PrestaShopom i Apacheom

OpenBSD kao rješenje za e-trgovinu s PrestaShopom i Apacheom

Uvod Ovaj vodič demonstrira OpenBSD kao rješenje za e-trgovinu koristeći PrestaShop i Apache. Apache je potreban jer PrestaShop ima složeni UR

Kako instalirati Open Web Analytics na Debian 9

Kako instalirati Open Web Analytics na Debian 9

Korištenje drugog sustava? Open Web Analytics (OWA) je program za web analitiku otvorenog koda koji se može koristiti za praćenje i analizu kako ljudi koriste vašu web stranicu

Kako instalirati Osclass na Ubuntu 18.04 LTS

Kako instalirati Osclass na Ubuntu 18.04 LTS

Korištenje drugog sustava? Osclass je projekt otvorenog koda koji vam omogućuje jednostavnu izradu klasificirane stranice bez ikakvog tehničkog znanja. Njegov izvor

Kako instalirati Osclass na Debian 9

Kako instalirati Osclass na Debian 9

Korištenje drugog sustava? Osclass je projekt otvorenog koda koji vam omogućuje jednostavnu izradu klasificirane stranice bez ikakvog tehničkog znanja. Njegov izvor

Kako instalirati OpenMeetings na Ubuntu 16.04

Kako instalirati OpenMeetings na Ubuntu 16.04

Korištenje drugog sustava? Apache OpenMeetings je aplikacija za web konferencije otvorenog koda. Napisan je na Javi i podržava više poslužitelja baze podataka. ja

Kako instalirati Dolibarr na Debian 9

Kako instalirati Dolibarr na Debian 9

Korištenje drugog sustava? Dolibarr je open source planiranje poslovnih resursa (ERP) i upravljanje odnosima s klijentima (CRM) za poduzeća. Dolibarr

Kako instalirati Zammad 2.0 na Ubuntu 16.04 LTS

Kako instalirati Zammad 2.0 na Ubuntu 16.04 LTS

Korištenje drugog sustava? Zammad je open source helpdesk/sustav za prodaju karata dizajniran za timove korisničke podrške. Sa Zammadom, usluga za korisnike

Kako instalirati Matomo Analytics na Ubuntu 16.04

Kako instalirati Matomo Analytics na Ubuntu 16.04

Korištenje drugog sustava? Matomo (bivši Piwik) je analitička platforma otvorenog koda, otvorena alternativa Google Analyticsu. Matomo izvor je domaćin o

Instaliranje Akauntinga na Ubuntu 16.04

Instaliranje Akauntinga na Ubuntu 16.04

Korištenje drugog sustava? Akaunting je besplatan računovodstveni softver otvorenog koda i online računovodstveni softver dizajniran za male tvrtke i slobodnjake. Izgrađen je duhovito

Kako instalirati Apache Zeppelin na Ubuntu 16.04

Kako instalirati Apache Zeppelin na Ubuntu 16.04

Korištenje drugog sustava? Apache Zeppelin je web-bazirano prijenosno računalo otvorenog koda i alat za suradnju za interaktivno unos podataka, otkrivanje, analitiku i

Kako instalirati Matomo Analytics na Debian 9

Kako instalirati Matomo Analytics na Debian 9

Korištenje drugog sustava? Matomo (bivši Piwik) je analitička platforma otvorenog koda, otvorena alternativa Google Analyticsu. Matomo izvor je domaćin o

Kako instalirati InvoicePlane na Ubuntu 16.04

Kako instalirati InvoicePlane na Ubuntu 16.04

Korištenje drugog sustava? InvoicePlane je besplatna aplikacija za fakturiranje otvorenog koda. Njegov izvorni kod može se pronaći na ovom Github repozitoriju. Ovaj vodič

Kako instalirati Alfresco Community Edition na CentOS 7

Kako instalirati Alfresco Community Edition na CentOS 7

Korištenje drugog sustava? Alfresco Community Edition verzija je otvorenog koda Alfresco Content Services. Napisan je na Javi i koristi PostgreSQL t

Kako instalirati Attendize na Ubuntu 18.04 LTS

Kako instalirati Attendize na Ubuntu 18.04 LTS

Korištenje drugog sustava? Attendize je platforma za prodaju ulaznica i upravljanje događajima otvorenog koda koja se temelji na Laravel PHP Frameworku. Prisustvujte izvornom bakalara

Kako instalirati Shopware CE na Debian 9

Kako instalirati Shopware CE na Debian 9

Korištenje drugog sustava? Shopware je platforma za e-trgovinu otvorenog koda za online tvrtke. Izvorni kod Shopwaresa nalazi se na Githubu. Ovaj vodič će

Kako instalirati Sentrifugo HRM na Ubuntu 16.04

Kako instalirati Sentrifugo HRM na Ubuntu 16.04

Korištenje drugog sustava? Sentrifugo HRM je besplatna aplikacija za upravljanje ljudskim resursima otvorenog koda (HRM). To je bogata značajkama i lako se konfigurira

Uspon strojeva: primjene AI u stvarnom svijetu

Uspon strojeva: primjene AI u stvarnom svijetu

Umjetna inteligencija nije u budućnosti, ovdje je upravo u sadašnjosti. U ovom blogu Pročitajte kako su aplikacije umjetne inteligencije utjecale na različite sektore.

DDOS napadi: kratak pregled

DDOS napadi: kratak pregled

Jeste li i vi žrtva DDOS napada i zbunjeni ste metodama prevencije? Pročitajte ovaj članak kako biste riješili svoje upite.

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Možda ste čuli da hakeri zarađuju mnogo novca, ali jeste li se ikada zapitali kako zarađuju toliki novac? raspravimo.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Želite li vidjeti revolucionarne izume Googlea i kako su ti izumi promijenili život svakog čovjeka danas? Zatim čitajte na blogu kako biste vidjeli Googleove izume.

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Koncept samovozećih automobila koji će krenuti na ceste uz pomoć umjetne inteligencije san je koji već neko vrijeme imamo. No, unatoč nekoliko obećanja, nigdje ih nema. Pročitajte ovaj blog kako biste saznali više…

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Kako se znanost razvija velikom brzinom, preuzimajući mnoge naše napore, raste i rizik da se podvrgnemo neobjašnjivoj Singularnosti. Pročitajte što bi za nas mogla značiti singularnost.

Evolucija pohrane podataka – Infografika

Evolucija pohrane podataka – Infografika

Metode pohrane podataka su se razvijale možda od rođenja podataka. Ovaj blog pokriva evoluciju pohrane podataka na temelju infografike.

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Pročitajte blog kako biste na najjednostavniji način upoznali različite slojeve u arhitekturi velikih podataka i njihove funkcionalnosti.

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

U ovom digitalnom svijetu, pametni kućni uređaji postali su ključni dio života. Evo nekoliko nevjerojatnih prednosti pametnih kućnih uređaja o tome kako naš život čine vrijednim življenja i jednostavnijim.

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Nedavno je Apple izdao macOS Catalina 10.15.4 dodatak ažuriranju kako bi riješio probleme, ali čini se da ažuriranje uzrokuje više problema koji dovode do zalijevanja mac strojeva. Pročitajte ovaj članak da biste saznali više