ระบบปฏิบัติการที่ใช้
- Windows 7
อุปกรณ์ฮาร์ดแวร์มีดังนี้
- บอร์ด Raspberry Pi Model B
- USB Cable
- SD card ขนาด 8 GB
- สาย LAN/RJ45
![]() |
บอร์ด Raspberry Pi Model B |
ซอฟแวร์หรือโปรแกรมที่ใช้มีดังนี้
- ownCloud ( Open-source, ซอฟต์แวร์ระดับองค์กร )
- Nginx ( Open-source, server ประสิทธิภาพสูง )
- OpenSSL (Open-source, ชุดเครื่องมือสำหรับ SSL/TLS)
- php5
- Raspbian Wheezy (ระบบปฏิบัติการบนบอร์ด Raspberry Pi)
- PuTTy for Windows
ขั้นตอนการติดตั้ง Cloud บน Raspberry Pi
1.) การเตรียมฮาร์ดแวร์และซอฟแวร์เพื่อเริ่มต้นใช้งานบอร์ด Raspberry Pi
ใช้คำสั่ง command line sudo raspi-config ดังที่เคยปฏิบัติใน blog : การเตรียมฮาร์แวร์และซอฟต์แวร์เพื่อเริ่มต้นใช้งานบอร์ด Raspberry Pi เพื่อเรียกเมนูการตั้งค่าบอร์ด raspberry pi แต่ในการติดตั้ง cloud ควรจะตั้งค่าเริ่มต้นให้กับบอร์ดดังนี้
- ขยาย root filesystem เพื่อให้มีพิ้นที่รองรับ cloud
select "Expand Filesystem"
- เลือกการทำงานของ clock เป็น Modest or Medium
select "Overclock" (เมื่อตั้งค่าเริ่มต้นให้กับบอร์ดเสร็จแล้วควร reboot บอร์ด RPi)
2.) อัพเดท package list บนบอร์ด Raspberry Pi
sudo apt-get update
sudo apt-get dist-upgrade
3.) สร้าง users
สำรับการติดตั้งนี้ใช้ groupName เป็น www-cloud
sudo groupadd groupName
สร้าง users ผู้ดูแล ซึ่งใช้ชื่อเป็น www-data เข้าไปใน group
sodo usermod -a -G www-cloud www-data
4.) ติดตั้ง packages
เป็นการติดตั้ง pakages ที่กล่าวไว้ข้างต้นด้วย command line
sudo apt-get install nginx openssl ssl-cert php5-cli php5-sqlite php5-gd php5-curl php5-common php5-cgi sqlite3 php-pear php-apc curl libapr1 libtool curl libcurl4-openssl-dev php-xml-parser php5 php5-dev php5-gd php5-fpm memcached php5-memcache varnish
5.) สร้างใบรับรอบ SSL ให้มีระยะเวลาเป็น 2 ปี
sudo openssl req $@ -new -x509 -days 730 -nodes -out /etc/nginx/cert.pem -keyout /etc/nginx/cert.key
sudo chmod 600 /etc/nginx/cert.pem
sudo chomd 600 /etc/nginx/cert.key
sudo chmod 600 /etc/nginx/cert.pem
sudo chomd 600 /etc/nginx/cert.key
6.) กำหนดค่า Ngnix webserver
sudo nano /etc/nginx/sites-available/default
* เปลี่ยนหมายเลข IP ตรงส่วนของ server_name ให้ตรงกับ หมายเลข IP ของ บอร์ด RPi
server {
listen 80;
server_name 192.168.XXX.XXX;
rewrite ^ https://$server_name$request_uri? permanent; # enforce https
}
server {
listen 443 ssl;
server_name 192.168.XXX.XXX;
ssl_certificate /etc/nginx/cert.pem;
ssl_certificate_key /etc/nginx/cert.key;
root /var/www/owncloud;
index index.php;
client_max_body_size 1000M; # set maximum upload size
fastcgi_buffers 64 4K;
location ~ ^/owncloud/(data|config|\.ht|db_structure\.xml|README) {
deny all;
}
location / {
try_files $uri $uri/ index.php;
}
location @webdav {
fastcgi_split_path_info ^(.+\.php)(/.*)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTPS on;
include fastcgi_params;
}
}
location ~ ^(?<script_name>.+?\.php)(?<path_info>/.*)?$ {
try_files $script_name = 404;
include fastcgi_params;
fastcgi_param PATH_INFO $path_info;
fastcgi_param HTTPS on;
fastcgi_pass 127.0.0.1:9000;
}
}
จากนั้น กด ctrl+X แล้วเลือก Y ตามด้วย Enter
7.) กำหนดค่า max upload ใน php
sudo nano /etc/php5/fpm/php.ini
ใช้ ctrl+w ในการหาบรรทัดด้านล่างนี้
upload_max_filesize
และเปลียนเป็น
และเปลียนเป็น
upload_max_filesize = 1000M
post_max_size
เป็น
post_max_size = 1000M
และในตอนล่างของไฟล์ ให้เพิ่มบรรทัดต่อไปนี้ลงไป
upload_tmp_dir = /srv/http/owncloud/data
extension = apc.so
apc.enabled =1
apc.include_once_override = 0
extension = apc.so
apc.enabled =1
apc.include_once_override = 0
apc.shm_size = 256
จากนั้น สร้าง folder สำหรับ owncloud data
sudo mkdir -p /svr/http/owncloud/data
sudo chown www-data:www-data /srv/http/owncloud/data
sudo mkdir -p /svr/http/owncloud/data
sudo chown www-data:www-data /srv/http/owncloud/data
8.) การตั้งค่า PHP
sudo nano /etc/php5/fpm/pool.d/www.conf
เปลี่ยนบรรทัดด้านล่างนี้จาก
listen = /var/run/php5-fpm.sock
เป็น
listen = 127.0.0.1:9000
sudo nano /etc/dphys-swapfile
เปลี่ยนบรรทัดด้านล่างนี้จาก
CONF_SWAPSIZE = 100
เป็น
CONF_SWAPSIZE = 512
listen = /var/run/php5-fpm.sock
เป็น
listen = 127.0.0.1:9000
sudo nano /etc/dphys-swapfile
เปลี่ยนบรรทัดด้านล่างนี้จาก
CONF_SWAPSIZE = 100
เป็น
CONF_SWAPSIZE = 512
9.) Restart web server และ PHP
sudo /etc/init.d/php5-fpm restart
sudo /etc/init.d/nginx restart
10.) ติดตั้ง ownCloud
sudo mkdir -p /var/www/owncloud
sudo wget http://download.owncloud.com/download/5.0.11/owncloud_enterprise-5.0.11.tar.bz2
sudo tar xvf owncloud_enterprise-5.0.11.tar.bz2
sudo mv owncloud/ var/www/
sudo chown -R www-data:www-data /var/www
rm -rf owncloud owncloud-5.0.7.tar.bz2
11.) ติดตั้ง account ผู้ดูแลระบบ
เข้าไปยัง web browser และพิมพ์หมายเลข IP ของบอร์ด RPi และให้สร้าง account ผู้ดูแล
เมื่อเข้าสู้ระบบได้แล้ว หากยังติดตั้งโปรแกรมไม่ครบจะมีการแจ้งเตือน
ให้เลือกไปยัง installation guide และทำตามคำแนะนำ(ถ้าหากใช้ windows ให้นำหน้าคำสั่ง command line ด้วย sudo)
ปัญหาและอุปสรรค
ในช่วงที่ทำการดาวน์โหลด package สำหรับซอฟต์แวร์อย่าง openSSL,Nginx และ php5 โดยการใช้ Internet ของมหาวิทยาลัยในบางเว็บไซต์ไม่สามารถทำการดาวน์โหลดได้ จึงไม่สามารถเรียกไฟล์ที่ต้องใช้มากำหนดค่าเริ่มต้นได้ทำให้การติดตั้ง cloud บนบอร์ด RPi ไม่สำเร็จการแก้ปัญหาและอุปสรรค
การที่ไม่สามารถดาวน์โหลด package ข้างต้นได้นั้นคาดว่าน่าจะมีสาเหตุมาจากระบบ Internet ของมหาวิยาลัยมีการป้องกันไม่ให้เข้าใช้บางเว็บไซต์ จึงทดลองเปลี่ยนสถานที่การใช้ Internet ซึ่งสามารถดาวน์โหลดได้ครบทุก package และสามารถติดตั้งระบบ cloud ได้
No comments:
Post a Comment