Ako nainštalovať Apache Zeppelin na Ubuntu 16.04

Apache Zeppelin je webový notebook s otvoreným zdrojovým kódom a nástroj na spoluprácu na interaktívne prijímanie údajov, ich zisťovanie, analýzu a vizualizáciu. Zeppelin podporuje viac ako 20 jazykov vrátane Apache Spark, SQL, R, Elasticsearch a mnohých ďalších. Apache Zeppelin vám umožňuje vytvárať nádherné dokumenty založené na údajoch a vidieť výsledky vašich analýz.

Predpoklady

  • Inštancia servera Vultr Ubuntu 16.04.
  • Sudo používateľ .
  • Názov domény nasmerovaný na server.

V tomto návode použijeme zeppelin.example.com názov domény smerujúci k inštancii Vultr. Uistite sa, že ste nahradili všetky výskyty vzorového názvu domény skutočným.

Aktualizujte svoj základný systém pomocou príručky Ako aktualizovať Ubuntu 16.04 . Po aktualizácii systému pokračujte v inštalácii Java.

Nainštalujte Java

Apache Zeppelin je napísaný v jazyku Java, takže na fungovanie vyžaduje JDK. Pridajte úložisko Ubuntu pre Oracle Java 8.

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

Nainštalujte Oracle Java.

sudo apt -y install oracle-java8-installer

Overte si jeho verziu.

java -version

Uvidíte nasledujúci výstup.

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)

Nastavte predvolenú cestu pre Java inštaláciou nasledujúceho balíka.

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

Či JAVA_HOMEje nastavené, môžete overiť spustením.

echo $JAVA_HOME

Uvidíš.

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

Ak nevidíte žiadny výstup, budete sa musieť odhlásiť z aktuálneho shellu a znova sa prihlásiť.

Nainštalujte Zeppelin

Apache Zeppelin dodáva všetky závislosti spolu s binárnymi súbormi, takže okrem Java nemusíme inštalovať nič iné. Stiahnite si binárny súbor Zeppelin do vášho systému. Najnovšiu verziu aplikácie vždy nájdete na stránke sťahovania Zeppelin .

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

Rozbaľte archív.

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

Vyššie uvedený príkaz rozbalí archív do /opt/zeppelin-0.7.3-bin-all. Z dôvodu pohodlia premenujte adresár.

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

Apache Zeppelin je teraz nainštalovaný. Aplikáciu môžete okamžite spustiť, ale nebude vám prístupná, pretože iba počúva localhost. Nakonfigurujeme Apache Zeppelin ako službu. Nakonfigurujeme tiež Nginx ako reverzný proxy.

Nakonfigurujte Systemd

V tomto kroku nastavíme súbor jednotiek Systemd pre aplikáciu Zeppelin. Tým sa zabezpečí, že proces aplikácie sa automaticky spustí pri reštarte systému a zlyhaniach.

Z bezpečnostných dôvodov vytvorte neprivilegovaného používateľa na spustenie procesu Zeppelin.

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

Poskytnite vlastníctvo súborov novovytvorenému používateľovi Zeppelin.

sudo chown -R zeppelin:zeppelin /opt/zeppelin

Vytvorte nový súbor servisnej jednotky Systemd.

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

Naplňte súbor nasledujúcim.

[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

Spustite aplikáciu.

sudo systemctl start zeppelin

Povoľte automatické spustenie služby Zeppelin pri spustení systému.

sudo systemctl enable zeppelin

Aby ste sa uistili, že služba beží, môžete spustiť nasledujúce.

sudo systemctl status zeppelin

Konfigurácia reverzného proxy

Server Zeppelin štandardne počúva localhost na porte 8080. Nginx budeme používať ako reverzný proxy, aby bolo možné pristupovať k aplikácii cez štandard HTTP a HTTPS porty. Nakonfigurujeme tiež Nginx tak, aby používal SSL vygenerovaný pomocou Let's Encrypt bezplatnej SSL CA.

Nainštalujte Nginx.

sudo apt -y install nginx

Spustite Nginx a povoľte jej automatické spustenie pri štarte.

sudo systemctl start nginx
sudo systemctl enable nginx

Pridajte úložisko Certbot.

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

Nainštalujte Certbot, čo je klientska aplikácia pre Let's Encrypt CA.

sudo apt -y install certbot

Note: To obtain certificates from Let's Encrypt CA, the domain for which the certificates are to be generated must be pointed towards the server. If not, make the necessary changes to the DNS records of the domain and wait for the DNS to propagate before making the certificate request again. Certbot checks the domain authority before providing the certificates.

Generate the SSL certificates.

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

The generated certificates are likely to be stored in /etc/letsencrypt/live/zeppelin.example.com/. The SSL certificate will be stored as fullchain.pem and private key will be stored as privkey.pem.

Let's Encrypt certificates expire in 90 days, hence it is recommended to set up auto-renewal of the certificates using Cron jobs.

Open the cron job file.

sudo crontab -e

Add the following line at the end of the file.

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

Vyššie uvedená úloha cron sa spustí každý deň o 5:30. Ak platnosť certifikátu vyprší, automaticky sa obnoví.

Vytvorte nový blokový súbor servera pre lokalitu Zeppelin.

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

Vyplňte súbor.

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

Aktivujte konfiguračný súbor.

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

Reštartujte Nginx, aby sa zmeny prejavili.

sudo systemctl restart nginx zeppelin

Zeppelin je teraz dostupný na nasledujúcej adrese.

https://zeppelin.example.com

V predvolenom nastavení nie je povolené žiadne overovanie, takže aplikáciu môžete používať priamo.

Keďže je aplikácia prístupná pre každého, vami vytvorené poznámkové bloky sú prístupné každému. Je veľmi dôležité zakázať anonymný prístup a povoliť autentifikáciu, aby k aplikácii mali prístup iba overení používatelia.

Zakázať anonymný prístup

Ak chcete zakázať predvolený anonymný prístup, skopírujte šablónu konfiguračného súboru do jej aktuálneho umiestnenia.

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

Upravte konfiguračný súbor.

sudo nano conf/zeppelin-site.xml

Nájdite v súbore nasledujúce riadky.

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

Zmeňte hodnotu na, false aby ste zakázali anonymný prístup.

Povoliť overenie Shiro

Teraz, keď sme zakázali anonymný prístup, musíme povoliť nejaký druh autentifikačného mechanizmu, aby sa privilegovaní používatelia mohli prihlásiť. Apache Zeppelin používa autentifikáciu Apache Shiro. Skopírujte konfiguračný súbor Shiro.

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

Upravte konfiguračný súbor.

sudo nano conf/shiro.ini

Nájdite v súbore nasledujúce riadky.

[users]

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

Zoznam obsahuje používateľské meno, heslo a roly používateľov. Zatiaľ budeme používať len admin a user1. Zmeňte heslo admin a user1 a deaktivujte ostatných používateľov ich komentovaním. Môžete tiež zmeniť používateľské meno a roly používateľov. Ak sa chcete dozvedieť viac o používateľoch a rolách Apache Shiro, prečítajte si príručku autorizácie Shiro .

Po zmene hesiel by sa blok kódu mal páčiť.

[users]

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

Teraz reštartujte Zeppelin, aby sa zmeny uplatnili.

sudo systemctl restart zeppelin

Uvidíte, že overenie bolo povolené a budete sa môcť prihlásiť pomocou používateľského mena a hesla nastaveného v konfiguračnom súbore Shiro.


Ako nainštalovať Microweber na CentOS 7

Ako nainštalovať Microweber na CentOS 7

Používate iný systém? Microweber je open source drag and drop CMS a online obchod. Zdrojový kód Microweber je umiestnený na GitHub. Tento návod vám to ukáže

Ako nainštalovať osTicket na FreeBSD 12

Ako nainštalovať osTicket na FreeBSD 12

Používate iný systém? osTicket je open-source systém podpory zákazníkov. Zdrojový kód osTicket je verejne hosťovaný na Github. V tomto návode

Ako nainštalovať platformu elektronického obchodu Sylius na Ubuntu 18.04 LTS

Ako nainštalovať platformu elektronického obchodu Sylius na Ubuntu 18.04 LTS

Používate iný systém? Sylius je moderná platforma elektronického obchodu pre PHP, založená na Symfony Framework. Zdroj Sylius je na GitHub. Tento sprievodca bude wal

Ako nainštalovať Cezerin eCommerce na Ubuntu 18.04

Ako nainštalovať Cezerin eCommerce na Ubuntu 18.04

Cezerin je progresívna webová aplikácia elektronického obchodu s otvoreným zdrojovým kódom vytvorená pomocou React a Node.js. V tomto návode sa naučíte, ako nasadiť Cezerin pre produkciu

Ako nainštalovať OpenMeetings na CentOS 7

Ako nainštalovať OpenMeetings na CentOS 7

Používate iný systém? Apache OpenMeetings je open source webová konferenčná aplikácia. Je napísaný v jazyku Java a podporuje viacero databázových serverov. ja

Inštalácia Microweber na Debian 9

Inštalácia Microweber na Debian 9

Používate iný systém? Microweber je open source drag and drop CMS a online obchod. Zdrojový kód Microweber je umiestnený na GitHub. Tento návod vám to ukáže

Inštalácia Akaunting na Debian 9

Inštalácia Akaunting na Debian 9

Používate iný systém? Akaunting je bezplatný, open source a online účtovný softvér určený pre malé podniky a živnostníkov. Je postavený vtipne

Ako nainštalovať osTicket na CentOS 7

Ako nainštalovať osTicket na CentOS 7

Používate iný systém? osTicket je open-source systém podpory zákazníkov. Zdrojový kód osTicket je verejne hosťovaný na Github. V tomto návode

Ako nainštalovať Open Web Analytics na CentOS 7

Ako nainštalovať Open Web Analytics na CentOS 7

Používate iný systém? Open Web Analytics (OWA) je open source webový analytický program, ktorý možno použiť na sledovanie a analýzu toho, ako ľudia používajú vaše webové stránky.

Ako nainštalovať Open Web Analytics na Debian 9

Ako nainštalovať Open Web Analytics na Debian 9

Používate iný systém? Open Web Analytics (OWA) je open source webový analytický program, ktorý možno použiť na sledovanie a analýzu toho, ako ľudia používajú vaše webové stránky.

Ako nainštalovať Osclass na Ubuntu 18.04 LTS

Ako nainštalovať Osclass na Ubuntu 18.04 LTS

Používate iný systém? Osclass je projekt s otvoreným zdrojovým kódom, ktorý vám umožňuje jednoducho vytvoriť klasifikovanú stránku bez akýchkoľvek technických znalostí. Jeho zdroj

Ako nainštalovať Osclass na Debian 9

Ako nainštalovať Osclass na Debian 9

Používate iný systém? Osclass je projekt s otvoreným zdrojovým kódom, ktorý vám umožňuje jednoducho vytvoriť klasifikovanú stránku bez akýchkoľvek technických znalostí. Jeho zdroj

Ako nainštalovať OpenMeetings na Ubuntu 16.04

Ako nainštalovať OpenMeetings na Ubuntu 16.04

Používate iný systém? Apache OpenMeetings je open source webová konferenčná aplikácia. Je napísaný v jazyku Java a podporuje viacero databázových serverov. ja

Inštalácia Microweber na FreeBSD 12

Inštalácia Microweber na FreeBSD 12

Používate iný systém? Úvod Microweber je open source drag and drop CMS a online obchod. Zdrojový kód Microweber je umiestnený na GitHub. Tento sprievodca

Ako nainštalovať Dolibarr na Debian 9

Ako nainštalovať Dolibarr na Debian 9

Používate iný systém? Dolibarr je open source plánovanie podnikových zdrojov (ERP) a riadenie vzťahov so zákazníkmi (CRM) pre podniky. Dolibarr

Ako nainštalovať Zammad 2.0 na CentOS 7

Ako nainštalovať Zammad 2.0 na CentOS 7

Používate iný systém? Zammad je open source helpdesk/ticketový systém určený pre tímy zákazníckej podpory. So Zammadom, zákazníckym servisom

Ako nainštalovať Zammad 2.0 na Ubuntu 16.04 LTS

Ako nainštalovať Zammad 2.0 na Ubuntu 16.04 LTS

Používate iný systém? Zammad je open source helpdesk/ticketový systém určený pre tímy zákazníckej podpory. So Zammadom, zákazníckym servisom

Ako nainštalovať X-Cart 5 na Ubuntu 18.04 LTS

Ako nainštalovať X-Cart 5 na Ubuntu 18.04 LTS

Používate iný systém? X-Cart je extrémne flexibilná open-source platforma elektronického obchodu s množstvom funkcií a integrácií. Zdrojový kód X-Cart je hostiteľ

Ako nainštalovať Matomo Analytics na FreeBSD 11

Ako nainštalovať Matomo Analytics na FreeBSD 11

Používate iný systém? Matomo (predtým Piwik) je open source analytická platforma, otvorená alternatíva k Google Analytics. Zdroj Matomo je hosťovaný o

Ako nainštalovať Matomo Analytics na Ubuntu 16.04

Ako nainštalovať Matomo Analytics na Ubuntu 16.04

Používate iný systém? Matomo (predtým Piwik) je open source analytická platforma, otvorená alternatíva k Google Analytics. Zdroj Matomo je hosťovaný o

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umelá inteligencia nie je v budúcnosti, je tu priamo v súčasnosti V tomto blogu si prečítajte, ako aplikácie umelej inteligencie ovplyvnili rôzne sektory.

Útoky DDOS: Stručný prehľad

Útoky DDOS: Stručný prehľad

Ste aj vy obeťou DDOS útokov a máte zmätok ohľadom metód prevencie? Ak chcete vyriešiť svoje otázky, prečítajte si tento článok.

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Možno ste už počuli, že hackeri zarábajú veľa peňazí, ale premýšľali ste niekedy nad tým, ako môžu zarábať také peniaze? poďme diskutovať.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Chcete vidieť revolučné vynálezy od Google a ako tieto vynálezy zmenili život každého dnešného človeka? Potom si prečítajte na blogu a pozrite si vynálezy spoločnosti Google.

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Koncept samoriadených áut vyraziť na cesty s pomocou umelej inteligencie je snom, ktorý máme už nejaký čas. Ale napriek niekoľkým prísľubom ich nikde nevidno. Prečítajte si tento blog a dozviete sa viac…

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Ako sa veda vyvíja rýchlym tempom a preberá veľa nášho úsilia, zvyšuje sa aj riziko, že sa vystavíme nevysvetliteľnej singularite. Prečítajte si, čo pre nás môže znamenať singularita.

Vývoj ukladania dát – Infografika

Vývoj ukladania dát – Infografika

Spôsoby ukladania údajov sa môžu vyvíjať už od zrodu údajov. Tento blog sa zaoberá vývojom ukladania údajov na základe infografiky.

Funkcionality vrstiev referenčnej architektúry veľkých dát

Funkcionality vrstiev referenčnej architektúry veľkých dát

Prečítajte si blog, aby ste čo najjednoduchším spôsobom spoznali rôzne vrstvy architektúry veľkých dát a ich funkcie.

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

V tomto digitálnom svete sa inteligentné domáce zariadenia stali kľúčovou súčasťou života. Tu je niekoľko úžasných výhod inteligentných domácich zariadení o tom, ako robia náš život, ktorý stojí za to žiť, a ktorý zjednodušujú.

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Spoločnosť Apple nedávno vydala doplnkovú aktualizáciu macOS Catalina 10.15.4 na opravu problémov, ale zdá sa, že táto aktualizácia spôsobuje ďalšie problémy, ktoré vedú k blokovaniu počítačov Mac. Prečítajte si tento článok a dozviete sa viac