openstack · อาทเิช่น rackspace, mirantis, cisco, redhat, etc. •ยังมี...

Post on 08-May-2018

239 Views

Category:

Documents

5 Downloads

Preview:

Click to see full reader

TRANSCRIPT

OpenStackExperiences over the years

vasabilab.cs.tu.ac.th

Thammasat University

OpenStackExperiences over the years

Kasidit Chanchio และ Vasabilab Team

Department of Computer Science

Faculty of Science & Technology

Thammasat University

http://vasabilab.cs.tu.ac.th

Outline

• OpenStack คออะไร • พฒนาการ Over the years

– เพม Components – ปรบปรง Networking– มผพฒนา High Availability Solutions มากขน – ท า Installation ใหงายขน– สงเสรม Interoperability กบเทคโนโลยอนๆ

• สรป

OpenStack คออะไร

แนะน ำ OpenStack

• ระบบ OpenStack เปนซอฟตแวรบรหารจดการๆประมวลผลแบบกลมเมฆ Cloud Management Software แบบ Open Source ทไดรบความนยมเปนอยางมาก http://www.openstack.org– Version ปจจบนชอวา OpenStack Mitaka (ปท

6)

• เรมตนเปน IaaS แตในปจจบนเปนมากกวานน• อนญาตใหผไชสราง Public Cloud เพอใหบรการ Cloud ในวงกวาง

• อนญาตใหผไชสราง Private Cloud ใน

แนะน ำ OpenStack

• มผเขารวม contribute codes เปนจ านวนมาก รวมทงบรษทใหญๆ เชน vmware IBM, Red-hat, Dell, Mirantis, HP, Google อนๆ

• ม OpenStack Foundation เปนผบรหารจดการ

• มการจด Event เพอเผยแพร Software อยางตอเนอง

• มบรษททน าไปใชงานจรงในระดบ Production เพมขน

• ในปจจบนม Vendor หลายแหง Offer OpenStack version ของตนเองทเพม

Features

• ใหบรการจดสรรทรพยาการหนวยประมวลผล เชน virtual machines และ container และเครองจรง

• ใหบรการจดการระบบเครอขาย virtual networks

• ใหบรการจดการระบบจดเกบขอมล virtual storages

• ใหบรการประสานการปฏบตงานของสวนประกอบทหลากหลาย

• ในใหบรการทงแบบ IAAS PAAS และ SAAS อนๆอกมากมาย

เรมตนจำก Servers และ LAN

สรำง Physical Layer

Core Components

• Keystone: ใหบรการ authentication• Glance: ใหบรการจดการ virtual machine

image & snapshots• Nova: ใหบรการจดการ virtual machine• Neutron: ใหบรการ virtual network• Horizon: ใหบรการ Web-based User

Interface• Cielometer: ใหบรการวดปรมาณการใช

resources และสง Notify ตามเงอนไขทผใชก าหนด

• Swift: ใหบรการ object storages

keystone

glance

nova

neutron

Horizon and others

หลกกำรของ OpenStack

• ความปลอดภยส าคญทสด– การใชบรการทก component ตองผานการ

authentication โดย keystone– ม security group หรอ Firewall rules ส าหรบทก virtual machines

• การสงงานทก component ตองมมาตรฐานเดยวกน– ทก component ตองม API ทชดเจน – การสงงานและประสานงานระหวาง component ท าผาน API เทานน

หลกกำรของ OpenStack (cont)

• ระบบตองทนทานตอความผดพลาด – การสอสารท าผาน Persistent Message Queue– Component กลบมาท างานไดตามปกตในภายหลง– มขอเสนอแนะในการท า High Availability

• ปฏบตงานรวมกบ software อนได– ม plugin drivers ส าหรบตดตอกบ Hardware และ software แบบตางๆ

– เชอมตอและท างานรวมกนกบเทคโนโลยอนๆไดเชน SDN

Over the years

• สรางบรการใหมจากบรการทมอย–ใหบรการ IaaS PaaS SaaS และอนๆดวย

• เพมความสามารถและความนาเชอถอของบรการทมอย

• เพมการท า High Availability ให OpenStack Services

• ท าให Document ดขนและตรงกบความเปนจรง

• ท าใหการ Installation งายขน• สงเสรมการ Integration กบเทคโนโลยอนๆ

เพม Components ใหม

ม Components ใหบรกำรหลำกหลำย

• ในปจจบนม Project ส าหรบพฒนา Component ใหมๆ กวา 19 Projects (เขาชม list ไดท OpenStack Web site)

• บน OpenStack web site แสดง Maturity ของแตละ Project

• Components ทมอยไดรบการ Bug Fix อยางตอเนอง

• Basic Component ททกๆ component ใชไดแก– Keystone, Horizon, Ceilometer

• พยายามออกแบบ Component ใหใช

ไมไชแค IaaS อกตอไป

• Heat Orchestration: จดการการประสานงานระหวางสงตางๆ

• Ironic: ใหบรการสรางและบรหารจดการเครองจรง

• Sahara: ใหบรการ map reduce processing• Magnum: ใหบรการ บรหารจดการ

container • Trove: ใหบรการ database• Manila: ใหบรการ shared file system• Murano: ใหบรการ Application Catalog

Heat: ประสำนทกสวน

• ใหบรการใหผใชสามารถก าหนดโครงสราง Infrastructure ตางๆทจ าเปนส าหรบรน Application รวมทงการเพมลดแบบ auto-scaling

• ใชบรการของ Keystone ส าหรบ authentication และ Horizon แสดงภาพของ Template

• ผใชสราง Template (HOT หรอ CloudFormation format) เพอก าหนดสงทตนตองการในการรน Applications

• ก าหนด VMs และ Networks ส าหรบรน Wordpress และ mySQL backend (ใช

ขยำยชนดของ Compute Instances

• เรมจาก VM instance• ขยายชนดของ Instance เปนเครองจรง

• รองรบ Instance ทเปน Process ส าหรบประมวลผลเฉพาะทางเชน MapReduce

• รองรบ Instance ทเปน Container (สามารถมองไดเปน ครอบครวของ Processes ทแยก cgroup, name space และ images) – รนบน VM– รนบนเครองจรง

OS

Hypervisor

VM

processCon-tainer

Hardware

OS image

Hardwareinstance

processCon-tainer

Ironic: ใชงำนเครองจรง

• ใหบรการบรหารจดการเครองจรงส าหรบใชงาน (แทนทจะเปน VM) ในระบบ Cloud – ใช Preboot Execution

Environment (PXE ) เพอ load OS image ใหกบเครองจรงผาน Network

– ใช Intelligent Platform Management Interface (IPMI) จดการเปดปดเครอง จดการ BIOS และก าหนดคาพารามเตอรตางๆ

• ในปจจบนใช Flat Network แตม Project ส าหรบ

OpenStack

เครองจรง

เครองจรง

เครองจรง

เครองจรง

เครองจรง

เครองจรง

ironic nova

Sahara: รนโปรแกรม

• ใหบรการก าหนด Image และ Clusterรวมทง input/output และ job ส าหรบรน Hadoop Map-reduce Applications

• ใชบรการของ Keystone ส าหรบ authentication และ Horizon ส าหรบสงงานและด progress

• ใช Glance ส าหรบ register Hadoopimage ใช Nova ส าหรบรน HadoopCluster ใช Swift ส าหรบเกบ Job binary และ Input/Output ใช Ironic ส าหรบรน job บนเครองจรง

• Sahara ใหบรการ launch Job execution

Magnum: รนหลำกหลำย Containers

• ใหบรการ Container as a Service (CaaS) ทอนญาตใหผใชรน Container Technology ทหลากหลายไมวาจะเปนDockerSwarm, Kubernetes, Mesos บน OpenStackVM หรอ เครองจรง

• ใช Heat, Nova, Ironic, Neutron etc.

• Bay = กลมของ Instances ทใชรน Container (รนหลาย Bay พรอมกนได เชน Bay 1 รน Kuber

OpenStack

magnum

VM เครองจรง

docker

kubernetes

mesos

Bay

Murano Carina

เพมควำมสำมำรถของ Core Componentและเพมบรกำร High Availability

ควำมสำมำรถทมำกขนของ neutron

• ปทแลวมบรการ self-service network, DNAT, SNAT

• OpenStack Liberty + Mitaka เพมบรการ – Provider network + Self-service network, – VLAN network, – DVR (High Availability)

• เฉพาะดาน LBaaS, QoS, BGP routing, High Availability DHCP, DNS, IPv6, RBAC, SR-IOV, SDN SFC, etc.

• ทกๆ Component มพฒนาการอยางตอเนอง

Classic ovs net

Classic ovs net

Dvr network

DVR network

vlan network

มแนวทำงใหบรกำร High Availability ทชดเจนขน

หลกกำร High Availability

• HA มเพอลดเวลา Downtime และ ลดการสญหายของขอมล (Data Loss): ยกตวอยางเชน HA 99% หมายถงม Downtime ได 3.65 วนตอป ในขณะท HA 99.99% ม Downtime ได 52.56 นาทตอป (สามารถท าไดจรงบน OpenStack อางอง Official HA Guide)

• HA เปนความพยายามขจด Single-point of Failure ของระบบ

• Active/Passive เปน HA แบบทในขณะหนงมเพยง Master Service เดยวใหบรการและจะActivate Standby Service เมอ Master ลม

บรกำร High Availability

• ไดรบประสบการณจรงจากการสราง High Availability ใน Production Deployment ของ Vendors ตางๆใน 5 ปทผานมา

• จาก official web site, OpenStack ระบแนวทางในการใหบรการ HA ส าหรบ OpenStackcomponents แตไมไดคลอบคลม guest vm(ผใชตองท า image snapshot หรอ backup data หรอ task checkpointing หรอ VM checkpointing เอง)

• Controller Node และ Network Node: ระบแนวทางตดตง Active/Passive และ Active/Active ส าหรบ service– ใช Pacemaker และ Keepalive

HA ส ำหรบ Controller Services

• แยกพจารณาจากลกษณะของ OpenStackServices วาเปน Stateless หรอ Statefulดงน– Stateless: Web Server, OpenStack API, Nova

scheduler, etc.– Stateful: MySQL, RabbitMQ, etc.

• และเลอกใหบรการแบบ Active/Passive หรอ Active/Active ส าหรบ Services แตละอยาง

• ในปจจบนม Solutions จากหลาย Vendors อาทเชน Rackspace, Mirantis, Cisco, RedHat, etc.

• ยงม Limitations ทระบใน OpenStack HA

Rackspace HA solution

อางองจาก : http://blog.rackspace.com/implementing-high-availability-ha-for-rackspace-private-cloud

Mirantis HA solution

อางองจาก: https://www.mirantis.com/blog/understanding-options-deployment-topologies

-high-availability-ha-openstack/

กำรตดตง OpenStack

ภำพรวมของ OpenStack Installation

• ในปจจบนมหลายวธในการตดตง OpenStack– Red Hat RDO, Mirantis Fuel, OpenStack

Ansible

• แตทกวธต งอยบนพนฐานของการตดตง Core Component ทระบใน OpenStack Official Installation Guide

• พนฐานทส าคญทสดคอ ความรเกยวกบ Core Components ของระบบ และทไปทมาของ component เหลานน– ท าใหสามารถปรบเพมลด Features ไดตามตองการ

OpenStack Installation Guide

• ในปจจบน OpenStack Installation Guide ดและชดเจนขนมาก

• เนนตวอยางการตดตงระบบขนาดเลกทประกอบดวย 2 nodes

• แตกลบขาดขนตอนทชดเจนในการตดตงแบบ Classic OVS network และแบบ DVR network และแบบอนๆ – ตองหาขอมลจาก document ของ OpenStack

KILO – หาจาก Contribute ของผใช

• ยงไมม document ทอธบายวธการ

กำร Installation ทงำยขน

• น า container มาใชท าใหการตดตงงายขน – OpenStack Ansible: น า Doscker Technology มาท าใหการตดตง OpenStack Component งายขน

• น า OpenStack Ironic มาใชท าใหการตดตงงายขน – Triple O: เรมจาก OpenStack เลกๆ และใช

OpenStack Ironic ตดตง OpenStack images บน Physical Nodes และได OpenStack ใหญ

• สราง Process เพอชวยการตดตงและ

Integration กบเทคโนโลยอน

ประสำนกำรท ำงำนกบเทคโนโลยอน

• OpenStack และ SDN integration– Neutron Plugin to OpenDayLight– Neutron Plugin for ONOS

• OpenStack และ container interoperability/integration – รน Container รวมกบ OpenStack: Mesosสามารถใช OpenStack VM ส าหรบรน Container Orchestration

– รน Container ใน OpenStack: เชนใน Magnum, Murano, และ Carina

– รน OpenStack บน Container: รน

SDN Integration

• SDN เปรยบเทยบกบ Computer Layer Model

D. Kreutz et al. “Software-Desfined Networking: A comprehensive Survey.”

• OpenDayLight คอ SDN controller หนงทเปนความรวมมอกนของกวา 36 บรษทเพอสราง

Operating System

App

CPU

App App

SDN Controller

Net App

Fwd Device

Net App Net App

…..

…..

Memory Fwd Device …..

ทมา: https://sreeninet.files.wordpress.com/2014/04/odl_virt1.png

OpenDayLight Integration

• Neutron สามารถใช OpenDayLight เปน Network Controller

• ท าให Datacenter สามารถควบคม Virtual Switch และ OpenFlow switch (hardware) ไดโดยใช OpenDayLight Controller และ Network Applications ตางๆ – Network Virtualization, – QoS, – Traffic Engineering, – Other Net Apps (e.g. Security Apps)

ODL integration

Openstack and OpenDayLightIntegration

OpenDayLight Integration

• OpenDayLight ม Features ทสนบสนนการท างานของ Neutron เกอบทกความสามารถ ยกเวน Security Group (Firewall)– OpenDayLight ม Network Application ทจดการเรอง Firewall อยแลวไดแก Virtual Tenant Network (VTN)

• OpenDayLight ท าใหลดจ านวน Bridge ภายใน neutron ลง

• ท vasabilab เราเขยนวธการ Integrate OpenStack Mitaka แบบ Classic OVS network และ OpenDayLight Beryllium ไว

สรป

• ในปจจบน OpenStack เปน Software ท Features พรอมส าหรบใชงานเปน Production Public และ Private Cloud

• OpenStack คอกลมคนทท างานรวมกนเพอประโยชนสวนรวม

• เปน Software ทปรบตวท างานรวมกบเทคโนโลยอนๆได แตในขณะเดยวกนกรกษาแนวทางของตนเอง

• ความเขาใจใน Installation Guide ของOpenStack ยงเปนพนฐานทส าคญส าหรบการ Admin หรอพฒนาตอยอดหรอเพม

top related