Cài đặt các gói bổ trợ như đồng bộ thời gian NTP, giao tiếp giữa các thành phần Openstack qua RabbitMQ, cấu h nh interface [Phục lục 2] Openstack sử dụng SQL cho việc lưu trữ cơ sở dữ liệu. Trong việc triển
khai này sẽ sử dụng MySQL. Cài đặt MYSQL, tạo DB cho Keystone, Glance, Nova, Neutron, Swift [Phụ lục 3]
Hình 6 Tạo các user
Hình 6 thể hiện các user cho các dịch vụ đ được tạo và lưu trong SQL server
36
Hình 7 Tạo các Databases
Hình 7 thể hiện các cơ sở dữ liệu trong SQL cho các project con của Openstack
Cài đặt Keystone, một Project có chức năng xác thực cho toàn bộ các thành phần của Openstack. Nó xác thực qua user/pass và cung cấp token cho user và các project để làm việc với nhau [Phụ lục 4]
Các thành phần của Openstack giao tiếp với nhau dựa trên các Endpoint URL. Mục này sẽ cài đặt các user, tenant, role cho các project [Phụ lục 5]
37
Hình 9 Tạo các tenants
Hình 10 Tạo các roles
Hình 8 thể hiện thông tin các user của các project con cùng các thông tin của nó như email, trạng thái. H nh 9 là thông tin về các tenant thuê để sử dụng các dịch vụ trên Openstack. Trong khi h nh 10 cho thấy quyền của người dùng trên Openstack mà người dùng sẽ được gán vào.
Dịch vụ Glance được dùng để lưu trữ, quản lý các image Cài đặt glance và cấu h nh [Phụ lục 6]
Hình 11 Các image được upload lên Glance
Trên hình 11 cho thấy các tệp tin ảnh máy ảo đang được Openstack quản lý và có thể dùng để khởi tạo máy ảo. Nó bao gồm các hệ điều hành phổ biến như Ubuntu, Centos, Windows server…
Thành phần Nova có nhiệm vụ tạo máy ảo, phân ph i, quản lý tài nguyên Cài đặt Nova và cấu h nh [Phụ lục 7]
38
Hình 12 Các thành phần của Nova
Nova gồm 5 thành phần với nhiệm vụ tạo máy ảo. Như thành phần nova- scheduler sẽ tổ chức, kiểm tra và phân ph i các nguồn tài nguyên RAM, CPU… nhằm cung cấp cho nova-compute và nova-conductor khởi tạo máy ảo. Nova- consleauth đảm nhiệm việc truy cập máy ảo thông qua console.
Cinder là thành phần cung cấp các Volume cho các máy ảo nhằm tăng tính tiện lợi c ng như linh hoạt
Cài đặt Cinder và cấu h nh [Phụ lục 8]
Hình 13 Danh sách các Block Storage trong Cinder
Hình 13 cho thấy Cinder đang cung cấp các volume nào, được gắn với máy ảo nào và trạng thái ra sao.
Neutron là project có nhiệm vụ cung cấp quản lý mạng cho các instant, tenant. Neutron có nhiều dạng, trong việc triển khai này sẽ sử dụng kiểu network per tenant
Cài đặt Openswitch, Neutron và cấu h nh [Phụ lục 9]
39
Neutron gồm 4 thành phần nhằm cung cấp cách dịch vụ liên quan đến mạng như cấp phát địa ch DHCP agent, cung cấp định tuyến Router là L3 agent… H nh 14 ch ra các dịch vụ k m theo trạng thái của t ng dịch vụ có hoạt động hay không.
Swift là project cho việc cung cấp dịch vụ lưu trữ Cài đặt Swift và cấu h nh [Phục lục 10]
Hình 15 Thông tin Swift
Hình 15 kiểm tra thông tin về Swift như s lượng Container, s lượng Object trên tài khoản đang truy cập
Hoziron là project cung cấp Dashboard để người dùng có thể cấu h nh, quản lý instance… Horizon là project dựa trên Django
Cài đặt Horizon và cấu h nh [Phụ lục 11]