星期日, 8月 04, 2013

GNOME.Asia 報告於 GNOME基金會年度會議 AGM

這次很開心可以參加 GUADEC 2013
看這個照片應該是很開心吧(雖然讓我聯想到鬼太郎裡面的妖怪)


但是覺得很興奮, 因為可以代表 GNOME.Asia 在年度會議中報告 5分鐘

下面是我的簡報

還有影片檔


再次謝謝來參與的所有人
也謝謝GNOME 還有所有GNOME.Asia團隊還有韓國的團隊

:-)


星期六, 7月 13, 2013

第四屆全球華人探究學習創新應用大會


第四屆全球華人探究學習創新應用大會


 


這次很榮幸團隊可以與佛光大學許惠美老師共同投稿
第四屆華人探究學習創新應用大會論文發表

此次主要是針對Ezilla 以及探究學習環境建置方案進行探討
在會中也認識了許多在教育現場的先進, 包含北京, 香港以及不同地區研究探究學習的前輩, 另外也針對目前自由軟體教育軟體以及數位平台進行交流.

今年大家很多的焦點都集中在雲端, 資訊融入以及Project Base Learning 的結合, 在會場也得到很多的回饋, 大家也對 Ezilla 以及 ezgo 這樣的結合充滿了高度的興趣.


非常感謝國立台南大學舉辦此研討會, 讓我們有機會認識很多先進, 並向他們請益, 也希望有更多的機會可以參與這樣的研討會來與其他教育現場的老師們交流.



也期望之後Ezilla 能為探究學習以及資訊融入教學貢獻更多的心力.

<(_ _)>


星期六, 7月 06, 2013

20130531 雲端 SUSE Linux 虛擬化應用實機訓練課程 筆記

20130531 雲端 SUSE Linux 虛擬化應用實機訓練課程 筆記

講師 Leo

上課架構
  • node 1  -- Xen 虛擬化
  • node 2  -- Xen 虛擬化
  • iSCSI Server -- 提供 share storage 掛載



Notes:
  • vnc=1 vncpassword=xxxxxx    (在開機安裝的時候於 boot option 指定, 可以使用 VNC Viewer 連接方便多人共同視察)
  • 第一台Server 規劃為iSCSI Server, 3-4 人為一小組分別規劃不同的server, 以下為iSCSI Server 的硬碟規劃
    • /    80GB  sda2
    • swap   4GB    sda1
    • LVM  所有的空間(381GB)  sda3
  • Xming - 用來連接 Linux 的X window 到 windows (http://www.straightrunning.com/XmingNotes/)
  • JuiceSSH - Android 上面連接 SSH 的 App (因為自己當天沒有帶電腦)
早上的進度為安裝 iSCSI Server, 介紹基礎概念

=====================================================================

下午進行 node 1 以及 node 2 的建置
  • 安裝的部分依照預設值, 但是選擇 Xen Virtualation, 取消 “change HOSTNAME via DHCP”
  • 確認使用 xen 的核心開機 (#uname -r)
  • 使用 #yast2  bootloader 來指定 xen 核心開機, 並重新開機
  • 使用 #yast2  點選 software  →  Add-On  Products  →  Add → DVD (HA 那片光碟)
    • 安裝 ocfs2-tools-o2cb
    • 安裝 ocfs2console
  • #yast2  sw_single  安裝  yast2-iscsi-client
  • 使用 #yast2  iscsi-client 連接 iSCSI Server, 並以 fdisk  -l 確認有看到 iSCSI 的LUN
  • 建立filesystem(格式化) #mkfs.ocfs2  /dev/sdb  (iSCSI 的磁碟掛載, 這個指令 node 1 執行即可, node 2 不需要執行)
  • #mkdir   /share  (建立 iSCSI 的 mount point)
  • #rm  /etc/ocfs2/cluster.conf  (如果之後有發生錯誤, 刪除這個檔案然後執行 #ocfs2console)
  • #/etc/init.d/o2cd  enable
  • #vi   /etc/hosts
加入 node1 以及 node 2 的IP
192.168.150.11     node1
192.168.150.12     node2

  • #ocfs2console    (也可以自行 #vi  /etc/ocfs2/cluster.conf 來達成)
點選 Cluster  → Configure Nodes  → Add → Add Node 1 / Add Node2
Mount  → Assign   /share  for mount

  • #/etc/init.d/o2cb  configure
cluster to start on boot (Enter “none” to clear)[ ]:  ocfs2 (這邊輸入的名稱要與 /etc/ocfs2/cluster.conf 內的 cluster區段的 name = ocfs2 相同)

  • #/etc/init.d/ocfs2   status

PM 3:30 ~ 3:50  Ask Node 2 install package (Same process with node 1)
#mkdir   /share/iso
(Download  or get  SLES / Win iso from ftp site)

#rm   -rf   /var/lib/xen/images     (這個是預設的目錄)
#ln  -s   /share/images    /var/lib/xen/images  (Setting up xen for save VM in share storage)
#cd  /etc/xen
#rm  -rf  /etc/xen/vm   (這個是預設的目錄)
#ln  -s  /share/configs    /etc/xen/vm   (Setting up xen for save VM config  in share storage)

#mkdir  /share/images
#mkdir  /share/configs

#vi  /etc/xen/xend-config.sxp
修改相關設定讓 xen 允許migrate(relocation)
(xend-relocation-server  yes)
(xend-relocation-port  8002)
(xend-relocation-address  ‘ ‘)
(xend-relocation-hosts-allow  ‘ ‘)

#/etc/init.d/xen   restart

星期三, 7月 03, 2013

台南資訊輔導團研習





這次很榮幸可以受邀到台南資訊輔導團介紹 Ezilla 雲端簡單龍
首先由 OSSACC 執行秘書介紹 ezgo 還有介紹我們國網中心相關專案.

Max 也將目前火紅的 Raspberry Pi 以及相關資訊跟在場的老師們分享


也跟在場的老師介紹 Ezilla 簡易的建立介面以及目前可以使用的虛擬機器


並針對目前虛擬教室與實體教室配置的情境跟台南的老師們進行交流



台南的天氣還有老師們都很熱情
當天成功大學的楊中平老師也有到場, 也跟台南資訊輔導團的老師們交換了很多意見
也期望之後有機會將成功大學資工系的學生與台南這邊的在地資訊服務結合.

希望之後還有更多機會來拜訪老師們
^___^

星期三, 5月 29, 2013

花蓮縣教育網路中心


花蓮縣教育網路中心




很開心可以來到好山好水的花蓮分享 Ezilla 專案, 還有其他相關雲端運用.
這個場次以"零元, 練就雲端時代的螢舞者" 來進行分享

比較有趣的是, 這次我們採取雙螢幕, 比較對比商業軟體以及自由軟體的應
用, 並介紹目前雲端服務相對於商業軟體的替代方案.



現場也讓花蓮的老師們現場操作以及體驗 EasyCloud 的服務, 也引起老師們的興趣.



老師們也期望有些共同性的服務(Web, 數位教學平台), 應該是大家可以共同的來開發及使用, Ezilla 團隊也會朝這個方向來提供老師們更好的服務.

也希望有機會可以再來好山好水的花蓮.




星期五, 2月 22, 2013

使用BigBlueButton API


使用BigBlueButton API 文件 written by Max

官方wiki
https://code.google.com/p/bigbluebutton/wiki/API


測試主機
http://x.y.z.w/

測試主機的salt : dfc658adec2de8a5d56b06ea51089883

Step 1:
建立會議的方式

舉例來說
http://x.y.z.w/bigbluebutton/api/create?name=Test&meetingID=test01&moderatorPW=mp&attendeePW=ap&checksum=5bb1dd0a153abffedb7abd96825fbecb32fef020

要建立會議, 要給建立聊天室的資料
create?name=Test&meetingID=test01&moderatorPW=mp&attendeePW=ap 取出
拿掉?號
createname=Test&meetingID=test01&moderatorPW=mp&attendeePW=ap

name=Test 會議名稱, 如果有空白字元使用+來串聯
meetingID 會議ID
moderatorPW 主持人密碼
attendeePW 參加人密碼

createname=Test&meetingID=test01&moderatorPW=mp&attendeePW=ap 加上 salt

結果為
createname=Test&meetingID=test01&moderatorPW=mp&attendeePW=apdfc658adec2de8a5d56b06ea51089883

將此一字串藉由SHA1演算法產生雜湊值
可以使用網頁的方式來產生雜湊值
將上面的 createname=Test&meetingID=test01&moderatorPW=mp&attendeePW=apdfc658adec2de8a5d56b06ea51089883  
貼入 http://pajhome.org.uk/crypt/md5/ 網頁內的 Input 欄位
點選 SHA1 按鈕, 產生雜湊值

結果如下
5bb1dd0a153abffedb7abd96825fbecb32fef020
createname=Test&meetingID=test01&moderatorPW=mp&attendeePW=apdfc658adec2de8a5d56b06ea51089883  

去除 salt , 結果為
createname=Test&meetingID=test01&moderatorPW=mp&attendeePW=ap

加上剛剛產生的雜湊值 &checksum=5bb1dd0a153abffedb7abd96825fbecb32fef020

結果為
createname=Test&meetingID=test01&moderatorPW=mp&attendeePW=ap&checksum=5bb1dd0a153abffedb7abd96825fbecb32fef020

將這串字串貼於BigBlueButton 主機 URL /bigbluebutton/api 下, 並加上 ?

create?name=Test&meetingID=test01&moderatorPW=mp&attendeePW=ap&checksum=5bb1dd0a153abffedb7abd96825fbecb32fef020


完整URL 如下

http://
x.y.z.w/bigbluebutton/api/create?name=Test&meetingID=test01&moderatorPW=mp&attendeePW=ap&checksum=5bb1dd0a153abffedb7abd96825fbecb32fef020

此時Server 會回應 建立成功

<response>

<returncode>SUCCESS</returncode>
<meetingID>test01</meetingID>
<attendeePW>ap</attendeePW>
<moderatorPW>mp</moderatorPW>
<createTime>1359709413228</createTime>
<hasBeenForciblyEnded>false</hasBeenForciblyEnded>
<messageKey>duplicateWarning</messageKey>
<message>
This conference was already in existence and may currently be in progress.
</message>
</response>

Step 2:
接下來加入聊天室

http://
x.y.z.w/bigbluebutton/api/join?meetingID=test01&password=mp&fullName=John&checksum=091148f421ce895dcd333fbe34f514050f9adaca

給入加入聊天室的資料
joinmeetingID=test01&password=mp&fullName=John
meetingID 加入聊天室的ID
password 進入聊天室的密碼
fullName 人員姓名

joinmeetingID=test01&password=mp&fullName=John 加上 salt

結果為 joinmeetingID=test01&password=mp&fullName=Johndfc658adec2de8a5d56b06ea51089883

將此一字串藉由SHA1演算法產生雜湊值
可以使用網頁的方式來產生雜湊值
將上面的 joinmeetingID=test01&password=mp&fullName=Johndfc658adec2de8a5d56b06ea51089883  
貼入 http://pajhome.org.uk/crypt/md5/ 網頁內的 Input 欄位
點選 SHA1 按鈕, 產生雜湊值

結果如下
091148f421ce895dcd333fbe34f514050f9adaca

joinmeetingID=test01&password=mp&fullName=Johndfc658adec2de8a5d56b06ea51089883

去除 salt 部分

結果為
joinmeetingID=test01&password=mp&fullName=John  

加上剛剛產生的雜湊值 &checksum=091148f421ce895dcd333fbe34f514050f9adaca

結果為

joinmeetingID=test01&password=mp&fullName=John&checksum=091148f421ce895dcd333fbe34f514050f9adaca

將這串字串貼於BigBlueButton 主機 URL /bigbluebutton/api 下, 並加上 ?

http://
x.y.z.w/bigbluebutton/api/join?meetingID=test01&password=mp&fullName=John&checksum=091148f421ce895dcd333fbe34f514050f9adaca

即可開啟聊天室參加會議

星期一, 1月 14, 2013

EasyRTC install with openSUSE 12.2 小記

EasyRTC install log
Date:  20130103
OS:  openSUSE 12.2

參考  https://github.com/priologic/easyrtc/blob/master/docs/easyrtc_installing.md


透過 One Click install 安裝 nodejs  nodejs-devel
#OneClickInstallCLI   http://software.opensuse.org/ymp/openSUSE:12.2/standard/nodejs.ymp
#zypper   install  nodejs-devel

建立相關目錄
# mkdir   -p   /var/nodes/easyrtc

確認 www (apache)執行使用者
# grep   www  /etc/passwd
wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false

將相關目錄(/var/nodes/easyrtc)更改擁有人為 wwwrun (調整權限)

# ls  -ld  /var/nodes/easyrtc/
drwxr-xr-x 2 root root 4096 Jan  3 11:06 /var/nodes/easyrtc/

# chown   wwwrun  /var/nodes/easyrtc/

# ls  -ld  /var/nodes/easyrtc/
drwxr-xr-x 2 wwwrun root 4096 Jan  3 11:06 /var/nodes/easyrtc/

下載 EasyRTC 套件
# cd   /root
# wget   https://github.com/priologic/easyrtc/archive/master.zip

解壓縮 EasyRTC 套件
# unzip   master.zip

將解壓縮的套件移到 相關目錄(/var/nodes/easyrtc)
# mv  /root/easyrtc-master/   /var/nodes/easyrtc/

切換到解壓縮的目錄
# cd   /var/nodes/easyrtc/easyrtc-master

執行安裝
#npm   install
還沒有啟動前, 觀察一下 netstat

# netstat   -tupln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      2023/sshd
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      2731/cupsd
tcp        0      0 0.0.0.0:58265           0.0.0.0:*               LISTEN      2658/gnome-session
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      2607/master
tcp        0      0 :::22                   :::*                    LISTEN      2023/sshd
tcp        0      0 :::631                  :::*                    LISTEN      1/init
tcp        0      0 ::1:25                  :::*                    LISTEN      2607/master
tcp        0      0 :::37755                :::*                    LISTEN      2658/gnome-session
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           452/avahi-daemon: r
udp        0      0 0.0.0.0:57592           0.0.0.0:*                           452/avahi-daemon: r
udp        0      0 0.0.0.0:631             0.0.0.0:*                           1/init
udp        0      0 :::59115                :::*                                452/avahi-daemon: r
udp        0      0 :::5353                 :::*                                452/avahi-daemon: r

啟動 EasyRTC
#node   server.js

啟動完之後觀察 netstat

# netstat   -tupln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      11035/node
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      2023/sshd
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      2731/cupsd
tcp        0      0 0.0.0.0:58265           0.0.0.0:*               LISTEN      2658/gnome-session
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      2607/master
tcp        0      0 :::22                   :::*                    LISTEN      2023/sshd
tcp        0      0 :::631                  :::*                    LISTEN      1/init
tcp        0      0 ::1:25                  :::*                    LISTEN      2607/master
tcp        0      0 :::37755                :::*                    LISTEN      2658/gnome-session
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           452/avahi-daemon: r
udp        0      0 0.0.0.0:57592           0.0.0.0:*                           452/avahi-daemon: r
udp        0      0 0.0.0.0:631             0.0.0.0:*                           1/init
udp        0      0 :::59115                :::*                                452/avahi-daemon: r
udp        0      0 :::5353                 :::*                                452/avahi-daemon: r


測試結果 Okay

=====================================================================