Introduction to OpenStack Nabil Abdennadher, HES-SO What is - - PowerPoint PPT Presentation

introduction to openstack
SMART_READER_LITE
LIVE PREVIEW

Introduction to OpenStack Nabil Abdennadher, HES-SO What is - - PowerPoint PPT Presentation

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


slide-1
SLIDE 1

Introduction to OpenStack

Nabil Abdennadher, HES-SO

slide-2
SLIDE 2

2

  • 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.

What is OpenStack ?

slide-3
SLIDE 3

3

  • OpenStack (Newton)
  • hepiaCloud
  • OpenStack client

Plan

slide-4
SLIDE 4

OpenStack forum

4

slide-5
SLIDE 5

OpenStack timelines

5 Key events:

  • 2005-2010: Rackspace develops their cloud solution
  • March 2010 - decides to open source it
  • May 2010 - NASA open sources its Nebula platform
  • June 2010 - NASA and Rackspace join hands to

create OpenStack

  • July 2010 - Inaugural design summit in Austin

convened with 25+ partners

Major company backings:

  • Aug 2011: Canonical backs OpenStack
  • Oct 2011 - DELL adopts OpenStack
  • 2012 - AT&T, HP, VMWare, Intel, NEC joins

OpenStack

  • Sep 2012 - OpenStack foundation formally launched
slide-6
SLIDE 6

6

OpenStack releases

https://releases.openstack.org/

slide-7
SLIDE 7

OpenStack today

7

example of who uses OpenStack

slide-8
SLIDE 8

8

Basic services

slide-9
SLIDE 9

9

  • Keystone: provides identity services for OpenStack.
  • A

central list

  • f

users/permissions mapped against OpenStack services.

  • Provides multiple means of access.

Identity service : Keystone

slide-10
SLIDE 10

10

  • Glance: provides image services to OpenStack.
  • "images" refers to images (or virtual copies) of hard disks. Used as

templates for deploying new VMs.

Image Service: Glance

slide-11
SLIDE 11

11

  • OpenStack compute (nova): Manages the lifecycle of compute

instances in an OpenStack environment. Responsibilities include spawning, scheduling and decommissioning of virtual machines on demand.

Compute service: OpenStack compute (nova)

slide-12
SLIDE 12

12

  • 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).

Networking service: Neutron

slide-13
SLIDE 13

13

Dashboard: Horizon

  • Horizon: The front
  • ffice of OpenStack.
  • The only native

graphical interface to OpenStack.

slide-14
SLIDE 14

14

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

slide-15
SLIDE 15

Core services interplay

15

slide-16
SLIDE 16

There are 59 other services!

16

Accessed[30.08.2017] - https://governance.openstack.org/tc/reference/projects/

slide-17
SLIDE 17

17

  • 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.

Additional services

slide-18
SLIDE 18

18

  • 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.

Additional services

slide-19
SLIDE 19

Not all services are equally used or deployed!

19 We will explore the most popular ones in more details

slide-20
SLIDE 20

20

  • 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).

Controller Node

slide-21
SLIDE 21

21

  • 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.

Compute nodes

slide-22
SLIDE 22

22

  • 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.

Storage nodes (optional)

slide-23
SLIDE 23

23

slide-24
SLIDE 24

24

https://docs.openstack.org/newton/install-guide- ubuntu/overview.html

slide-25
SLIDE 25

25

Hardware requirements

https://docs.openstack.org/newton/install-guide- ubuntu/overview.html

slide-26
SLIDE 26

26

  • 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)

Exercise 1

slide-27
SLIDE 27

27

slide-28
SLIDE 28

28

  • OpenStack (Newton)
  • hepiaCloud
  • OpenStack client

Plan

slide-29
SLIDE 29

hepiaCloud

29

  • 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
slide-30
SLIDE 30

hepiaCloud

30

10 servers GbE network GbE network GbE network 15 desktops 15 desktops GbE network (a vlan through hepia’s network) BXXX (IT centre) A401 A425 Internet

slide-31
SLIDE 31

hepiaCloud architecture

hepiacloud .hesge.ch

slide-32
SLIDE 32

32

  • 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

The network

slide-33
SLIDE 33

33

Configuring floating IP addresses

slide-34
SLIDE 34

34

  • 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 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

Gateway configuration: Requests from outside

Public interface (external)

slide-35
SLIDE 35

35

  • 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 DNAT

tcp -- eno1 any anywhere 129.194.187.48 tcp dpt:6080 to:192.168.0.3:6080

  • 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

Gateway configuration: Requests from inside

Private interface (internal)

slide-36
SLIDE 36

36

  • 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

Gateway configuration: ssh -p …

slide-37
SLIDE 37

37

Networking

Controller VM Gateway Internet 1 2 3 4 5 6 Virtual routers

slide-38
SLIDE 38

38

Networking

Controller VM Gateway 1 2 5 6 Virtual routers 3 4

slide-39
SLIDE 39

39

  • OpenStack (Newton)
  • hepiaCloud
  • OpenStack client

Plan

slide-40
SLIDE 40

OpenStack client

40

  • 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

slide-41
SLIDE 41

OpenStack Client

41

  • To install OpenStack Client
  • http://lsds.hesge.ch/api-hepiacloud-interface/
  • Syntax: openstack command-name option…
  • penstack help
  • penstack command-name - help
  • Documentation is available on:
  • https://docs.openstack.org/python-openstackclient/latest/index.html
slide-42
SLIDE 42

Examples: Manage instances …

42

  • penstack server list : shows the ID, name, status, private and public

IP addresses for all instances in the project to which you belong

  • penstack server create
  • -flavor m1.medium --image <IMAGE_ID>
  • -key-name <KEYNAME>
  • -user-data <USER_DATA_FILE>
  • -security-group <SECGROUP_NAME>
  • -nic net-id= NETWORK_ID
  • -meta KEY= <VALUE>
  • -availability-zone nova:<HYPERVISOR-NAME>

INSTANCE_NAME

slide-43
SLIDE 43

Examples: Manage floating IP addresses

43

  • penstack floating ip list : list of floating IP addresses
  • penstack floating ip create ext-net: create a floating IP address
  • ext-net: Network to allocate floating IP from
  • penstack server add floating ip Instance-Name Floating-IP : assign a

floating IP to an instance

  • penstack server remove floating ip Instance-Name Floating-IP:

remove (disassociate) a floating IP from an instance.

  • penstack floating ip delete Floating-IP