摘要(英) |
Hadoop is a common cloud tool to build a cloud platform that can be accessed by end-users. In most cases, installation of a Hadoop platform requires installation of different software packages on tens to thousands of computing machines. With a traditional software deployment strategy, the administrators need to repeat similar installation procedures on different computing machines, which is inefficient and time-consuming. In addition, different software components that are distributed among the computing hosts may need to be upgraded. Recently, a popular software deployment tool called Puppet is developed to solve the problem of software deployment, and can apply to Hadoop installation. It uses a server-driven model to install and update various software packages on many computing machines. That is, the Puppet deployment server periodically receives reports from the deployment clients (targets), and computes what software packages are required by what deployment clients. Although it simplifies the problem of software deployment, it still suffers the scalability problem --- the server becomes an obvious performance bottleneck when the number of deployment clients is large. To overcome the problem, we have developed an automatic, client-driven deployment tool for Hadoop based on Puppet. At first, the proposed deployment tool dispatch different installation rules from the deployment server to the client (target) machines. Then, the client periodically checks the server for what versions of software packages are required, and installs software packages if necessary. When compared with similar deployment tools for Hadoop, the proposed deployment tool works better when the number of deployment clients is relatively large. |
參考文獻 |
[1]M. Armbrust, I. Stoica, M. Zaharia, A. Fox, R. Griffith,
A. D. Joseph, R. Katz, A. Konwinski, G. Lee, D.
Patterson, and A. Rabkin, “A view of cloud computing,”
Commun. Acm, vol. 53, no. 4, pp. 50–58, Apr. 2010.
[2]Ian Foster, Yong Zhao, Ioan Raicu, and Shiyong Lu, “Cloud
Computing and Grid Computing 360-Degree Compared,” p.
P.1–P.10, Nov. 2008.
[3]Michael Armbrust, Armando Fox, Rean Griffith, Anthony
D.Joseph, Randy Katz, Andy Konwinski, Gunho Lee, David
Patterson, Ariel Rabkin, Ion Stoica, and Matei Zaharia,
“Above the Clouds: A Berkeley View of Cloud Computing,”
Uc Berkeley Reliab. Adapt. Distrib. Syst. Lab., Feb.
2009.
[4]B. Furht and A. Escalante, “Handbook of Cloud Computing -
Springer,” 2010.
[5]National Institute of Standards and Technology, “The NIST
Definition of Cloud Computing,” 2011.
[6]“Welcome to ApacheTM Hadoop®!” [Online]. Available:
http://hadoop.apache.org/.
[7]Tom White, Hadoop 技術手冊 第二版 Hadoop: The Definitive
Guide, Second Edition. 歐萊禮, 2011.
[8]董西成, Hadoop技術內幕(深入解析MapReduce架構設計與實現原理). 機械
工業, 2013.
[9]“About AWS.” [Online]. Available:
http://aws.amazon.com/about-aws/. [Accessed: 04-Jun-
2013].
[10]“AWS OpsWorks - Flexible Application Management in the
Cloud Using Chef.” [Online]. Available:
http://aws.typepad.com/aws/2013/02/aws-opsworks-
flexible-application-management-in-the-cloud.html.
[11]“AWS Elastic Beanstalk.” [Online]. Available:
http://aws.amazon.com/elasticbeanstalk/.
[12]“Free the cloud with Dell Crowbar,” Dell. [Online].
Available: http://www.dell.com/learn/us/en/555/cloud-
computing/crowbar-software-framework?c=us&l=en&s=biz.
[Accessed: 04-Jun-2013].
[13]Yue-Shan Chang, Wei-Jen Wang, Yu-Sheng Wu, Jun-Ting Lu,
Lee Shu-Teng Chen, and Chilung Wang, “Software
Deployment and Management on a Large-Scale Cloud Data
Center,” 2013 Symp. Cloud Serv. Comput. Natl. Cheng K.
Univ. Taiwan, Mar. 2013.
[14]Itri Today, “The World’s First 『All-in-One』 Cloud
Computing System,” Nov. 2011.
[15]“Preboot Execution Environment (PXE) Specification -
Version 2.1,” Intel Corp., Sep. 1999.
[16]Puppet Labs, “What is Puppet?” [Online]. Available:
https://puppetlabs.com/puppet/what-is-puppet/.
[17]James Turnbull and Jeffrey McCune, Pro Puppet. Apress,
2011.
[18]D. Bode and N. Liu, Puppet Types and Providers. Oreilly
& Associates Inc, 2012. |