Lecture - 1 “Moving Ahead”
- from Clusters and Grids to Cloud computing
Salman Toor [email protected] Basic questions
• Why Cloud computing?
• What are the previous technologies?
• What was missing in the previous technologies?
• Will previous technologies be substituted?
• Can legacy applications run on Cloud platforms?
2 Were supercomputers the only source of large scale computing before Clouds?
ANSWER: NO
3 Distributed Computing Infrastructures (DCI) • Cluster Computing • Accessible via Local Area Network (LAN) • Grid Computing • Based on Wide Area Network (WAN) • Cloud Computing • Next generation computing model
• Desktop Computing • Utility Computing • P2P Computing • Pervasive Computing • Ubiquitous Computing • Mobile Computing
4 Contribution of large scale computing • Areas in which the role of large scale computing is inevitable:
• Particle Physics • Bioinformatics • Computational Mathematics • Quantum Chemistry • … • …
5 Computing model
• Most of the large scale applications both from academia and industry were designed for batch processing
• Batch Processing:
A complete set of batch or group of instructions together with the required input data to accomplish a given task (often known as job). No user interaction is possible during the execution.
6 Cluster computing
http://www.wikid.eu/index.php/Computer_Clustering Cluster computing
• A cluster is a type of parallel or distributed computer system, which consists of a collection of interconnected stand-alone computers working together as a single integrated computing resource
• First realised in 60’s but gained real momentum in mid 80’s
• The aim is to move away from the specialised supercomputing platform and build more general purpose computing environment based on commodity hardware http://www.cloudbus.org/papers/ic_cluster.pdf Cluster computing
• The concept of building computing clusters materialised with tremendous growth in computer hardware
• In a typical scenario (worker/slave/compute) cluster nodes are dedicated resources with no external peripherals attached
• Specifically designed for batch processing
• Cluster Types:
• Supercomputing clusters • Commodity hardware based clusters
9 Cluster computing
• Known Softwares of Cluster computing:
• HTCondor • Portable Batch System (PBS) • Load Sharing Facility (LSF) • Simple Linux Utility for Resource Management (SLRM) • Rocks • …. • ….
10 Cluster computing Advantages • Uniform access to available resources • Load balancing • Various job scheduling techniques • Cluster management tools • User interfaces • single job submission • complex workflows management • Fundamental level security (in typical cases) • Production quality softwares are available
11 Cluster computing Disadvantages • Applications need to adopt the way underlying infrastructure is designed • Cluster softwares are non-coherent • Steep learning curve • Less secure (improved significantly over the years) • Tightly coupled with the underlying resources • Difficult to port new applications • Applications need to stick with the available tools and libraries • Non standard interfaces
12 Cluster computing Current status • Cluster computing is one of the most established way of accessing limited amount of interconnected computational resources
• For example, hundreds of organisations in industry, government, and academia have used HTCondor
• Extension like Directed Acyclic Graph Manager (DagMAN) in HTCondor are still in use to define complex workflows
https://research.cs.wisc.edu/htcondor/description.html 13 https://research.cs.wisc.edu/htcondor/dagman/dagman.html Cluster computing Short falls
̣ Uniform access to large number of resources ̣ System that can handle complex and large workloads
• Possible next steps
• Explore ways to find more resources • Uniform access to distributed computational resources • A bigger system for batch processing
14 Grid computing
• Definition - 1 : (Computational Grid)
Grid is a type of parallel and distributed system that enables the sharing, selection, and aggregation of geographically distributed autonomous resources dynamically at runtime depending on their availability, capability, performance, cost, and users' quality-of-service requirements.
• Definition - 2 : (Computational Power Grids)
The computational power grid is analogous to electric power grid and it allows to couple geographically distributed resources and offer a consistent and inexpensive access to resources irrespective of their physical location or access point. http://toolkit.globus.org/alliance/publications/papers/chapter2.pdf The anatomy of the grid: Enabling scalable virtual organizations
The Grid 2: Blueprint for a new computing infrastructure 15 http://www.gridcomputing.com/gridfaq.html Grid computing Vision
16 Grid computing Actual picture
http://kekcc.kek.jp/service/cc/uguide_en/10_1.system_tokutyou.html 17 Grid computing System components
• Application execution tools • Information extraction • Multi-level scheduling • Runtime environments • Resource discovery • Security • Reliability • Data management • Quality of Services (QoS) • Interoperability • Resource allocation • Virtual Organisation • Metadata management Management System (VOMS) • …. • …. 18 Grid computing Virtual Organisation Management System (VOMS) • Virtual Organisation
An abstract entity grouping Users, Institutions and Resources in a same administrative domain.
• Virtual Organisation Management System
VOMS is a system for managing authorisation data within multi-institutional collaborations. VOMS provides a database of user roles and capabilities and a set of tools for accessing and manipulating the database and using the database contents to generate Grid credentials for users when needed.
Article: From gridmap-file to VOMS: managing authorization in a Grid environment http://toolkit.globus.org/grid_software/security/voms.php 19 Large Hadron Collider Grid (LCG)
20 http://www.isgtw.org/feature/isgtw-feature-mega-grid-mega-science Grid Computing Basic Workflow
UI Input sandbox JDL DataSets info Information Output sandbox Service Resource SE & CE info Input
Output voms-proxy-init Broker