2013年1月22日 星期二

從Apache CloudStack Community 觀察社群運作原理,與提案的產生




從上一篇文章 - "如何加入open source 社群" 發佈到現在已經一個多月了,每天的例行公事就是從上百封的mail list 中觀察社群的動向,並且找出有興趣,或是可以參與的主題,但是真的是很困難,很多議題不是插不上話,再不然就是發言沒人鳥(大概發言太廢~Orz..),所以只能繼續做潛水觀察員。

而最近CloudStack 比較火熱的主題就是所謂Intellectual property clearance (A.K.A IP clearance) ,這個議題是從這篇討論開始 [ACS41] Concerns about where development has happened ,主要原因是因為Citrix 偷渡 貢獻了許多程式碼和new feature到 CloudStack 裡,因為這些 source code 與 new feature一來沒經過社群討論 (Mail List),二來是從已經存在的產品Critrix Cloud Platform 拿出來的程式碼,所以可能會有 IP的問題,所以引發了社群的激烈討論,下面是其這個討論串發起人Chip Childers的描述:
I'm not sure where to go from here.  I guess we have 2 options: we
re-write the code from scratch as CloudStack code, or Citrix donates
the code produced for CloudPlatform (and it gets taken through the IP
clearance process).

而這一連串的討論, 也引發了其他人(新手小白如我)的緊張,到底怎樣的狀況需要IP Clearance,什麼樣的狀況需要宣告Donate source code? 於是就有人出來在這篇文章 "[PROPOSAL] Networking plugin to integrate the MidoNet SDN platform with CloudStack"解釋:

IP clearance is required only when your feature would have been developed outside the community intervention and you want to propose that feature to be merged with the asf/master branch.
(智財權釐清只有在你提供的新功能是在社群外開發才需要)

 If you have happened to discuss the functional spec for your feature with the community and answered the queries if any one might have in the community and done all your code commits through review requests , IP clearance would not be required at all .
(如果你的功能,是有充分在社群討論過,也被社群同意後才開始開發的,就不會有所謂智財權釐清問題,就算不是在所尾asf/master 開branch 開發也沒關係)


因為對於 Apache Community 一個新的提案產生正確的處理態度流程應該是這樣:

  1. 在社群Mail List 提出Proposal
  2. 在Mail list 被充分的討論後,並且交付表決,是否同意納入這個功能
  3. 如果同意後,到Apache cloudstack 的 wiki 撰寫你的 Proposal 與 Spec
  4. 開發,並且交由commiter review


參考範例:
Mail List :[DISCUSS] PaaS Enablement: Composite Application Blueprints
提案wiki:Feature Proposal -- Composite Application Blueprints

延伸閱讀:
[1] Open source participation - Remixing Angie Byron to create the next Million Mozillians
[2] Open Source Communities and Customers in Pictures

[此文同步轉載自阿貝好威的實驗室]

2013年1月15日 星期二

[教學] 如何建立CloudStack 開發環境 3.x 版本

圖片來源:LuMaxArt on Flickr

注意:CloudStack 在4.0版是過度版本,4.0 在之前是用ant build在,4.0以後將會改用Maven的方式來建立專案

此篇文章主要是要介紹如何建立基於CloudStack 3.x 版本的開發環境,之後會再另外寫一篇如何建立CloudStack 4.x 版本的開發環境。

1. 準備作業系統與環境


CloudStack 3.x,建議是使用 CentOS 5.6 x64 server version

1-1.  安裝 CloudStack 必要的套件

yum install java-1.6.0-openjdk java-1.6.0-openjdk-devel mkisofs mysql mysql-server paramiko
service mysqld restart


1-2. 安裝Apache-tomcat (6.0.33)


注意: 避免安裝 Tomcat6 6.0.35,因為對 CloudStack 有些已知的問題。


wget  http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.33/bin/apache-tomcat-6.0.33.tar.gz
tar xzf apache-tomcat-6.0.33.tar.gz

把以下環境變數設到 .bashrc

export CATALINA_HOME=/your_path/apache-tomcat-6.0.33/
export CATALINA_BASE=/your_path/apache-tomcat-6.0.33/


1-3. 安裝ant


wget http://ftp.mirror.tw/pub/apache//ant/binaries/apache-ant-1.8.4-bin.tar.gz
tar zxvf  apache-ant-1.8.4-bin.tar.gz
export PATH=/your_path/apache-ant-1.8.4/bin/:$PATH


1-4 下載安裝 CloudStack Source and extract


請到CloudStack Release Details 下載 3.x最新版本

tar zxvf CloudStack-3.0.4-1-rhel5.tar.gz
cd CloudStack-3.0.4-1-rhel5


Compile:

ant clean-all build-all


Deploy:

ant deploy-server


Deploy Database:

ant deploydb


Run:

ant debug


檢查產出的 Logs:

vmops.log,  api-server.log




Reference:
[1] How to set up a CloudStack development environment

2013年1月14日 星期一

Apache CloudStack Weekly News - 14 January 2013




本站成立的宗旨希望台灣的CloudStack開發者與使用者能與國際和社群接軌,所以之後會盡量幫忙追蹤CloudStack社群的最新資訊。

資料來源:Apache CloudStack Weekly News - 14 January 2013


本週主要討論內容與議題 (Major Discussions and Issues)


  • 關於專案的一些內部規定 (Project Bylaws ) 已經在cloudstaack-dev的mail list被討論和通過, The bylaws are intended to go into effect once Apache CloudStack graduates from the Apache Incubator. (Note that a vote on graduation is not currently pending.)
  • 討論是否CloudStack 要花具體的時間在處理Linux 個版本間的支援
  • 對於CloudStack 4.1.0 的一些重大Feature的開發狀態社群有些疑慮,因為有許多feature的開發不是由社群所開發,所以可能會有一些智慧財產權(IP)的問題,所以需要進行智慧財產權釐清(IP clearance)的動作,才能把這些code放入 4.1.0 的Master。
  • 討論 CloudMonkey 該如何 released, whether it makes sense to release CloudMonkey out-of-band via pypi or stick with major releases.
  • 提醒開發者要定期去JIRA更新issue的狀態.
  • 在 1/9 投票接受Cirtix 所提供的 Marvin automated tests.
  • Minutes from QA Scrum on 8 January 2013.
  • Minutes from CloudStack IRC Meeting 9 January 2013 and the full log.

即將發生的事件 (Upcoming Events)


CloudStack 在接下來幾個星期將會有許多活動(Events):

  • OSSI DHS Industry Day David Nalley is on a panel and will talk about Apache CloudStack at the OSSI Industry Day in Linthicum, Maryland on Monday, 14 January 2013.
  • DC Riak Users Group David Nalley is [speaking about CloudStack at the DC Riak Users Group in Washington DC on Wednesday, 16 January 2013.
  • PuppetCamp Silicon Valley: David Nalley is speaking about CloudStack at PuppetCamp Silicon Valley on Friday, 18 January 2013.
  • PuppetCamp Sydney: Joe Brockmeier is speaking about Apache CloudStack at PuppetCamp Sydney on Thursday, 24 January 2013.
  • Linux.conf.au: Joe Brockmeier is speaking about Apache CloudStack during the Cloud Infrastructure, Distributed Storage and High Availability miniconf on Monday (28 January, 2013).
  • FOSDEM: Sebastien Goasguen is speaking about Apache CloudStack features and tools during the cloud DevRoom at FOSDEM on Sunday (3 February, 2013).
  • Build a Cloud Day (BACD): Full day workshop on CloudStack co-located with Puppet Camp in Ghent, Belgium (1 February, 2013).
  • UK/European User Group Meet-up : Shapeblue is organizing a meet-up. (January 16th, 2013)

Jira 狀態與統計


In the last 30 days (as of 11 January, 2013) 345 issues have been created in Jira, and 85 have been resolved.


  • Unassigned Issues: 299 as of 11 January, 2013. (如果有興趣想要幫忙的可以從這邊去撈取issue來解決。)
  • There are 84 open issues affecting 4.1.0.
  • 75 issues are of blocker, critical, or major status.

新的Committers 和 PPMC 成員 

(New Committers and PPMC Members)


    Sebastien Goasguen and Kelcey Damage were welcomed as new committers.