1. Trang chủ
  2. » Công Nghệ Thông Tin

Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack (tt)

26 142 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 26
Dung lượng 520,83 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack (Luận văn thạc sĩ)Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack (Luận văn thạc sĩ)Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack (Luận văn thạc sĩ)Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack (Luận văn thạc sĩ)Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack (Luận văn thạc sĩ)Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack (Luận văn thạc sĩ)Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack (Luận văn thạc sĩ)Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack (Luận văn thạc sĩ)Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack (Luận văn thạc sĩ)Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack (Luận văn thạc sĩ)

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

-

BÙI XUÂN AN

GIẢI PHÁP CẤP PHÁT TÀI NGUYÊN

THEO THỜI KHÓA BIỂU TRÊN OPENSTACK

Chuyên ngành: HỆ THỐNG THÔNG TIN

Mã số: 8480104

TÓM TẮT LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH - NĂM 2018

Trang 2

Luận văn được hoàn thành tại:

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

Người hướng dẫn khoa học: PGS.TS Thoại Nam

Phản biện 1: Phản biện 2:

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc

sĩ tại Học viện Công nghệ Bưu chính Viễn thông

Vào lúc: giờ ngày tháng 01 năm 2018

Có thể tìm hiểu luận văn tại:

- Thư viện của Học viện Công nghệ Bưu chính Viễn thông

Trang 3

MỞ ĐẦU

Trong những năm gần đây, các thuật ngữ như Cloud Computing, Private Cloud, Virtualization đã trở nên phổ biến với nhiều người Không chỉ trong lĩnh vực công nghệ thông tin (CNTT)

mà ở khắp nơi trên thế giới người ta đều nhắc tới ảo hóa và điện toán đám mây Điện toán đám mây đã trở thành một trong những xu hướng phát triển của CNTT ngày nay bởi những lợi ích mà nó mạng lại cho các tổ chức là hết sức to lớn:

- Giảm chi phí quản trị, điện năng, không gian do cho phép triển khai nhiều máy chủ ảo trên số ít máy chủ vật lý

- Tài nguyên được cấp phát linh động, co giãn theo nhu cầu, tận dụng được tối đa tài nguyên đã đầu tư

- Khả năng cấp phát/thu hồi tài nguyên nhanh chóng theo từng thời điểm, mục đích sử dụng

Từ năm 2015, Trường Đại học Văn Lang bắt đầu triển khai giải pháp

ảo hóa máy chủ tại trung tâm dữ liệu của Trường, góp phần nâng cao hiệu quả khai thác tài nguyên hệ thống, phục vụ hiệu quả cho công tác đào tạo, quản lý Trong đó, yêu cầu cung cấp máy chủ ảo cho sinh viên Khoa Công nghệ Thông tin học thực hành, làm đồ án có yêu cầu khá phức tạp và phát sinh những thách thức mới đặt ra cho người quản trị hệ thống:

- Để tận dụng và tiết kiệm tài nguyên, việc cấp phát máy ảo cần được triển khai dựa trên thời khoá biểu: máy ảo sử dụng trong khoảng thời gian nào, cấu hình yêu cầu ra sao để từ đó cung cấp tài nguyên cho hợp lý, tối ưu, phù hợp với khả

Trang 4

năng đáp ứng còn lại của hệ thống, đặc biệt là những thời điểm có nhiều môn học sử dụng nhiều máy ảo cùng lúc

- Việc cấp phát/thu hồi máy ảo hoàn toàn tự động dựa vào thời khoá biểu

- Số lượng máy chủ ảo tăng nhanh, yêu cầu người quản trị phải có biện pháp quản lý số lượng máy chủ ngày càng lớn một cách hiệu quả, cho phép tổng hợp các thông tin quản trị trong thời gian ngắn

- Các yêu cầu cấp phát máy chủ, tài nguyên ảo hóa ngày càng nhiều và đòi hỏi thời gian đáp ứng nhanh tuy nhiên quy trình cấp phát truyền thống chưa được tối ưu do vậy chưa đáp ứng được yêu cầu từ phía người sử dụng

Tại cơ quan tôi đang công tác, việc cấp phát máy chủ ảo cho sinh viên còn làm theo phương pháp thủ công khi có yêu cầu từ môn học

Chính vì vậy, tôi chọn đề tài "Giải pháp cấp phát tài nguyên theo thời khóa biểu trên OpenStack" để đáp ứng nhu cầu học thực thực

hành, làm đồ án của sinh viên sao cho tài nguyên được cấp phát hiệu quả, nhanh chóng và tiết kiệm

Trang 5

CHƯƠNG 1 - TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY

VÀ OPENSTACK 1.1 Xu hướng công nghệ Điện toán đám mây hiện nay

1.1.1 Xu hướng điện toán đám mây

Với ý tưởng bảo toàn năng lượng, hợp nhất nguồn tài nguyên, làm cho thông tin trở nên bảo mật và sẵn sàng bất cứ khi nào cần thiết, khắc phục những hạn chế của môi trường điện toán truyền thống:

- Một lượng lớn các tài nguyên tính toán không được sử dụng làm tiêu tốn không gian trong các trung tâm dữ liệu lớn

- Cần tối thiểu một quản trị viên để vận hành hệ thống

- Chi phí cho năng năng lượng ngày một tăng cao

Với điện toán đám mây, các tài nguyên nhàn rỗi có thể đưa vào sử dụng và được tận dụng bằng cách bán cho người dùng có nhu cầu Từ ý tưởng cơ bản đó, điện toán đám mây ngày càng phát triển với nhiều tính năng vượt trội, cho phép tối ưu tài nguyên tính toán, đảm bảo tính bảo mật, linh hoạt trong vận hành

1.1.2 Đặc điểm của điện toán đám mây

- Tính tự phục vụ theo nhu cầu

- Truy cập diện rộng

- Dùng chung tài nguyên và độc lập vị trí

- Khả năng co giãn nhanh chóng

- Chi trả theo thực dùng

1.1.3 Các mô hình triển khai và các dịch vụ của điện toán đám mây

Trang 6

Ba mô hình triển khai:

- Infrastructure as a Service (IaaS

- Platform as a Service (PaaS)

- Software as a Service (SaaS)

1.2 OpenStack là gì?

1.2.1 Giới thiệu chung

- Openstack là dự án mã nguồn mở cho phép triển khai IaaS Cloud computing Bên cạnh sự hỗ trợ tích cực từ cộng đồng, OpenStack cũng được hỗ trợ bởi nhiều công ty tên tuổi như Redhat, IBM, VMWare… OpenStack là giải pháp cho public cloud và private cloud với quy mô đa dạng

- Được thiết kế thành các component, kết nối với nhau qua các API nên OpenStack rất linh động, một component có thể được thay thế mà không ảnh hưởng đến các component còn lại

Trang 7

- Có thể quản trị qua trình duyệt web với dashboard

- Dung lượng lưu trữ được tính đến mức megabyte, cho phép tính toán chi phí rất linh động

- Dễ dàng tích hợp, triển khai với nhiều cấu hình phần cứng

- Thời gian upload dữ liệu chưa được tối ưu

- Chưa hỗ trợ sẵn đa ngôn ngữ, hệ thống giám sát, hệ thống tính phí

- Vấn đề kỹ thuật chỉ mới được hỗ trợ qua kênh email

1.2.5 Những Case Study đã triển khai OpenStack

1.3 Kết luận chương

Nền tảng điện toán đám mây đang là một xu thế trong công nghệ thông tin Nó cho phép triển khai nhiều mô hình ứng dụng, phù hợp với các nhu cầu ngày càng đa dạng Trong đó, OpenStack là một

hệ thống mã nguồn mở nổi trội Ngoài việc được hỗ trợ bởi các tập đoàn công nghệ thông tin lớn, OpenStack còn có một cộng đồng phát triển mạnh mẽ Yếu tố mã nguồn mở cũng là một ưu điểm của OpenStack, nó cho phép người dùng tinh chỉnh, phát triển các chức năng tùy theo nhu cầu của mình, đóng góp cho cộng đồng Trong chương tiếp theo, tôi sẽ tập trung nghiên cứu khả năng, cơ chế cấp

Trang 8

phát tài nguyên của OpenStack để ứng dụng nó vào nhu cầu thực tế tại cơ quan đang công tác

Trang 9

CHƯƠNG 2 - CẤP PHÁT TÀI NGUYÊN

TRONG OPENSTACK 2.1 Cơ chế cấp phát máy ảo của OpenStack

Một trong những use-case quan trọng nhất trong mọi dịch vụ Cloud là việc cấp phát máy ảo Phần này sẽ trình bày việc một máy

ảo được được cấp phát như thế nào trên OpenStack, bao gồm: workflow yêu cầu máy ảo, sự tương tác giữa các thành phần của các project khác nhau trong OpenStack

Bước 1: Dashboard / CLI nhận thông tin đăng nhập và gởi tới Keystone để chứng thực

Bước 2: Keystone xác nhận tài khoản, sinh ra và gởi token về Token này được dùng gởi yêu cầu đến các thành phần khác qua REST-Call

auth-Bước 3: Dashboard / CLI chuyển đổi yêu cầu tạo máy ảo trong ‘launch instance’ hoặc ‘nova boot’ thành REST-API và gởi đến nova-api

Bước 4: nova-api nhận và gởi yêu cầu đến keystone để kiểm tra auth-token và quyền truy cập

Bước 5: Keystone kiểm tra token và gởi lại header được cập nhật cùng với quyền truy cập

Bước 6: nova-api tương tác với nova-database

Bước 7: Khởi tạo record database cho máy ảo mới

Bước 8: nova-api gởi yêu cầu rpc.call tới nova-scheduler Bước 9: nova-scheduler chọn yêu cầu từ hàng đợi

Trang 10

Bước 10: nova-scheduler tương tác với nova-database để tìm

ra host phù hợp thông qua việc lọc và đánh trọng số

Bước 11: Trả về thông tin host phù hợp cho máy ảo sau khi lọc và đánh trọng số

Bước 12: scheduler gởi yêu cầu rpc.cast tới compute để tạo máy ảo trên host phù hợp

nova-Bước 13: nova-compute chọn yêu cầu từ hàng đợi

Bước 14: compute gởi yêu cầu rpc.call tới conductor để lấy thông tin nhưng host ID và flavor (RAM, CPU, DISK)

nova-Bước 15: nova-conductor chọn yêu cầu từ hàng đợi

Bước 16: nova-conductor tương tác với nova-database Bước 17: Trả về thông tin máy ảo

Bước 18: nova-compute chọn máy ảo từ hàng đợi

Bước 19: nova-compute thực hiện REST call bằng việc chuyển auth-token tới glance-api để lấy Image URI bằng Image ID

và tải image từ trung tâm lưu trữ

Bước 20: glance-api kiểm tra token với keystone

Bước 21: nova-compute lấy thông tin metadata của image Bước 22: nova-compute thực hiện REST-call bằng việc chuyển auth-token tới Network API để cấp phát cấu hình mạng cho máy ảo

Bước 23: quantum-server kiểm tra auth-token với keystone Bước 24: nova-compute lấy thông tin cấu hình mạng

Trang 11

Bước 25: nova-compute thực hiện REST-call bằng việc chuyển auth-token tới Volume API để gán các volume vào máy ảo

Bước 26: cinder-api kiểm tra auth-token với keystone

Bước 27: nova-compute lấy thông tin block storage

Bước 28: nova-compute phát sinh dữ liệu cho hypervisor và thực thi yêu cầu trên hypervisor

2.2 Cơ chế lập lịch của OpenStack

2.2.1 Bộ lọc lập lịch

Bộ lọc lập lịch (Filter Scheduler) trong OpenStack hỗ trợ việc lọc và đánh trọng số để quyết định một máy ảo mới sẽ được tạo trên host (Compute node) nào

Suốt quá trình hoạt động, bộ lọc lập lịch lặp lại việc rà soát mọi compute node, đánh giá các host dựa trên bộ lọc Danh sách các host kết quả được sắp xếp theo trọng số Bộ lọc sau đó lựa chọn các host có trọng số cao nhất để dùng cho việc cấp phát các máy ảo được yêu cầu Host được chọn là host phù hợp với các tiêu chí của bộ lọc (mô tả chi tiết bên dưới)

Các bộ lọc chuẩn có sẵn trong Nova Scheduler

Trang 12

Ví dụ: file nova.conf có thể chứa các thiết lập bộ lọc như sau:

scheduler.driver=nova.scheduler.FilterScheduler

filter_scheduler.available_filters=nova.scheduler.filters.all_filters filter_scheduler.available_filters=myfilter.MyFilter

filter_scheduler.enabled_filters=RamFilter,ComputeFilter,MyFilter

Với những thiết lập này, nova sẽ dùng FilterScheduler làm trình điều khiển lập lịch Các bộ lọc nova chuẩn và MyFilter được áp dụng vào FilterScheduler Các bộ lọc RamFilter, ComputeFilter và MyFilter được áp dụng mặc định khi không có bộ lọc nào được đưa

ra trong yêu cầu tạo máy ảo

2.2.2 Trọng số

Bộ lọc lập lịch sử dụng việc đánh trọng số để làm việc, đây

là cách để lựa ra host phù hợp nhất từ nhóm các host phù hợp bằng cách đánh trọng số cho mọi host trong danh sách

Để ưu tiên một trọng số so với các trọng số khác, mọi trọng

số phải được định nghĩa một số nhân trước khi tính toán trọng số cho

Trang 13

từng node Mọi trọng số được chuẩn hoá trước nên số nhân được áp dụng dễ dàng Trọng số cuối cùng có cách tính như sau:

weight = w1_multiplier * norm(w1) + w2_multiplier * norm(w2) +

Bộ lọc lập lịch đánh trọng số các host dựa trên thông số filter_scheduler.weight.-classes với các tiêu chí sau

để việc lựa chọn tiếp theo có thể điều chỉnh cho phù hợp Điều này là

có lợi nếu người dùng yêu cầu một số lớn các máy ảo, vì trọng số được tính toán cho mỗi máy ảo được yêu cầu

2.3 Kết luận chương

OpenStack có cơ chế cấp phát tài nguyên khá linh động Nó đáp ứng tốt nhu cầu của các trung tâm dữ liệu, các đơn vị kinh doanh VPS, hosting Tuy nhiên, với bài toán cụ thể của luận văn, nó chưa cho phép ta cấp phát các máy ảo theo thời gian Đồng thời, việc gán máy ảo vào các node đang là cố định Vấn đề này sẽ được nghiên cứu và đề xuất giải pháp trong Chương 4

Trang 14

CHƯƠNG 3 - BÀI TOÁN VECTOR BIN PACKING

VÀ GIẢI PHÁP CẤP PHÁT TÀI NGUYÊN

3.1 Tương quan giữa bài toán Vector Bin Packing (VBP) với việc cấp phát tài nguyên tính toán

Trong bài toán VBPd, ta được cho một tập I có n hộp I1, I2, I3

… In với mỗi Ii thuộc R d Một cách đóng gói hợp lệ là một phân vùng của I vào k tập (hoặc hộp) B1 … Bk sao cho với mỗi j, I thì ∑𝑙 ∈𝐵𝑗𝐼𝑖𝑙

≤ 1 Mục tiêu của VBPd là tìm ra một cách đóng gói hợp lệ với k nhỏ nhất VBPd có độ khó NP-hard với mỗi d và APX-hard với d ≥ 2

Mô hình VBP mô tả tốt bài toán cấp phát tài nguyên với một tập các server với khả năng đã biết trước và tập các dịch vụ / máy ảo với nhu cầu biết trước Nhu cầu của các dịch vụ và khả năng của các server thể hiện bằng một số chiều Gần đây VBP được quan tâm vì

nó mô hình hóa tốt bài toán sắp xếp các máy ảo Ảo hóa đang phát triển mạnh mẽ trong các trung tâm dữ liệu và hứa hẹn sẽ khai khác sức mạnh tính toán hiệu quả hơn Nhiều nhà cung cấp dịch vụ đã ứng dụng công nghệ này để tiết kiệm ngân sách IT và chi phí bảo trì Tuy nhiên sức mạnh của kỹ thuật này chỉ thật sự tốt khi layer quản lý thực hiện tốt việc lập lịch / gán các máy ảo vào các máy vật lý trong trung tâm dữ liệu Khi thực hiện việc gán, nó phải đảm bảo rằng không máy vật lý nào bị quá tải đồng thời giảm tối thiểu số máy vật

lý Mục tiêu không chỉ là giảm đầu tư vào phần cứng và còn giảm được năng lượng tiêu thụ trong việc vận hành trung tâm dữ liệu

Bài toán này có khó khăn ở yếu tố đa chiều Ví dụ, mỗi máy

ảo có thông số sử dụng CPU, RAM, HDD và Network Đồng thời,

Trang 15

mỗi host cũng có các thông số như vậy và việc sắp xếp các máy ảo phải chắc chắn rằng số host là tối thiểu trong khi không được vượt quá các ràng buộc về quá tải

Có 2 thuật toán đã được sử dụng cho bài toán này Thuật toán đầu tiên là các FFD (First Fit Decreasing) heuristic Trong FFD, một số trọng số được áp dụng cho các vật để mỗi vật được gán một đơn vô hướng Các vật sau đó được sắp xếp và lần lượt xếp từ lớn đến nhỏ Trong trường hợp d=1, cách tiếp cận này là rất hiệu quả Một cách tiếp cận khác là xem bài toán như Phương trình tuyến tính nguyên (Integer Linear Program) Tuy nhiên với tiếp cận này, khi n lớn đến hơn 100 thì thuật toán hoạt động rất chậm

3.2 Họ các thuật toán FFD

Thuật toán tham lam là heuristic tự nhiên nhất cho VBP một chiều Trong đó, các vật được xếp theo kích thước giảm dần, sau đó các vật được xếp lần lượt vào hộp đầu tiên còn đủ chỗ Thuật toán này thường được gọi là FFD FFD đảm bảo tìm được một cấp phát với nhiều nhất 11

9OPT + 1 hộp trong trường hợp một chiều và được đánh giá là hiệu quả trong thực tế

Không có một cách tổng quát hóa rõ ràng của FFD cho trường hợp nhiều chiều Ta phải quyết định gán một trọng số cho một vector d-chiều Ở đây, ta xét 2 tùy chọn:

w(i) = ∏𝑖 ≤𝑑𝐼𝑖 (FFDProd) (1) w(i) = ∑𝑖 ≤𝑑𝑎𝑖𝐼𝑖 (FFDSum) (2)

Trang 16

Với vector a = a1, … ad là một vector tỷ lệ Vector a có hai chức năng Thứ nhất, nó được dùng để tỷ lệ hóa và bình thường hóa yêu cầu giữa các chiều Thứ hai, nó cho phép ta đánh trọng số yêu cầu của các chiều tùy theo mức độ quan trọng của chúng

3.2.1 Chọn trọng số

Nếu bài toán xếp chỗ giới hạn với chỉ một loại tài nguyên (như CPU) thì bản chất của bài toán là một chiều và FFD là thuật toán được lựa chọn để sử dụng Ví dụ, nếu một chiều nào đó luôn trội hơn về yêu cầu so với các chiều khác thì FFD sẽ bỏ qua yêu cầu của các chiều khác Thuật toán FFD dùng tích vô hướng (FFDProd) không có thuộc tính này: sự thay đổi trong mọi hướng ảnh hưởng tới việc sắp xếp, bất kể chiều đó có độ quan trọng như thế nào FFDSum thì tốt hơn trong trường hợp này, các chiều ít có ảnh hưởng có thể được gán hệ số ai nhỏ hơn và có tác động ít hơn vào việc sắp xếp Một lựa chọn tự nhiên là gán ai bằng yêu cầu trung bình avdemi =

1

𝑛∑𝑛𝑙=1𝐼𝑙𝑙 trong chiều i Việc này cho ta một heuristic gọi là FFDAvgSum Một lựa chọn khác là ta khảo sát là cho ai ở dạng mũ, tức là ai = exp(ϵ.avdemi) cho một vài hằng số ϵ phù hợp Ta gọi heuristic này là FFDExpSum Các trọng số này cũng được dùng trong heuristic hình học ở phần sau

3.2.2 Thời gian chạy của FFD

FFD có hai giai đoạn, giai đoạn một là sắp xếp các vật, tốn thời gian O(nd+nlogn) Trong giai đoạn hai, các vật được xếp vào hộp đầu tiên có đủ chỗ chứa Trong trường hợp một chiều, tổng thời gian chạy của thuật toán được giới hạn ở O(nlogn) Tuy nhiên, trong

Ngày đăng: 12/03/2018, 16:10

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm