ICOM6041 - An introduction to cloud computing
Instructor Professor CL Wang ( clwang@cs.hku.hk )
Teaching assistant TBA
Syllabus This module offers an overview of current cloud technologies, and discusses some issues in the design and implementation of cloud systems, and the impact cloud computing on business.

Topics include some basic understanding of cluster hardware architecture (e.g., multicore, GPU, high-speed network), cluster middleware for realizing the concept of single system image (e.g., software distributed shared memory) and virtualization techniques (e.g., Xen, KVM, VMWare) used in current data centers. We will discuss three types of Cloud computing platforms, including SaaS, PaaS, and IaaS, by providing motivating examples from major cloud computing players such as Google, Amazon, and Microsoft. We will also introduce Map/Reduce programming paradigm for large-scale data analysis.
Objectives TBA
Learning outcomes
  1. Able to master the key technologies about the Cluster and Cloud Computing, and be able to contrast similar technologies.
  2. Able to self-learn the latest Cloud Computing technologies and build their own Cloud system on a PC cluster.
Prior knowledge expected All enrolled students are expected to have knowledge of operating system and networking.

If you wish to undertake the project to build a private cloud, we assume you are familiar with the basic commands for network administration (e.g. ssh, VNC, ifconfig), system configuration (e.g. yum/rpm, tar, sudo, make), and text files editing (e.g. vi) under the Linux environment. Due to the time limit, we won’t be able to offer tutorials on these basic skills.

You must also know at least one programming language i.e. either Java, C or C++, and a basic understanding of the Linux operating system. For those who would like to refresh their knowledge or learn something new in advance to make their study a success, the following resources could be helpful.

Topics covered
  1. Introduction of Cloud Computing
  2. Cloud Service Model (SaaS, PaaS, and IaaS)
  3. Tutorial on Amazon EC2
  4. Hadoop File System and MapReduce
  5. Tutorial on MapReduce Programming
  6. Virtual Machines and CPU Virtualization
  7. Memory and I/O Virtualization Techniques
  8. Software Distributed Shared Memory Systems
  9. Cluster Networking (ARP, DHCP, NAT)
  10. Software Defined Network
Teaching format Lectures
Assessment
  • In-course assessment (100%)
    • (30%) Amazon EC2/S3 Assignment
    • (70%) Group term Project on either building a private cloud for the more technically competent students or a critical survey and study of the business models of cloud computing for the more business-oriented students.
Course materials

Notes, with pre- and post-course reading lists of online reference materials.

Enrolment No add or drop after 6 June 2015.
Class quota Class size will be maintained at 40.
 
- Back -