Kako instalirati Apache Zeppelin na CentOS 7

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 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 CentOS 7.
  • Korisnik sudoa .
  • Naziv domene usmjeren prema poslužitelju.

Za ovaj vodič koristit ćemo zeppelin.example.comkao 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 CentOS 7 . 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. Preuzmite Oracle SE JDK RPM paket.

wget --no-cookies --no-check-certificate --header "Cookie:oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x64.rpm"

Instalirajte preuzeti paket.

sudo yum -y localinstall jdk-8u151-linux-x64.rpm

Ako je Java uspješno instalirana, trebali biste moći provjeriti njezinu verziju.

java -version

Vidjet ćete sljedeći izlaz.

[user@vultr ~]$ java -version
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)

Prije nego što nastavimo dalje, morat ćemo postaviti varijable okruženja JAVA_HOMEi JRE_HOME. Pronađite apsolutni put JAVA izvršne datoteke u vašem sustavu.

readlink -f $(which java)

Vidjet ćete sličan izlaz.

[user@vultr ~]$ readlink -f $(which java)
/usr/java/jdk1.8.0_151/jre/bin/java

Sada postavite varijable JAVA_HOMEi JRE_HOMEokoline prema putu Java direktorija.

echo "export JAVA_HOME=/usr/java/jdk1.8.0_151" >> ~/.bash_profile
echo "export JRE_HOME=/usr/java/jdk1.8.0_151/jre" >> ~/.bash_profile

Izvršite bash_profiledatoteku.

source ~/.bash_profile

Sada možete pokrenuti echo $JAVA_HOMEnaredbu da provjerite je li varijabla okruženja postavljena.

[user@vultr ~]$ echo $JAVA_HOME
/usr/java/jdk1.8.0_151

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. Također ćemo konfigurirati Nginx web poslužitelj kao obrnuti proxy.

Konfigurirajte Systemd uslugu

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 adduser -d /opt/zeppelin -s /sbin/nologin 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

Da biste provjerili radi li usluga, možete pokrenuti sljedeće.

sudo systemctl status zeppelin

Konfigurirajte obrnuti proxy

Prema zadanim postavkama, Zeppelin poslužitelj sluša localhostport 8080. U ovom vodiču koristit ćemo Nginx kao obrnuti proxy tako da se aplikaciji može pristupiti putem standarda HTTPi HTTPSportova. Također ćemo konfigurirati Nginx da koristi SSL generiran s Let's Encrypt besplatnim SSL CA.

Instalirajte Nginx.

sudo yum -y install nginx

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

sudo systemctl start nginx
sudo systemctl enable nginx

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

sudo yum -y install certbot

Prije nego što možete zatražiti certifikate, morat ćete dopustiti port 80i/ 443ili standard HTTPi HTTPSusluge putem vatrozida.

sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload

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 /usr/share/nginx/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.pema 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/conf.d/zeppelin.example.com.conf

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

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, nije omogućena autentifikacija, 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 falseda 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 admini user1. Promjena lozinke admini user1te 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

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


Instalacija Microwebera na Ubuntu 16.04

Instalacija Microwebera na Ubuntu 16.04

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 Sylius eCommerce platformu na Ubuntu 18.04 LTS

Kako instalirati Sylius eCommerce platformu na Ubuntu 18.04 LTS

Korištenje drugog sustava? Sylius je moderna platforma za e-trgovinu za PHP, bazirana na Symfony Frameworku. Syliusov izvor je na GitHubu. Ovaj vodič će vam pomoći

Kako instalirati OpenMeetings na CentOS 7

Kako instalirati OpenMeetings na CentOS 7

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 aplikaciju Mailtrain Newsletter na Debian 9

Kako instalirati aplikaciju Mailtrain Newsletter na Debian 9

Korištenje drugog sustava? Mailtrain je aplikacija za bilten otvorenog koda koja se samostalno hostira i izgrađena na Node.js i MySQL/MariaDB. Izvor Mailtrains je na GitHubu. ti

Instaliranje Akauntinga na Fedora 28

Instaliranje Akauntinga na Fedora 28

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 aplikaciju Mailtrain Newsletter na Ubuntu 16.04

Kako instalirati aplikaciju Mailtrain Newsletter na Ubuntu 16.04

Korištenje drugog sustava? Mailtrain je aplikacija za bilten otvorenog koda koja se samostalno hostira i izgrađena na Node.js i MySQL/MariaDB. Izvor Mailtrains je na GitHubu. ti

Kako instalirati InvoicePlane na Fedora 28

Kako instalirati InvoicePlane na Fedora 28

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 osTicket na CentOS 7

Kako instalirati osTicket na CentOS 7

Korištenje drugog sustava? osTicket je sustav za kupnju ulaznica otvorenog koda za korisničku podršku. OsTicket izvorni kod je javno hostiran na Githubu. U ovom vodiču

Kako instalirati Open Web Analytics na CentOS 7

Kako instalirati Open Web Analytics na CentOS 7

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 X-Cart 5 na Fedora 31

Kako instalirati X-Cart 5 na Fedora 31

Korištenje drugog sustava? X-Cart je iznimno fleksibilna platforma za e-trgovinu otvorenog koda s mnoštvom značajki i integracija. Izvorni kod X-Cart je hoste

Kako instalirati X-Cart 5 na Debian 10

Kako instalirati X-Cart 5 na Debian 10

Korištenje drugog sustava? X-Cart je iznimno fleksibilna platforma za e-trgovinu otvorenog koda s mnoštvom značajki i integracija. Izvorni kod X-Cart je hoste

Kako instalirati Matomo Analytics na Fedora 28

Kako instalirati Matomo Analytics na Fedora 28

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 Zammad 2.0 na CentOS 7

Kako instalirati Zammad 2.0 na CentOS 7

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 X-Cart 5 na Ubuntu 18.04 LTS

Kako instalirati X-Cart 5 na Ubuntu 18.04 LTS

Korištenje drugog sustava? X-Cart je iznimno fleksibilna platforma za e-trgovinu otvorenog koda s mnoštvom značajki i integracija. Izvorni kod X-Cart je hoste

Kako instalirati Alfresco Community Edition na Ubuntu 16.04

Kako instalirati Alfresco Community Edition na Ubuntu 16.04

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

Kako instalirati Matomo Analytics na CentOS 7

Kako instalirati Matomo Analytics na CentOS 7

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 alat za upravljanje projektima Taiga na CentOS 7

Kako instalirati alat za upravljanje projektima Taiga na CentOS 7

Korištenje drugog sustava? Taiga je besplatna aplikacija otvorenog koda za upravljanje projektima. Za razliku od drugih alata za upravljanje projektima, Taiga koristi inkremente

Kako instalirati Osclass na Fedora 28

Kako instalirati Osclass na Fedora 28

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 Dolibarr na Fedora 28

Kako instalirati Dolibarr na Fedora 28

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

Instalacija Akauntinga na CentOS 7

Instalacija Akauntinga na CentOS 7

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

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