วิธีการติดตั้งเครื่องมือจัดการโครงการไทก้าบน Ubuntu 16.04
ใช้ระบบที่แตกต่างกันอย่างไร ไทกะเป็นแอปพลิเคชั่นฟรีและโอเพ่นซอร์สสำหรับการจัดการโครงการ ซึ่งแตกต่างจากเครื่องมือการจัดการโครงการอื่น ๆ ไทก้าใช้ส่วนเพิ่ม
Apache Zeppelin เป็นโน้ตบุ๊กแบบโอเพ่นซอร์สบนเว็บและเครื่องมือการทำงานร่วมกันสำหรับการส่งข้อมูลการค้นพบการวิเคราะห์และการแสดงภาพแบบอินเทอร์แอคทีฟ Zeppelin รองรับ 20+ ภาษารวมถึง Apache Spark, SQL, R, Elasticsearch และอีกมากมาย Apache Zeppelin ให้คุณสร้างเอกสารที่ขับเคลื่อนด้วยข้อมูลที่สวยงามและดูผลลัพธ์ของการวิเคราะห์ของคุณ
สำหรับบทช่วยสอนนี้เราจะใช้zeppelin.example.com
เป็นชื่อโดเมนที่ชี้ไปยังอินสแตนซ์ Vultr โปรดตรวจสอบให้แน่ใจว่าได้แทนที่ชื่อโดเมนตัวอย่างทั้งหมดด้วยชื่อจริง
ปรับปรุงระบบฐานของคุณใช้คู่มือวิธีการปรับปรุง CentOS 7 เมื่อระบบของคุณอัปเดตแล้วให้ดำเนินการติดตั้ง Java
Apache Zeppelin เขียนขึ้นใน Java จึงต้องใช้ JDK ในการทำงาน ดาวน์โหลดแพคเกจ Oracle SE JDK RPM
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"
ติดตั้งแพ็คเกจที่ดาวน์โหลด
sudo yum -y localinstall jdk-8u151-linux-x64.rpm
หาก Java ติดตั้งสำเร็จคุณควรตรวจสอบเวอร์ชั่นของมันได้
java -version
คุณจะเห็นผลลัพธ์ต่อไปนี้
[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)
ก่อนที่เราจะสามารถดำเนินการต่อไปเราจะต้องตั้งค่าJAVA_HOME
และJRE_HOME
ตัวแปรสภาพแวดล้อม ค้นหาพา ธ สัมบูรณ์ของการเรียกใช้ JAVA ในระบบของคุณ
readlink -f $(which java)
คุณจะเห็นผลลัพธ์ที่คล้ายกัน
[user@vultr ~]$ readlink -f $(which java)
/usr/java/jdk1.8.0_151/jre/bin/java
ตอนนี้ตั้งค่าตัวแปรJAVA_HOME
และJRE_HOME
สภาพแวดล้อมตามเส้นทางของไดเรกทอรี Java
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
ดำเนินการbash_profile
ไฟล์
source ~/.bash_profile
ตอนนี้คุณสามารถเรียกใช้echo $JAVA_HOME
คำสั่งเพื่อตรวจสอบว่ามีการตั้งค่าตัวแปรสภาพแวดล้อม
[user@vultr ~]$ echo $JAVA_HOME
/usr/java/jdk1.8.0_151
Apache Zeppelin จัดส่งการอ้างอิงทั้งหมดพร้อมกับไฟล์ไบนารีดังนั้นเราจึงไม่จำเป็นต้องติดตั้งสิ่งอื่นนอกจาก Java ดาวน์โหลด Zeppelin binary บนระบบของคุณ คุณสามารถหารุ่นล่าสุดของแอพลิเคชันบนหน้าดาวน์โหลดเหาะ
wget http://www-us.apache.org/dist/zeppelin/zeppelin-0.7.3/zeppelin-0.7.3-bin-all.tgz
แตกไฟล์เก็บถาวร
sudo tar xf zeppelin-*-bin-all.tgz -C /opt
/opt/zeppelin-0.7.3-bin-all
คำสั่งดังกล่าวจะแยกเก็บไป เปลี่ยนชื่อไดเรกทอรีเพื่อความสะดวก
sudo mv /opt/zeppelin-*-bin-all /opt/zeppelin
ติดตั้ง Apache Zeppelin แล้ว คุณสามารถเริ่มแอปพลิเคชั่นได้ทันที แต่จะไม่สามารถเข้าถึงได้เนื่องจากฟังlocalhost
เฉพาะ เราจะกำหนดค่า Apache Zeppelin เป็นบริการ นอกจากนี้เรายังจะกำหนดค่าเว็บเซิร์ฟเวอร์ Nginx เป็นพร็อกซีย้อนกลับ
ในขั้นตอนนี้เราจะตั้งค่าไฟล์หน่วย Systemd สำหรับแอปพลิเคชัน Zeppelin สิ่งนี้จะช่วยให้มั่นใจได้ว่ากระบวนการแอปพลิเคชั่นจะเริ่มต้นโดยอัตโนมัติเมื่อระบบรีสตาร์ทและล้มเหลว
เพื่อเหตุผลด้านความปลอดภัยให้สร้างผู้ใช้ที่ไม่มีสิทธิพิเศษเพื่อเรียกใช้กระบวนการ Zeppelin
sudo adduser -d /opt/zeppelin -s /sbin/nologin zeppelin
มอบความเป็นเจ้าของไฟล์ให้กับผู้ใช้ Zeppelin ที่สร้างขึ้นใหม่
sudo chown -R zeppelin:zeppelin /opt/zeppelin
สร้างไฟล์หน่วยบริการ Systemd ใหม่
sudo nano /etc/systemd/system/zeppelin.service
เติมไฟล์ด้วยข้อมูลต่อไปนี้
[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
เริ่มแอปพลิเคชัน
sudo systemctl start zeppelin
เปิดใช้งานบริการ Zeppelin เพื่อเริ่มต้นโดยอัตโนมัติในเวลาบูต
sudo systemctl enable zeppelin
ในการตรวจสอบว่าบริการกำลังทำงานอยู่หรือไม่คุณสามารถเรียกใช้สิ่งต่อไปนี้
sudo systemctl status zeppelin
โดยค่าเริ่มต้นเซิร์ฟเวอร์เหาะฟังบนพอร์ตlocalhost
8080
ในบทช่วยสอนนี้เราจะใช้ Nginx เป็น reverse proxy เพื่อให้แอปพลิเคชันสามารถเข้าถึงได้ผ่านทางมาตรฐานHTTP
และHTTPS
พอร์ต นอกจากนี้เรายังจะกำหนดค่า Nginx ให้ใช้ SSL ที่สร้างด้วย Let's Encrypt SSL CA ฟรี
ติดตั้ง Nginx
sudo yum -y install nginx
เริ่ม Nginx และเปิดใช้งานให้เริ่มโดยอัตโนมัติในเวลาบูต
sudo systemctl start nginx
sudo systemctl enable nginx
ติดตั้ง Certbot ซึ่งเป็นแอปพลิเคชันไคลเอนต์สำหรับ Let's Encrypt CA
sudo yum -y install certbot
ก่อนที่คุณจะสามารถขอใบรับรองได้คุณจะต้องอนุญาตพอร์ต80
และ443
หรือมาตรฐานHTTP
และHTTPS
บริการผ่านไฟร์วอลล์
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
หมายเหตุ : ในการรับใบรับรองจาก Let's Encrypt CA โดเมนที่จะสร้างใบรับรองนั้นจะต้องชี้ไปที่เซิร์ฟเวอร์ หากไม่มีให้ทำการเปลี่ยนแปลงที่จำเป็นกับระเบียน DNS ของโดเมนและรอให้ DNS เผยแพร่ก่อนทำการขอใบรับรองอีกครั้ง Certbot ตรวจสอบอำนาจโดเมนก่อนที่จะให้ใบรับรอง
สร้างใบรับรอง SSL
sudo certbot certonly --webroot -w /usr/share/nginx/html -d zeppelin.example.com
/etc/letsencrypt/live/zeppelin.example.com/
ใบรับรองที่สร้างขึ้นมีแนวโน้มที่จะถูกเก็บไว้ใน ใบรับรอง SSL จะถูกเก็บไว้เป็นและคีย์ส่วนตัวจะถูกเก็บไว้เป็นfullchain.pem
privkey.pem
ลองเข้ารหัสใบรับรองหมดอายุใน 90 วันดังนั้นขอแนะนำให้ตั้งค่าการต่ออายุใบรับรองโดยอัตโนมัติโดยใช้งาน Cron
เปิดไฟล์งาน cron
sudo crontab -e
เพิ่มบรรทัดต่อไปนี้ที่ท้ายไฟล์
30 5 * * * /usr/bin/certbot renew --quiet
งาน cron ข้างต้นจะทำงานทุกวันเวลา 5.30 น. หากใบรับรองหมดอายุเนื่องจากหมดอายุใบรับรองจะต่ออายุโดยอัตโนมัติ
สร้างไฟล์บล็อกเซิร์ฟเวอร์ใหม่สำหรับไซต์ Zeppelin
sudo nano /etc/nginx/conf.d/zeppelin.example.com.conf
เติมไฟล์
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;
}
}
รีสตาร์ท Nginx เพื่อให้การเปลี่ยนแปลงมีผล
sudo systemctl restart nginx zeppelin
Zeppelin สามารถเข้าถึงได้ตามที่อยู่ต่อไปนี้
https://zeppelin.example.com
ตามค่าเริ่มต้นจะไม่มีการเปิดใช้งานการรับรองความถูกต้องดังนั้นคุณสามารถใช้แอปพลิเคชันได้โดยตรง
เนื่องจากทุกคนสามารถเข้าถึงแอปพลิเคชันได้โน้ตบุ๊คที่คุณสร้างจึงทุกคนสามารถเข้าถึงได้ จำเป็นอย่างยิ่งที่จะต้องปิดใช้งาน���ารเข้าถึงแบบไม่ระบุชื่อและเปิดใช้งานการรับรองความถูกต้องเพื่อให้ผู้ใช้ที่ผ่านการรับรองความถูกต้องเท่านั้นที่สามารถเข้าถึงแอปพลิเคชันได้
หากต้องการปิดใช้งานการเข้าถึงแบบไม่ระบุชื่อเริ่มต้นให้คัดลอกเทมเพลตไฟล์การกำหนดค่าไปยังตำแหน่งสด
cd /opt/zeppelin
sudo cp conf/zeppelin-site.xml.template conf/zeppelin-site.xml
แก้ไขไฟล์กำหนดค่า
sudo nano conf/zeppelin-site.xml
ค้นหาบรรทัดต่อไปนี้ในไฟล์
<property>
<name>zeppelin.anonymous.allowed</name>
<value>true</value>
เปลี่ยนค่าเป็นfalse
เพื่อปิดใช้งานการเข้าถึงแบบไม่ระบุชื่อ
ตอนนี้เราได้ปิดใช้งานการเข้าถึงแบบไม่ระบุชื่อเราต้องเปิดใช้กลไกการพิสูจน์ตัวตนบางประเภทเพื่อให้ผู้ใช้ที่มีสิทธิ์สามารถเข้าสู่ระบบ Apache Zeppelin ใช้การพิสูจน์ตัวตน Apache Shiro คัดลอกไฟล์กำหนดค่าของ Shiro
sudo cp conf/shiro.ini.template conf/shiro.ini
แก้ไขไฟล์กำหนดค่า
sudo nano conf/shiro.ini
ค้นหาบรรทัดต่อไปนี้ในไฟล์
[users]
admin = password1, admin
user1 = password2, role1, role2
user2 = password3, role3
user3 = password4, role2
รายการประกอบด้วยชื่อผู้ใช้รหัสผ่านและบทบาทของผู้ใช้ สำหรับตอนนี้เราจะใช้และadmin
user1
เปลี่ยนรหัสผ่านadmin
และuser1
และปิดการใช้งานผู้ใช้รายอื่นโดยการแสดงความคิดเห็น คุณยังสามารถเปลี่ยนชื่อผู้ใช้และบทบาทของผู้ใช้ ต้องการเรียนรู้เพิ่มเติมเกี่ยวกับผู้ใช้ Apache Shiro และบทบาทอ่านคู่มือการอนุมัติ Shiro
เมื่อคุณเปลี่ยนรหัสผ่านแล้วโค้ดบล็อกควรมีลักษณะเช่นนี้
[users]
admin = StrongPassword, admin
user1 = UserPassword, role1, role2
# user2 = password3, role3
# user3 = password4, role2
ตอนนี้เริ่ม Zeppelin ใหม่เพื่อใช้การเปลี่ยนแปลง
sudo systemctl restart zeppelin
คุณควรเห็นว่ามีการเปิดใช้งานการรับรองความถูกต้องและคุณจะสามารถเข้าสู่ระบบโดยใช้ชื่อผู้ใช้และรหัสผ่านที่ตั้งค่าในไฟล์กำหนดค่า Shiro
ใช้ระบบที่แตกต่างกันอย่างไร ไทกะเป็นแอปพลิเคชั่นฟรีและโอเพ่นซอร์สสำหรับการจัดการโครงการ ซึ่งแตกต่างจากเครื่องมือการจัดการโครงการอื่น ๆ ไทก้าใช้ส่วนเพิ่ม
ใช้ระบบที่แตกต่างกันอย่างไร Zammad เป็นระบบช่วยเหลือ / โอเพ่นซอร์สที่ออกแบบมาสำหรับทีมสนับสนุนลูกค้า ด้วย Zammad ฝ่ายบริการลูกค้า
ใช้ระบบที่แตกต่างกันอย่างไร X-Cart เป็นแพลตฟอร์มอีคอมเมิร์ซแบบโอเพ่นซอร์สที่มีความยืดหยุ่นสูงพร้อมคุณสมบัติและการผสานรวมมากมาย ซอร์สโค้ด X-Cart เป็นโฮสต์
ใช้ระบบที่แตกต่างกันอย่างไร Akaunting เป็นซอฟต์แวร์บัญชีโอเพ่นซอร์สและออนไลน์ฟรีที่ออกแบบมาสำหรับธุรกิจขนาดเล็กและมือปืนรับจ้าง มันถูกสร้างขึ้นด้วยปัญญา
ใช้ระบบที่แตกต่างกันอย่างไร Alfresco Community Edition เป็นเวอร์ชั่นโอเพ่นซอร์สของ Alfresco Content Services มันเขียนใน Java และใช้ PostgreSQL t
ใช้ระบบที่แตกต่างกันอย่างไร Alfresco Community Edition เป็นเวอร์ชั่นโอเพ่นซอร์สของ Alfresco Content Services มันเขียนใน Java และใช้ PostgreSQL t
ใช้ระบบที่แตกต่างกันอย่างไร Dolibarr เป็นการวางแผนทรัพยากรขององค์กรโอเพ่นซอร์ส (ERP) และการจัดการลูกค้าสัมพันธ์ (CRM) สำหรับธุรกิจ Dolibarr
ใช้ระบบที่แตกต่างกันอย่างไร Dolibarr เป็นการวางแผนทรัพยากรขององค์กรโอเพ่นซอร์ส (ERP) และการจัดการลูกค้าสัมพันธ์ (CRM) สำหรับธุรกิจ Dolibarr
ใช้ระบบที่แตกต่างกันอย่างไร osTicket เป็นระบบตั๋วสนับสนุนลูกค้าโอเพ่นซอร์ส ซอร์สโค้ดของ osTicket นั้นโฮสต์บน Github ในบทช่วยสอนนี้
ใช้ระบบที่แตกต่างกันอย่างไร Sentrifugo HRM เป็นแอพพลิเคชั่นการจัดการทรัพยากรมนุษย์แบบโอเพ่นซอร์ส มันเป็นคุณสมบัติที่หลากหลายและกำหนดค่าได้อย่างง่ายดาย
ใช้ระบบที่แตกต่างกันอย่างไร Akaunting เป็นซอฟต์แวร์บัญชีโอเพ่นซอร์สและออนไลน์ฟรีที่ออกแบบมาสำหรับธุรกิจขนาดเล็กและมือปืนรับจ้าง มันถูกสร้างขึ้นด้วยปัญญา
ใช้ระบบที่แตกต่างกันอย่างไร Matomo (ชื่อเดิม Piwik) เป็นแพลตฟอร์มการวิเคราะห์โอเพนซอร์ซซึ่งเป็นทางเลือกเปิดให้ Google Analytics แหล่งที่มาของ Matomo นั้นโฮสต์อยู่
ใช้ระบบที่แตกต่างกันอย่างไร Mailtrain เป็นแอปรับจดหมายข่าวแบบโอเพ่นซอร���สที่สร้างขึ้นบน Node.js และ MySQL / MariaDB แหล่งที่มาของ Mailtrains อยู่บน GitHub Thi
ใช้ระบบที่แตกต่างกันอย่างไร X-Cart เป็นแพลตฟอร์มอีคอมเมิร์ซแบบโอเพ่นซอร์สที่มีความยืดหยุ่นสูงพร้อมคุณสมบัติและการผสานรวมมากมาย ซอร์สโค้ด X-Cart เป็นโฮสต์
ใช้ระบบที่แตกต่างกันอย่างไร Attendize เป็นแพลตฟอร์มการจำหน่ายตั๋วโอเพ่นซอร์สและแพลตฟอร์มการจัดการเหตุการณ์โดยใช้ Laravel PHP Framework เข้าร่วมรหัสที่มา
Cezerin เป็นโอเพ่นซอร์ส eCommerce ทางเว็บโปรเกรสซีฟที่สร้างขึ้นโดยใช้ React และ Node.js ในบทช่วยสอนนี้คุณจะได้เรียนรู้วิธีการปรับใช้ Cezerin สำหรับผลิตผล
บทนำบทแนะนำนี้แสดงให้เห็นถึง OpenBSD เป็นโซลูชั่นอีคอมเมิร์ซโดยใช้ PrestaShop และ Apache ต้องการ Apache เนื่องจาก PrestaShop มี UR ที่ซับซ้อน
ใช้ระบบที่แตกต่างกันอย่างไร Osclass เป็นโครงการโอเพนซอร์ซที่ช่วยให้คุณสร้างไซต์ย่อยได้โดยง่ายโดยไม่มีความรู้ด้านเทคนิค มันคือรสเปรี้ยว
ใช้ระบบที่แตกต่างกันอย่างไร X-Cart เป็นแพลตฟอร์มอีคอมเมิร์ซแบบโอเพ่นซอร์สที่มีความยืดหยุ่นสูงพร้อมคุณสมบัติและการผสานรวมมากมาย ซอร์สโค้ด X-Cart เป็นโฮสต์
ใช้ระบบที่แตกต่างกันอย่างไร Open Web Analytics (OWA) เป็นโปรแกรมวิเคราะห์เว็บแบบโอเพ่นซอร์สที่สามารถใช้ในการติดตามและวิเคราะห์ว่าผู้คนใช้เว็บไซต์ของคุณอย่างไร
เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย
เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์
เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ
ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน
การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane
ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+
อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ
เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม
13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data
คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true