Xcat 2 Extreme Cloud Administration Toolkit
Total Page:16
File Type:pdf, Size:1020Kb
Jordi Caubet, IBM Spain – IT Specialist xCAT 2 Extreme Cloud Administration Toolkit http://xcat.sourceforge.net/ © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit xCAT Overview xCAT Architecture & Basic Functionality xCAT Commands Setting Up an xCAT Cluster Example Energy Management Monitoring 2 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit xCAT Overview xCAT Architecture & Basic Functionality xCAT Commands Setting Up an xCAT Cluster Example Energy Management Monitoring 3 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit What is xCAT ? Extreme Cluster (Cloud) Administration Toolkit Open source (Eclipse Public License) cluster management solution Configuration database – a relational DB with a simple shell Distributed network services management and shell commands Framework for alerts and alert management Hardware management – control, monitoring, etc. Software provisioning and maintenance Design Goals Build on the work of others – encourage community participation Use Best Practices – borrow concepts not code Scripts only (source included) portability – key to customization! Customer requirement driven Provide a flexible, extensible framework Ability to scale “beyond your budget” 4 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit What is xCAT ? Systems Need Management Administrators have to manage increasing numbers of both physical and virtual servers Workloads are becoming more specific to OS, libraries and software stacks Increasing need for dynamic reprovisioning Re-purposing of existing equipment Single commands distributed to hundreds/thousands of servers/VMs simultaneously File distribution Firmware and OS updates Cluster troubleshooting 5 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit xCAT 2 Main Features Client/server architecture. Clients can run on any Perl compliant system. All communications are SSL encrypted. Role-based administration. Different users can be assigned various administrative roles for different resources New stateless and iSCSI support. Stateless can be RAM-root, compressed RAM-root, or stacked NFS-root. Linux software initiator iSCSI support for RH and SLES included. Systems without hardware-based initiators can still be iSCSI installed and booted Virtualization support, including the rmigrate command to request live migration of a virtualized guest from one host to another. (KVM, XEN, VMWare) Scalability. xCAT 2.x was designed to scale beyond your budget. 100,000 nodes? No problem with xCAT's Hierarchical Management Cloud (HMC). Automagic discovery. Single power button press, physical location based, discovery and configuration capability 6 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit xCAT 2 Main Features Choice of database backend: SQLite, PostgreSQL, MySQL, DB2 Plug-in architecture for compartmental development. Add your own xCAT functionally to do what ever you want. New plug-ins extend the xCAT vocabulary available to xCAT clients Monitoring plug-in infrastructure to easily integrate 3rd party monitoring software into xCAT cluster. Plug-ins provided with xCAT: SNMP, RMC, Ganglia, Performance Copilot Notification infrastructure to be able to watch for xCAT DB table changes SNMP monitoring. Trap handler handles all SNMP traps Node status update (nodelist.status is updated during the node deployment, node power on/off process) Centralized console and systems logs Automatic installation of any additional rpms: Requested by the user during node deployment phase and after the nodes are up and running Supports a large number of operating systems 7 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit xCAT - Functionality . Remote Hardware Control – Power, reset, vitals, inventory, event logs, SNMP alert processing . Remote Console Management – Serial console, SOL, logging . Remote Destiny Control – Local boot, network boot, iSCSI boot . Parallel Cluster control – parallel shell, parallel rsync, parallel secure copy, parallel ping . Remote Automated Unattended Network Installation – Auto-discovery • MAC address collection • Service processor programming – Remote flashing – Kickstart, Autoyast, imaging, stateless/diskless . Easy to Use and it Scales! Think 100000 nodes – xCAT will make you lazy - no need to walk to datacenter again 8 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit xCAT – Past, Present . October 1999 – xCAT Zero created for Web 1.0 . January 2000 – Present – xCAT used WW for scale-out Linux and Windows clusters – xCAT Community: 273 members from at least 16 countries . May 2007 – xCAT and CSM developers begin work together on xCAT 2 . October 2007 – xCAT 1.3.0 released pSeries – xCAT 2.0-alpha (Linux Only) xSeries . 2008 PSSP – xCAT 2.0 and 2.1 released • xSeries and pSeries. • Linux and AIX, Windows and Xen xCAT • Open Source. CLI and GUI . 2009 (10 years) CSM – xCAT 2.2 and 2.3 released • Statelite support . 2010 xCAT 2.0 – xCAT 2.4 and 2.5 released 9 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit Current state of xCAT Good Open Source CSM/xCAT developers Proven scalability – deployed at 100s of sites Community involvement Bad Version 2 is a complete rewrite (current = 2.5.x) Documentation (getting better) Ugly Need more developers Web Interface 10 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit xCAT is a scaled-out DataCenter Control . Provision Operating Systems on physical or virtual machines: SLES10 SP2 & higher, SLES 11 (incl. SP1), RHEL4.x, RHEL5.x, RHEL 6, CentOS4.x, CentOS5.x, SL 5.5, Fedora 8-14, AIX 6.1, 7.1 (all available Technology Levels), Windows 2008, Windows 7, VMWare, KVM, PowerVM, zVM. Scripted install, Stateless, Statelite, iSCSI, or Cloning . Remotely Manage Sytems: Integrated Lights-out management, remote console, and distributed shell support . Quickly set up and control Management node services: DNS, HTTP, DHCP, TFTP . Ideal management for HPC clusters, RenderFarms, Grids, WebFarms, Online Gaming Infrastructure, Clouds, Datacenters, ... 11 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit xCAT Overview xCAT Architecture & Basic Functionality Architecture Tables and Database (SQLite, PostGRES, MySQL, DB2) Provisioning Methods (Stateful, Stateless, Satelite) xCAT Commands Setting Up an xCAT Cluster Example Energy Management Monitoring 12 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit Simple Infrastructure . A single xCAT Management Node (MN) for N number of nodes. – A single node DHCP/TFTP/HTTP/NFS server. – Scales to ~128 nodes. • If staggered boot is used, this can scale to 1024 nodes (tested) xCAT database Management SQLite Node MySQL (DHCP, TFTP, HTTP, NFS(hybrid)) PostgreSQL DB2 Compute Compute Compute …............ Compute Node Node Node Node 13 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit Hierarchical Infrastructure xCAT database SQLite Management Node (MN) MySQL (DHCP, TFTP, HTTP, NFS(hybrid)) PostgreSQL DB2 Service Node (SN) …............ Service Node (SN) (DHCP, TFTP, HTTP, NFS(hybrid)) (DHCP, TFTP, HTTP, NFS(hybrid)) backup Compute Compute ….. Compute Compute Compute ….. Compute Node Node Node Node Node Node . A single xCAT Management Node (MN) with multiple Service Nodes (SN) providing boot services to increasing scaling. Can scale to 1000s and 100000s of nodes. 14 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit xCAT Architecture The heart of the xCAT architecture is the xCAT daemon (xcatd) on the CLI Web GUI REST API Client management node. XML/SSL (optional) Mgmt Node xcatd XML/SSL Service xcatd Node database ACL ACL ACL ACL plugin plugin plugin plugin Deployment Logging/Events Deployment Services Logging/Events Services HW HW Ctrl Ctrl Node Node Node Node Node Node 15 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit Tables and Database . xCAT stores all information about the nodes and subsystems it manages in a database. – XCAT default database is located in /etc/xcat in sqlite tables. XCAT can be instructed to store the tables in MySQL, PostgreSQL or DB2 as well. For most installations you won't need to even fill up half of the tables! – And for the tables that you do need, in most cases you'll only need to put one line in the table! . There are lot of tables but only some tables are for common to Linux and AIX, some are for only AIX, some just for monitoring, some for advanced functions (virtual machines, iSCSI settings), … . xCAT comes with a rich set of functions for manipulating tables. 16 © 2011 IBM Corporation xCAT – Extreme Cloud Administration Toolkit Tables and Database Common tables Table Description site Controls settings that are primarily used for the management node in how xCAT will behave. nodelist The list of all the nodes in the cluster, including each node's current status and what groups it is in. nodehm Settings that control how each node's hardware is managed. Typically, an additional table that is specific to the hardware type of the node contains additional info. E.g. the ipmi, mp, and ppc tables. ipmi Settings for nodes that are controlled by an on-board BMC via IPMI. mp Contains the hardware control info specific to blades. This table also refers to the mpa table, which contains info about each Management Module. mpa Contains info about each Management Module and how to access it. networks Describes the networks in the cluster and info necessary to set up nodes on that network. noderes Resources and settings to use