Introduction to OpenStack Nabil Abdennadher, HES-SO
What is OpenStack ? • Free and open-source cloud-computing software platform. • Provides services for managing a Cloud environment on the fly. • Consists of a group of interrelated projects that control pools of processing, storage, and networking resources. • Provides users methods and support to deploy virtual machines in a remote environment. • State in OpenStack is maintained in centrally managed relational database. • OpenStack provides all the services for an IaaS. 2
Plan • OpenStack (Newton) • hepiaCloud • OpenStack client 3
OpenStack forum 4
OpenStack timelines Key events: Major company backings: ● 2005-2010: Rackspace develops their cloud solution ● Aug 2011: Canonical backs OpenStack ● March 2010 - decides to open source it ● Oct 2011 - DELL adopts OpenStack ● May 2010 - NASA open sources its Nebula platform ● 2012 - AT&T, HP, VMWare, Intel, NEC joins ● June 2010 - NASA and Rackspace join hands to OpenStack create OpenStack ● Sep 2012 - OpenStack foundation formally launched ● July 2010 - Inaugural design summit in Austin convened with 25+ partners 5
OpenStack releases https://releases.openstack.org/ 6
OpenStack today example of who uses OpenStack 7
Basic services 8
Identity service : Keystone • Keystone : provides identity services for OpenStack. • A central list of users/permissions mapped against OpenStack services. • Provides multiple means of access. 9
Image Service: Glance • Glance : provides image services to OpenStack. • "images" refers to images (or virtual copies) of hard disks. Used as templates for deploying new VMs. 10
Compute service: OpenStack compute (nova) • OpenStack compute (nova) : Manages the lifecycle of compute instances in an OpenStack environment. Responsibilities include spawning, scheduling and decommissioning of virtual machines on demand. 11
Networking service: Neutron • Networking service (Neutron) : provides the networking capability for OpenStack. Enables Network-Connectivity-as-a-Service for other OpenStack services. • OpenStack Networking enables projects to create advanced virtual network topologies which may include services such as a firewall, a load balancer and Virtual Private Network (VPN). 12
Dashboard: Horizon • Horizon : The front office of OpenStack. • The only native graphical interface to OpenStack. 13
Storage service: Swift &Cinder Cinder : block storage component, analogous to the traditional access on • a disk drive. Swift : storage system for objects and files. • Users refer to a unique file identifiers: OpenStack decides where to • store/back-up etc. http://www.druva.com/wp-content/uploads/Screen-Shot- 2014-08-18-at-11.02.02-AM.png 14
Core services interplay 15
There are 59 other services! 16 Accessed[30.08.2017] - https://governance.openstack.org/tc/reference/projects/
Additional services • trove: database service: provides cloud provisioning functionality for database engines. • magnum : Container Infrastructure Management service. OpenStack API service making container orchestration engines (COE) such as Docker Swarm, Kubernetes and Mesos available as first class resources in OpenStack • Ironic : Bare metal service. Collection of components that provides support to manage and provision physical machines. 17
Additional services • heat : Orchestration service • manila : Shared File Systems service (manila): provides coordinated access to shared or distributed file systems. • aodh : Telemetry Alarming services (aodh): trigger alarms when the collected metering or event data break the defined rules. • ceilometer : Telemetry data Collection service: provide the following functions: • Efficiently polls metering data related to OpenStack services. • Collects event and metering data by monitoring notifications sent from services. • Publishes collected data to various targets including data stores and message queues. 18
Not all services are equally used or deployed! We will explore the most popular ones in more details 19
Controller Node • Controller node runs: • Identity service ( Keystone ) • Compute management ( nova ) • Image Service ( Glance ) • Dashboard ( Horizon ). • Supporting services: SQL database, message queue, and Network Time Protocol (NTP). 20
Compute nodes • Compute node(s) • runs the hypervisor portion of Compute that operates instances. By default, Compute uses the KVM hypervisor. • Runs a Networking service agent that connects instances to virtual networks and provides firewalling services to instances via security groups. 21
Storage nodes (optional) • Block Storage nodes • The optional Block Storage node contains the disks that the Block Storage and Shared File System services provision for instances. • We can have more than one block storage node. • Object Storage nodes • contain the disks that the Object Storage service uses for storing accounts, containers, and objects. • Object Storage requires two nodes. We can deploy more than two object storage nodes. 22
23
https://docs.openstack.org/newton/install-guide- ubuntu/overview.html 24
Hardware requirements https://docs.openstack.org/newton/install-guide- ubuntu/overview.html 25
Exercise 1 • You already have an account on hepiaCloud! • https://hepiacloud.hesge.ch/horizon/ • Create your first virtual private network : • http://lsds.hesge.ch/hepiacloudwebinterface/ (points 1 to 4) • Create and access your first instance • http://lsds.hesge.ch/hepiacloudwebinterface/ (points 5& 6) 26
27
Plan • OpenStack (Newton) • hepiaCloud • OpenStack client 28
hepiaCloud • Based on OpenStack (Newton) • Hypervisor: Linux-KVM • Heterogeneous resources • 8 servers: 128 GB RAM, 24 vCPU • 1 server : 504 GB RAM, 112 vCPU • 1 server : 504 GB RAM, 128 vCPU • 30 desktops: 32 GB RAM, 4 vCPU • hepiaCloud provides • 552 vCPU • ~2.1 TB of RAM • ~20 To of HDD • Instances are in a private network 29
hepiaCloud Internet BXXX A401 A425 (IT centre) GbE network (a vlan through hepia’s network) 10 servers 15 desktops 15 desktops GbE network GbE network GbE network 30
hepiaCloud architecture hepiacloud .hesge.ch
The network • Network : 192.168.0.0/22 • 192.168.0.1 – 192.168.0.254 : hypervisors (physical servers) • 192.168.1.0 – 192.168.3.254 : floating IP addresses • So far (October 2017), the floating IP addresses range from 192.168.1.0 to 192.168.1.255 32
Configuring floating IP addresses 33
Gateway configuration: Requests from outside • 824 46832 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:5000 to:192.168.0.3:5000 • 132 7776 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:9696 to:192.168.0.3:9696 • 124 7404 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:9292 to:192.168.0.3:9292 • 15 692 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:8777 to:192.168.0.3:8777 • 34 2008 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:6080 to:192.168.0.3:6080 • 0 0 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:8776 to:192.168.0.3:8776 • 132 7836 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:8774 to:192.168.0.3:8774 Public interface (external) 34
Gateway configuration: Requests from inside • 21453 1255K DNAT tcp -- eno1 any anywhere 129.194.187.48 tcp dpt:5000 to:192.168.0.3:5000 • 62357 3741K DNAT tcp -- eno1 any anywhere 129.194.187.48 tcp dpt:9696 to:192.168.0.3:9696 • 5879 353K DNAT tcp -- eno1 any anywhere 129.194.187.48 tcp dpt:9292 to:192.168.0.3:9292 • 1576 94560 DNAT tcp -- eno1 any anywhere 129.194.187.48 tcp dpt:8777 to:192.168.0.3:8777 • 0 0 DNAT tcp -- eno1 any anywhere 129.194.187.48 tcp dpt:6080 to:192.168.0.3:6080 • 0 0 DNAT tcp -- eno1 any anywhere 129.194.187.48 tcp dpt:8776 to:192.168.0.3:8776 • 38033 2279K DNAT tcp -- eno1 any anywhere 129.194.187.48 tcp dpt:8774 to:192.168.0.3:8774 Private interface (internal) 35
Gateway configuration: ssh -p … • 17 884 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:10127 to:192.168.1.127:22 • 11 2048 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:10128 to:192.168.1.128:22 • 10 640 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:10129 to:192.168.1.129:22 • 14 804 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:10130 to:192.168.1.130:22 • 14 896 DNAT tcp -- ens6 any anywhere anywhere tcp dpt:10131 to:192.168.1.131:22 36
Networking VM 4 Gateway 1 6 Internet 5 3 2 Controller Virtual routers 37
Networking VM Gateway 1 6 5 2 3 4 Controller Virtual routers 38
Plan • OpenStack (Newton) • hepiaCloud • OpenStack client 39
OpenStack client • OpenStackClient is a command-line client for OpenStack that brings the command set for Compute, Identity, Image, Object Storage and Block Storage APIs together in a single shell with a uniform command structure. https://docs.openstack.org/python-openstackclient/latest/index.html 40
Recommend
More recommend