Giới thiệu Cloud computing và triển khai trên OpenStack
Cloud computing OpenStack Giới thiệu Cloud computing triển khai OpenStack Thực hiện: Lê Minh Chí Nguyễn Sơn Tùng Tháng 4/2012 Page Cloud computing OpenStack Contents Thuật ngữ viết tắt T àlược Phần 1: Cloud Computing giải pháp I Cloud computing àGiớiàthiệuàvềà Điện toán đ Những lợi ích củầ Điệ àto àđ y y Các công nghệ ảồh ầ(Virtualizatio àTe h ologies) Full-virtualization: Para-virtualization 10 OS-level virtualization (Isolation) 10 àHướ gàtiếpà ậ Cloud o puti g àsửàdụ gà II Các giải pháp mã nguồn mở hoà gà ụà guồ 11 àhì hàđiện tố àđ y 11 Eucalyptus 14 OpenNebula 14 Nimbus 14 Xen Cloud Platform (XCP) 14 AbiCloud 14 OpenStack 14 Phần 2: OpenStack 15 I Amazon Web Service - nguồn cảm hứng cho raàđời Openstack 15 II Giới thiệu OpenStack Projects 18 Lịch sử Openstack 18 Tổng quan Openstack 19 2.1 Các phiên OpenStack 19 2.2 OpenStack Diablo 19 2.1.1 OpenStack compute 22 2.1.2 OpenStack Object Storage 25 2.1.3 OpenStack Image Service 28 2.1.4 OpenStack Dashboard (Horizon) OpenStack Identity 30 II Mơ hình triển khai OpenStack 31 Các công cụ sử dụng 31 àC ướ iàđặt thử nghiệm 32 ** Cài đặt MySql server 32 Tháng 4/2012 Page Cloud computing OpenStack ** Cài đặt gói hư unzip, rabbitmq-server, euca2tools 32 ** Cài đặt cấu hình Glance 32 ** Cài đặt cấu hình Nova 32 ** Tạo Nova project 33 ** Tạo chứng (credential) access key 33 ** Upload image khởi chạy instance 33 ** Cài đặt cấu hình Swift 33 Phầ :à“e urityàtro gà Cloudà o puti g 35 I CSA 35 Quản lý CC (5 phần) 35 Hoạtàđộng CC (8 phần) 35 II NIST 36 III Các nghiên cứu từ àtrườ gàđại học 36 Information Security Policies 37 Cloud RAS issues 37 2.1 Data Leakage 37 2.2 Cloud security issues 38 IV Các giảiàph pàse urityà hồ àhì hà CloudàCo puti g 38 Access control and management 38 Các biệ àph pàđối phó xảy vấ àđề security 39 DDoS 39 III OpenStack Security 40 Phần 4: Tổng kết 41 **** Những việ àđ àđạtàđược 41 **** Những việ hưaàđạtàđược 41 **** Kế hoạch việc thử nghiệm 42 Phụ lục: 43 Phụ lụ :àTutorialà iàđặt OpenStack Ubuntu 11.10 64 bits 43 Phụ lục 2: Một số link tham khảo khác 43 References: 44 Tháng 4/2012 Page Cloud computing OpenStack Thuật ngữ viết tắt CC Cloud computing IaaS Infrastructure as a Service PaaS Platform as a Service SaaS Software as a Service CSA Cloud Security Alliance SLA Service Level Agreement NIST National Institute of Standard and Technology AWS Amazon Web Service HĐH Hệ Điều Hành VMM Virtual Machine Monitor Tháng 4/2012 Page Cloud computing OpenStack Tóm lược Cloud computing (CC) chủ đề đ ợc bàn luận sôi nay, công nghệ liên quan đến 'cloud' nhận đ ợc nhiều quan tâm từ ng i dùng doanh nghiệp Đư có nhiều s n phẩm th ơng m i nh nguồn m miễn phí đ ợc giới thiệu cung cấp cho ng i dùng kh xây dựng thành phần CC, từ h tầng IaaS đến PaaS SaaS Tuy nhiên tất c trình phát triển, sai lầm nghe theo qu ng cáo từ nhà cung cấp Để có nhận xét xác chi tiết tr ng s n phẩm này, cách tốt thử nghiệm chúng Một u điểm CC sử dụng hiệu qu tài nguyên từ hệ thống vật lý hiệu suất sử dụng l ợng cao IaaS thành phần quan trọng giúp cho CC thực đ ợc điều Là thành phần qu n lý h tầng phần cứng, m ng phân phối l i tài nguyên này, IaaS phần cung cấp cho ng i dùng kh xây dựng h tầng s cho đám mây riêng họ (Private Cloud) Trong báo cáo nhóm xin trình bày số thử nghiệm b ớc đầu IaaS đ ợc quan tâm nay: Openstack Là dự án nguồn m đ ợc tham gia b i 160 công ty lớn giới, Openstack mang đến cho doanh nghiệp kh xây dựng đám mây riêng phục vụ cho công việc nội lớn đám mây để cung cấp dịch vụ liên quan tới CC Trong phần đầu báo cáo giới thiệu số khái niệm CC cơng nghệ o hóa Phần xin đ ợc trình bày Openstack, công việc thử nghiệm đư kết qu đ t đ ợc Phần cuối phân tích security hệ thống CC hoàn chỉnh để so sánh đánh giá với OpenStack Các tài liệu tham kh o nh h ớng dẫn chi tiết cài đặt, cấu hình đ ợc đính kèm phần phụ lục tham kh o Tháng 4/2012 Page Cloud computing OpenStack Phần 1: Cloud Computing giải pháp I Cloud computing Giới thiệu Điện toán đám mây Điện tốn đám mây (cloud computing) hay cịn gọi điện tốn máy chủ o nơi tính tốn đ ợc “định h ớng dịch vụ” phát triển dựa vào Internet Cụ thể hơn, mơ hình điện tốn đám mây, tất c tài nguyên, thông tin, software đ ợc chia sẻ cung cấp cho máy tính, thiết bị, ng i dùng d ới d ng dịch vụ t ng h tầng m ng công cộng (th ng m ng Internet) [1, 2] Các users sử dụng dịch vụ nh s liệu, website, l u trữ, … mơ hình cloud computing khơng cần quan tâm đến vị trí địa lý nh thơng tin khác hệ thống m ng đám mây - “điện toán đám mây suốt ng i dùng” Ng i dùng cuối truy cập sử dụng ứng dụng đám mây thơng qua ứng dụng nh trình duyệt web, ứng dụng mobile, máy tính cá nhân thơng th ng Hiệu sử dụng phía ng i dùng cuối đ ợc c i thiện phần mềm chuyên dụng, s liệu đ ợc l u trữ cài đặt hệ thống máy chủ o mơi tr ng điện tốn đám mây “data center” “Data center” thuật ngữ khu vực server thiết bị lưu trữ, bao gồm nguồn điện thiết bị khác rack, cables, …có khả sẵn sàng độ ổn định cao Ngồi cịn bao gồm tiêu chí khác như: tính module hóa cao, khả mở rộng dễ dàng, nguồn làm mát, hỗ trợ hợp server lưu trữ mật độ cao [3] Hình bên d ới mơ t định nghĩa CC bao gồm tính chính, với mơ hình triển khai, mơ hình dịch vụ Tháng 4/2012 Page Cloud computing OpenStack Hình 1: Tổng quan Cloud Computing (NIS T) tính CC tùy thuộc vào mơ hình triển khai thực tế khác Ví dụ mơ hình private cloud, tài nguyên đ ợc sử dụng b i doanh nghiệp tính “On-demand service” hay “resource pool” khác so với mơ hình khác o o o o o [4] Rapid elasticity: nhà cung cấp CC dễ dàng định thu hồi tài ngun người dùng nhanh chóng Về phía người dùng phép yêu cầu tài nguyên “không giới hạn” việc chi trả theo tiền Broad network access: truy cập vào tài nguyên máy tính dễ dàng thông qua chế network tiêu chuẩn Measured service: provider đảm bảo việc tính tốn lượng tiêu dùng khách hàng Mơ hình hướng đến “pay as you go” On-demand self-service: cho phép khách hàng tùy chỉnh tài nguyên sử dụng mà không cần phải thông báo hay qua can thiệp provider Resource pooling: loại tài nguyên vật lý ảo CC chia sẻ với tự động cấp cho users Có mơ hình triển khai điện tốn đám mây public (cơng cộng), private (riêng), hybrid (“lai” đám mây công cộng riêng) Đám mây cơng cộng mơ hình đám mây mà đó, nhà cung cấp đám mây cung cấp dịch vụ nh tài nguyên, platform, hay ứng dụng l u trữ đám mây public bên Các dịch vụ public cloud miễn phí có phí [5] Đám mây riêng dịch vụ đ ợc cung cấp nội th ng dịch vụ kinh doanh, mục đích nhắm đến cung cấp dịch vụ cho nhóm ng i đứng đằng sau firewall Đám mây “lai” môi tr ng đám mây mà kết hợp cung cấp dịch vụ công cộng riêng [5] Ngồi cịn có “community cloud” đám mây nhà cung cấp dịch vụ đám mây Về mô hình cung cấp dịch vụ có lo i IaaS – cung cấp h tầng nh server, PaaS – cung cấp Platform nh service, SaaS – cung cấp software nh service Trên định nghĩa NIST CC, phần trình bày lợi ích CC nhằm bật tính so với mơ hình truyền thống Những lợi ích Điện tốn đám mây Có thể kể số lợi ích b n đặc tr ng hệ thống “Điện toán đám mây” nh sau [6]: Tăng linh ho t hệ thống (Increased Flexibility): cần thêm hay bớt hay vài thiết bị (storaged devices, servers, computers, …) cần vài giây Sử dụng tài nguyên theo yêu cầu (IT Resources on demand): tùy thuộc vào nhu cầu khách hàng mà administrator setup cấu hình hệ thống cung cấp cho khách hàng Tăng kh sẵn sàng hệ thống (Increased availability) : ứng dụng dịch vụ đ ợc cân động để đ m b o tính kh dụng Khi hardware bị h hỏng không làm nh h ng đến hệ thống, suy gi m tài nguyên hệ thống Tiết kiệm phần cứng (Hardware saving): mơ hình truyền thống nhiều tr ng hợp cần hệ thống riêng biệt cho tác vụ, dịch vụ Điều gây lưng phí, Tháng 4/2012 Page Cloud computing OpenStack mơ hình “Điện toán đám mây”, tài nguyên IT đ ợc qu n lý để đ m b o không lãng phí Cung cấp dịch vụ với độ sẵn sàng gần nh 100% (taking down services in real time) Tr theo nhu cầu sử dụng thực tế (Paying-as-you- go IT): mơ hình “Cloud computing” tích hợp với hệ thống billing để thực việc tính c ớc dựa theo dung l ợng ng i dùng tài nguyên nh tốc độ CPU, dung l ợng RAM, dung l ợng HDD, … Tóm l i, mơ hình “Điện toán đám mây” đư khắc phục đ ợc yếu điểm quan trọng mơ hình truyền thống “kh m rộng (scalability)” “độ linh ho t (flexibility)” Các tổ chức nh cơng ty triển khai ứng dụng dịch vụ nhanh chóng, chi phí gi m, rủi ro[6] Phần giới thiệu o hóa – cơng nghệ cốt lõi đ ợc xem nh b ớc đệm chuyển tiếp từ mơ hình truyền thống sang CC Các cơng nghệ ảo hóa Virtualization Technologies 3.1 Kernel mode User mode Tr ớc vào chi tiết cơng nghệ o hóa xin đ ợc sơ l ợc số khái niệm liên quan đến việc xử lý tài nguyên phần cứng hệ điều hành Thông th ng HĐH đ ợc cài đặt có modes ho t động chính: Kernel mode: khơng gian bảo vệ nơi mà “nhân” HĐH xử lý tương tác trực tiếp với phần cứng Một ví dụ điển hình cho Kernel mode drivers thiết bị Khi có cố hệ thống ngưng hoạt động thông báo lỗi windows hiển thị hình xanh có lỗi giao tiếp phần cứng User mode: không gian nơi ứng dụng chạy, ví dụ Office, MySQL, hay Exchange server Khi có cố ứng dụng có ứng dụng ngưng hoạt động mà không ảnh hưởng đến server Khi ứng dụng cần truy cập vào tài nguyên phần cứng, ví dụ đĩa cứng hay network interface, ứng dụng cần giao tiếp với driver thích hợp ch y kernel mode Sự chuyển đổi qua l i User mode Kernel mode “tiến trình-process” chiếm dụng tài nguyên hệ thống (CPU, RAM, …) 3.2 Hypervisor Tất c lo i o hóa đ ợc qu n lý b i VMM (Virtual Machine Monitor) VMM b n chất đ ợc chia làm lo i là: VMM đóng vai trị phần mềm trung gian chạy HĐH để chia sẻ tài nguyên với HĐH Ví dụ: VMware workstation, Virtual PC, KVM VMM đóng vai trị hypervisor chạy phần cứng Ví dụ: VMware ESXi, Hyper-V, Xen Hypervisor phần mềm nằm phần phần cứng bên d ới HĐH nhằm mục đích cung cấp mơi tr ng tách biệt gọi phân vùng – partition Mỗi phân vùng ứng với máy o-VM ch y HĐH độc lập Hiện có h ớng tiếp cận hypervisor khác (lo i – hypervisor VMM) với tên gọi: Monolithic Micro hypervisor Tháng 4/2012 Page Cloud computing OpenStack Figure 2: Monolithic Microkernelized Hypervisor [7] Monolithic hypervisor: hypervisor có driver riêng biệt để truy cập tài nguyên phần cứng bên Các VMs truy cập tài nguyên hệ thống thông qua drivers hypervisor Điều mang lại hiệu suất cao, nhiên driver hypervisor bị cố hệ thống ngưng hoạt động, phải đối mặt với vấn đề an ninh drivers bị giả dạng malware, rủi ro mơi trường ảo hóa Micro-kernelized hypervisor: loại hypervisor khơng có driver bên hypervisor mà chạy trực tiếp partition Một VM đóng vai trị partition cha quản lý khởi tạo partition (VM con) VM cha bao gồm nhiều tính khác quản lý memory, lưu trữ drivers, … Điều mang lại an tồn tin cậy Tuy nhiên gặp phải vấn đề độ sẵn sàng (availability) partition cha gặp cố, hệ thống bị ngưng trệ 3.3 Full-virtualization: Figure 3: Full-virtualization Full- virtualization cơng nghệ o hóa để cung cấp lo i hình máy o d ới d ng mơ máy chủ thật với đầy đủ tất c tính bao gồm input/output operations, interrupts, memory access, … Hình miêu t mơ hình o hóa FullVirtualization với layer Virtualization để thực chức o hóa, cung cấp máy chủ o (Guest OS) [8] Tuy nhiên mơ hình o hóa khơng thể khai thác tốt hiệu ph i thơng qua trình qu n lý máy o (Virtual Machines monitor Tháng 4/2012 Page Cloud computing OpenStack hay hypervisor) để t ơng tác đến tài nguyên hệ thống (mode switching) Vì bị h n chế bớt số tính cần thực trực tiếp từ CPU Xen, VMWare workstation, Virtual Box, Qemu/KVM, Microsoft Virtual Server hỗ trợ lo i o hóa [9] 3.4 Para-virtualization Figure 4: Para-virtualization Para-virtualization hay cịn gọi o hóa “một phần” kỹ thuật o hóa đ ợc hỗ trợ điều khiển b i hypervisor nh ng Oss guest thực thi lệnh không ph i thơng qua Hypervisor (hay trình qu n lý máy o nào) nên không bị h n chế quyền h n Tuy nhiên nh ợc điểm lo i o hóa OS biết ch y t ng phần cứng o khó cấu hình cài đặt o hóa Para-Virtualization đ ợc hỗ trợ b i Xen, VMware, Hyper-V, UML [9, 10] 3.5 OS-level virtualization (Isolation) Figure 5: OS -Level virtualization (Isolation) OS level virtualization, gọi containers Virtualization hay Isolation: ph ơng pháp o hóa cho phép nhân hệ điều hành hỗ trợ nhiều instances đ ợc cách ly dựa HĐH có sẵn cho nhiều users khác nhau, hay nói cách khác t o ch y đ ợc nhiều máy o cách ly an toàn (secure) dùng chung HĐH u điểm o hóa b o trì nhanh chóng nên đ ợc ứng dụng rộng rưi lĩnh vực hosting OpenVZ, Virtuozzo, Linux-VServer, Solaris Zones, FreeBSD Jails hỗ trợ lo i o hóa [9, 11] Một l u ý lo i o hóa Isolation tồn t i HĐH Linux Nếu o hóa cơng nghệ t ng CC việc triển khai CC thực tế dựa vào gi i pháp b n sau: sử dụng s n phẩm th ơng m i cho CC nh VMware, Microsoft (Hyper-V), s n phẩm nguồn m nh Eucalyptus OpenStack Phần kế trình bày lợi ích h ớng tiếp cận triển khai CC dùng nguồn m Tháng 4/2012 Page 10 Cloud computing OpenStack Thông qua Dashboard thực hầu hết thao tác thành phần Openstack )) Mô hình triển khai OpenStack Các cơng cụ sử dụng Mọi triển khai CC đ ợc thực server DELL T710 Ubuntu 11.10 server amd64 Các thành phần Openstack đ ợc cài từ repository Ubuntu, t ơng ứng với phiên b n Diablo Openstack Tất c thành phần Nova, Glance, Swift đ ợc cài đặt server Do số thành phần phụ nh đồng th i gian node không cần thiết (không cần sử dụng ntp server) Figure 18: Mơ hình triển khai Thêm cần sử dụng adapter cho việc cấu hình nova-network Các instance đ ợc gán hai d i IP nh sau: Public IP dùng để kết nối instance Internet: 172.17.2.64/27 Private IP dùng để kết nối instnace với (mặc định lúc kh i t o gán cho instance địa chỉ): 10.0.0.0/22 32 32 Các gói đ ợc cài đặt: Các gói phụ nh unzip để gi i nén image, vnc nhiều gói liên quan tới Python: python-software-properties memcached xfsprogs python-setuptools curl vncproxy unzip Chúng ta sử dụng MySql server cho tất c dịch vụ: mysql-server Message queue server nhằm chuyển thông điệp thành phần Openstack: rabbitmq-server Tháng 4/2012 Page 31 Cloud computing OpenStack Bộ công cụ dùng để t ơng tác với Openstack thơng qua dịng lệnh, ban đầu đ ợc thiết kế cho Eucalyptus nên có tiền tố euca: euca2ools Các gói liên quan tới Nova: nova-volume nova-api nova-nova-ajax-console-proxy nova-doc nova-scheduler nova-objectstore nova-network nova-compute Gói liên quan tới Glance: glance Gói liên quan tới Swift: swift swift-account swift-container swift-object swift-proxy Chú ý: khơng ph i "tất c " gói đ ợc cài đặt, có gói phụ đ ợc tự động cài đặt kèm theo mà ch a cần quan tâm tài liệu xin nêu gói b n để xây dựng đám mây Openstack node Phần khơng chi tiết vào q trình cài đặt mà nêu b ớc cần thiết để cấu hình Openstack ch y đ ợc với ba thành phần b n Trong chúng tơi gi i thích rõ số điểm mấu chốt Phần h ớng dẫn cài đặt xin xem thêm phần phụ lục Các bước cài đặt thử nghiệm Sau số b ớc để cài đặt hệ thống Openstack thử nghiệm nhóm ** Cài đặt MySql server Mặc định Glance Swift sử dụng Sqlite server để l u metadata nh liệu liên quan, chọn MySql CSDL phổ biến quen thuộc với nhu cầu sử dụng bình th ng t i môi tr ng làm việc Chúng sử dụng ba dịch vụ Nova, Glance Swift cần t o CSDL nova_db, glance_db, swift_db t ơng ứng với user: nova, glance, swift để sử dụng cấu hình phần sau ** Cài đặt gói unzip, rabbitmq-server, euca2tools Các cài đặt khơng địi hỏi thay đổi tham số Chỉ đơn gi n cài chúng ho t động theo kịch b n ** Cài đặt cấu hình Glance Các file cấu hình Glance đ ợc l u /etc/glance/ thay đổi số thơng tin ví dụ nh glance-registry.conf Về CSDL sử dụng để l u trữ từ Sqlite sang MySql Ngồi thử nghiệm này, khơng cần thiết ph i chỉnh thêm thông số khác Glance ** Cài đặt cấu hình Nova Các file cấu hình Nova đ ợc l u t i /etc/nova/ Trong thử nghiệm để đơn gi n hóa, nhóm thay đổi thông số /etc/nova/nova.conf Đây nơi l u cấu hình quan trọng Nova nh thơng tin CSDL, kiểu cấu hình nova- network Cấu hình nova-network chế độ VLAN Chỉ sử dụng interface eth0 từ server DELL nhằm kết nối instance Internet t o VLAN cho project Tháng 4/2012 Page 32 Cloud computing OpenStack Nh đư nói trên, sử dụng d i private IP là: 10.0.0.0/22 32 32 d i public IP 172.17.2.64/27 d i IP thực lớp với IP host (server DELL) cấu hình xong ch y instance, 'nhìn' thấy instance thơng qua d i IP ** Tạo Nova project Nh đư nói phần user role Nova, t o user với tên: testuser sau gán cho testuser quyền sysadmin Tiếp t o project tên testproject gán cho testuser với toàn quyền ** Tạo chứng (credential) access key Với project, Nova cung cấp chứng access key cho user nhằm thực việc chứng thực Các thông tin quan trọng nằm file novarc File đ ợc sử dụng để t o 'môi tr ng' với tham số trỏ tới server mà Nova đ ợc cài đặt Gi sử dùng máy client khác để thực truy vấn Nova Trên client ph i lấy chứng access key Từ client dễ dàng t ơng tác 'nói chuyện' với server ch y Nova Chúng ta cần m cổng 22 cho SSH service cổng 80 cho HTTP service Sau kh i động l i tất c dịch vụ Nova Glance Nếu khơng có lỗi từ bây gi đư sử dụng Nova Glance ** Upload image khởi chạy instance Các image có sẵn từ server Ubuntu, Stackops file chuẩn mà nhà cung cấp đư t o sẵn cho ng i sử dụng Chúng ta cần ph i lấy chúng upload lên Glance (hoặc nova object-store) Với instance cần gán cho cặp public/private key Mục đích để ng i dùng sử dụng chúng để đăng nhập tới instance Public key đ ợc gán vào instace cịn private key ng i dùng l u l i (đó file pem) Từ client cần sử dụng private key t ơng ứng với instace b n SSH tới instance thực việc cài đặt thơng qua dịng lệnh ** Cài đặt cấu hình Swift Nh đư giới thiệu, để đ m b o việc l u trữ an toàn hiệu qu , Swift l u object (dữ liệu) nhiều zone khác thử nghiệm có server nên t ng chừng chế không hiệu qu , nh ng t ng t ợng có nhiều server xa server nằm t i vị trí địa lý khác Sẽ an toàn dễ dàng nhiều việc l u trữ c i thiện chất l ợng dịch vụ ng i dùng thử nghiệm này, nhóm sử dụng phân vùng đĩa cứng khác để Swift l u trữ liệu Nhóm t o server mơ cho việc l u trữ object node khác Bốn node tất nhiên IP nh ng sử dụng cổng khác cho dịch vụ nh t m th i mơ đ ợc cách thức ho t động Swift Tháng 4/2012 Page 33 Cloud computing OpenStack Trong thử nghiệm sử dụng Swauthkey nhằm đơn gi n việc t o user Swift, dùng Swauthkey để t o user dịng lệnh khơng cần ph i thay đổi thơng số /etc/swift/proxy-server.conf Chúng ta t ơng tác với Swift thơng qua dịng lệnh Một số trình qu n lý FTP nh CyberDuck t ơng tác với Swift tốt Trên tài liệu đư trình bày qua b ớc ý nghĩa chúng theo nh kịch b n cài đặt thử nghiệm Ba thành phần ho t động, nhiên có nhiều trục trặc, lỗi phát sinh trình thử nghiệm đ ợc trình bày phần tổng kết Tháng 4/2012 Page 34 Cloud computing OpenStack Phần 3: Security Cloud computing Để đánh giá tính b o mật CC, cần xác định yêu cầu nh định nghĩa security gi i pháp CC Điều đồng nghĩa với việc cần nghiên cứu tiêu chuẩn đặt security Phần trình bày so sánh tiêu chuẩn CC security CSA, NIST, nghiên cứu khác Tiếp theo đề xuất gi i pháp CC cuối đánh giá độ an toàn OpenStack Diablo I CSA CSA tổ chức phi phủ đ ợc thành lập năm 2008 nhằm mục đích nghiên cứu vấn đề security CC với hợp tác nhiều công ty lớn giới nh Microsoft, Google, IBM, VMware, … Phiên b n CSA 1.0 đ i tháng 4/2009, sau phiên b n 2.1 đ i tháng 12 năm với nguy security đ ợc thêm nh Information Lifecycle Management Storage Hiện CSA phiên b n 3.0 với số c i tiến m rộng, chẳng h n Security as a Service Các tiêu đánh giá CSA dựa nghiên cứu đ ợc thẩm định giới học thuật (peer-review) tr ớc đ ợc công bố thành phiên b n Phần tóm l ợc yêu cầu security mà CSA đ a để có nhìn lĩnh vực rộng lớn security CC CSA chia yêu cầu security phần với vấn đề nh sau: Quản lý CC (5 phần) Phần CSA khuyến cáo với nhiều phân mục [20], nhiên khuôn khổ tài liệu đề cập đến: Governance and Enterprise Risk Management: khả quản lý kiểm sốt mối nguy hại mơi trường kinh doanh (Enterprise), vấn đề liên quan đến nhận thức người dùng, phối hợp Provider với người dùng trách nhiệm bảo vệ liệu bí mật Information Management and Data Security: quản lý liệu lưu trữ cloud, việc định danh liệu, chống thất thoát, liệu di chuyển data Đảm bảo tính bảo mật, tồn vẹn, sẵn sàng cho liệu (confidentiality, integrity, availability) Interoperability and Portability: di chuyển liệu service từ nhà cung cấp sang nhà cung cấp khác - interoperability, đem tồn data back-in-house Ngồi cịn có nội dung SLA – đ ợc xem nh quy định đ m b o mức độ an toàn sẵn sàng hệ thống ng i dùng, tùy chi phí mà SLA cao hay thấp Hoạt động CC (8 phần) Traditional Security, Business Continuity, and Disaster Recovery: CC phải đối mặt với hiểm họa an ninh hệ thống truyền thống khác vấn đề back-up hệ thống recovery có cố xảy Data Center Operations: đảm bảo hoạt động Data Center với đầy đủ tính đồng thời với độ ổn định cao lâu dài Incident Response: kiểm soát, báo hiệu việc xảy cố Application security Tháng 4/2012 Page 35 Cloud computing OpenStack Encryption and Key Management: bảo vệ việc truy cập vào tài nguyên hệ thống bảo vệ liệu Identity, Entitlement, and Access Management: đảm bảo quản lý việc truy cập chứng thực user Virtualization: nguy hại liên quan đến VM isolation, lỗ hỗng Hypervisor Security as a Service: yêu cầu security phiên xác nhận đảm bảo security từ hãng thứ có uy tín giới thơng qua việc kiểm tra security Việc đảm bảo tin tưởng khách hàng tạo động lực để nâng cao security cho hệ thống Phần đư tóm l ợc tính liên quan đến security cloud đ ợc CSA khuyến cáo muốn triển khai CC Phần kế chủ đề nh ng đ ợc khuyến nghị b i NIST II NIST NIST – National Institute of Standards and Technology đư khuyến nghị guidelines hoành chỉnh cho security privacy CC vào tháng 12/2011 M ục đích NIST cung cấp nhìn tổng quan CC thách thức b o mật CC [21] Các vấn đề đ ợc NIST đ a là: Governance Compliance Trust: vấn đề data ownweship, Insider Access, hay Risk management Architecture: thiết lập bảo vệ cho máy ảo (VM), mạng ảo (Virtual Network), phía người dùng phía server Identity and Access Management: thực thi Authentication Access control Software Isolation Data Protection Availability: bảo vệ chống lại mối nguy hại liên quan đến độ sẵn sàng hệ thống DoS, outages (đảm bảo hệ thống điện, nguồn) Incident Response Nhìn chung, tiêu chí NIST CSA giống gần nh rà sốt tồn u cầu đ m b o cho hệ thống an tồn, ví dụ đ m b o chứng thực quyền truy cập (authentication access control), hay ph n ứng có cố, nh software/application security, … Về gi i pháp khuyến nghị (recommendation) cụ thể CSA hay NIST đ ợc trình bày phần IV ))) Các nghiên cứu từ trường đại học Một mơ hình “điện tốn đám mây”, theo chuyên gia đ i học Azad, Iran nghiên cứu đ a hội nghị lần thứ 8-2009 IEEE, cần thỏa mãn yêu cầu sau security [5]: Availability management: độ sẵn sàng hệ thống trường hợp Access control management: quản lý việc truy cập Vulnerability and problem management: khả ngăn cản lỗ hỗng thâm nhập Tháng 4/2012 Page 36 Cloud computing OpenStack Patch and configuration management: vấn đề update hệ thống thường xun có vá cấu hình Countermeasure: biện pháp đối phó gặp cố security Cloud system using and access monitoring: quản lý việc sử dụng truy cập user với cloud Đặc thù m ng đám mây với nhiều lo i hình khách hàng khác từ ng i dùng phổ thông (ordinary users), giới nghiên cứu (academia) hay doanh nghiệp kinh doanh (enterprise) Sự tỷ lệ nghịch “security” “performance” vấn đề cần ph i đặt gi i muốn đ m b o hệ thống đám mây “an toàn” với “hiệu suất cao” Tuy nhiên với lo i hình khách hàng khác nhau, nhu cầu khác Chẳng h n với khách hàng enterprise, nhu cầu security đ ợc u tiên hàng đầu c performance giới academia u tiên vấn đề hiệu suất cao Về b n chất, “cloud computing” môi tr ng m ng public nh m ng truyền thống nên ph i đối mặt với vấn đề an ninh b n nh lỗ hỗng web application (SQL injection hay Cross-site scripting), DNS poisoning hay ARP poisoning, … Tuy nhiên, vấn đề security “cloud computing” đặt trọng tâm vào việc đánh giá qua Information Security Policies – sách b o vệ thông tin Cloud RAS (reliability, availability, and security) issues – nguy h i an ninh gặp ph i đặc thù môi tr ng cloud Information Security Policies Một số điểm yếu Information security policies kể nh sau [22]: Privileged user access Regulatory compliance: khách hàng (users) phải chịu trách nhiệm hoàn toàn tính “an tồn” “tồn vẹn (integrity)” liệu Trong mơ hình truyền thống việc giúp đỡ tổ chức kiểm toán (external audits) security certifications Data location: người sử dụng cloud khơng thể biết xác liệu họ lưu trữ đâu Cơ chế lưu trữ phân tán gây điều khiển cho người dùng điều mối lo chuyển từ lưu trữ local sang lưu trữ đám mây Data segregation: Dữ liệu người dùng lưu trữ chung với việc bảo vệ thực thi mã hóa Tuy nhiên phương pháp cổ điển đảm bảo vấn đề “an tồn thơng tin” Tuy nhiên chưa có giải pháp hồn mỹ cho vấn đề Recovery: vấn đề backup khôi phục liệu người dùng mong muốn thực thông qua Cloud Provider mà hãng thứ Investigative support Long-term viability Cloud RAS issues Sự phát triển cloud đến mức địi hỏi ph i có kết hợp nhà cung cấp cloud với ng i dùng để phát triển ứng dụng Việc chia sẻ đồng nghĩa với việc gia tăng mối hiểm họa b o mật đòi hỏi nhiều thách thức việc qu n lý b o mật cho đội ngũ IT Các nguy tiềm ẩn m ng cloud kể đến: 2.1 Data Leakage Khi chuyển h ớng sang mơ hình cloud có thay đổi lớn mặt liệu ng i dùng cần đ ợc quan tâm sát sao: liệu đ ợc l u trữ cách xa ng i dùng, Tháng 4/2012 Page 37 Cloud computing OpenStack khơng cịn ổ đĩa local truyền thống liệu đ ợc l u trữ nhiều nguồn (multi-tenant environment) thay đầu mối nh tr ớc (single-tenant environment) [23] Đây mối quan tâm vấn đề b o mật 2.2 Cloud security issues B n chất cloud provider truyền thông Internet sử dụng giao thức TCP/IP mà user đ ợc định danh b i địa IP Cũng giống nh m ng vật lý, máy o Internet đ ợc định danh địa IP mà dễ dàng tìm thấy b i ng i dùng hay attackers T ơng tự nh máy vật lý, attackers xâm nhập từ máy o qua máy chủ vật lý Attacks in cloud: ngày có nhiều lo i hình cơng m ng, lý thuyết, tất c lo i hình đ ợc áp dụng để đe dọa cloud – tùy thuộc mức độ khác Chẳng h n users m ng cloud sử dụng máy o, xem nh máy vật lý chung network DDoS attacks against Cloud: công DDoS kiểu cơng với số l ợng lớn gói tin IP đến m ng định với mục đích làm ng ng trệ tồn hệ thống m ng Với đặc điểm nhiều ng i dùng m ng điện toán đám mây, nguy h i hệ thống bị ng ng trệ lớn mơ hình kiến trúc đơn điểm [5] Phần lớn m ng b o vệ để chống l i cơng DDoS b i l ợng traffic đổ từ hàng ngàn, v n máy internet, đồng th i khó để phân biệt bad traffic good traffic Hệ thống IPS hữu hiệu để ngăn chặn DDoS nh ng với kiểu công đư đ ợc nhận d ng với gói tin, tập tin nhiễm độc đư đ ợc l u trữ (preexisting signature) Tuy nhiên với gói tin hợp lệ mang nội dung xấu đ ợc cho qua Gi i pháp firewall khơng cịn hữu hiệu với DDoS gói tin bypass firewall dễ dàng IDS/IPS [5] IV Các giải pháp security cho mơ hình Cloud Computing Với đặc tr ng riêng cloud đư gi i pháp cho số vấn đề truyền thống security, chẳng h n vấn đề downtime hệ thống, backup, l u trữ phân tán, hay DoS Một số gi i pháp cloud đ ợc đề xuất để đ m b o an toàn nh sau: Access control and management Thiết lập chế điều khiển việc truy cập cần thiết cho việc “an tồn thơng tin” để ngăn chặn việc truy xuất trái phép Ví dụ việc định quyền h n cho user sử dụng liệu dịch vụ Một l u ý cho chế ph i bao trùm tất c trình user từ bắt đầu kh i t o (initial registration) kết thúc không truy cập vào hệ thống dịch vụ nữa(de-registration) Theo tiêu chuẩn Information Technology Infrastructure Library (ITIL) ISO 27001/27002 b o mật, hệ thống “Security management” ph i đ m b o chức sau [24]: Control access to information: truy cập vào thông tin Manage user access rights: quản lý quyền hạn người dùng Encourage good access practices Control access to network services Control access to operating systems Control access to applications and systems Tháng 4/2012 Page 38 Cloud computing OpenStack Việc qu n lý truy cập clouds đ ợc chia phần theo mơ hình cung cấp dịch vụ clouds SaaS: cloud providers quản lý tất lĩnh vực bao gồm mạng, servers, hạ tầng ứng dụng Tuy nhiên mơ hình SaaS ứng dụng cung cấp dạng dịch vụ thơng thường qua trình duyệt web, việc quản lý network-based gần không liên quan mà tập trung vào vấn đề quản trị người dụng, chế chứng thực mạnh sử dụng one-time password [5, 24], Single Sign On [25], quản lý quyền hạn, … PaaS: Khác với mơ hình SaaS, PaaS, việc quản lý trọng tâm vào tầng network, servers, platform hạ tầng ứng dụng Tuy nhiên trường hợp này, người dùng phải chịu trách nhiệm cho việc quản lý ứng dụng đặt platform PaaS Tuy nhiên, việc truy cập vào ứng dụng phải quản lý, định, chứng thực IaaS: khách hàng IaaS phải chịu hoàn toàn trách nhiệm cho việc quản lý truy cập đến tài nguyên họ cloud Việc truy cập vào server ảo, network ảo, hệ thống lưu trữ ảo, ứng dụng IaaS platform thiết kế quản lý khách hàng Việc quản lý truy cập mơ hình IaaS bao gồm phần chính: quản lý host, network, ứng dụng thuộc sở hữu cloud provider người dùng phải quản lý việc truy cập đến server ảo, lưu trữ ảo, networks ảo, ứng dụng chạy virtual servers [24, 25] Các biện pháp đối phó xảy vấn đề security Một điểm quan trọng cloud security tìm vấn đề lỗ hỗng b o mật tồn t i, sau triển khai biện pháp thích hợp để đối phó Nhìn chung, hệ thống cloud đ ợc xây dựng nhiều engines l u trữ với kh hỗ trợ “high availability” đáp ứng đ ợc việc backup qua l i cho server o thật có cố x y Để đ t đ ợc độ linh ho t, kh m rộng hiệu suất sử dụng, cloud providers ph i đối mặt với vấn đề việc phân tích tính tốn để phân bổ hợp lý tài ngun cho cơng việc tính tốn khác Partitioning: ví dụ muốn nâng cao hiệu suất tính tốn ứng dụng cloud chia liệu nhiều partitions để thực tính tốn nhiều nodes nhằm mục đích tăng hiệu suất query transaction Vì thế, kết tính tốn nhanh chóng trả Migration: Sự linh hoạt yêu cầu cloud, ngữ cảnh cung cấp dịch vụ cloud cần linh hoạt việc sử dụng tài nguyên Ví dụ tài nguyên phải dành riêng cho hoạt động cần thiết quan trọng Chính điều làm cho việc tải node cloud không xảy có di chuyển (migration) hệ thống, đặc biệt hệ thống CSDL lớn, đặc biệt đảm bảo trì hoạt động hệ thống migration xảy Workload analysis and allocation Ngồi cần tính đến gi i pháp disaster recovery có cố bất ng x y nh thiên tai, lũ lụt, cháy nổ, … DDoS Nh đư trình bày, với hệ thống có đầy đủ Firewall IDS/IPS bị cơng DDoS Tuy nhiên, với h tầng m ng đủ m nh chịu đ ợc với l u l ợng Tháng 4/2012 Page 39 Cloud computing OpenStack DDoS cực lớn H tầng cloud đ m b o cho điều toàn h tầng liên kết hàng trăm, ngàn máy tính Điều giúp cho qu n trị viên có đủ th i gian để gi i cố tìm nguyên nhân khắc phục Ví dụ hệ thống IPS học đ ợc quy tắc công hay qu n trị viên tiến hành phân tích gói thiết lập rules để “drop” gói tin đến vi ph m IV OpenStack Security Bất kỳ triển khai CC thực tế dù s n phẩm th ơng m i hay opensource ph i đáp ứng yêu cầu nh biện pháp xử lý đặt security Hiện với mục tiêu sử dụng công cụ nguồn m OpenStack, việc triển khai hoàn thiện mức độ b n (3 projects đầu – trình bày phần 4) nên cơng cụ hỗ trợ security OpenStack tiếp cận mức h n chế Keystone (hay OpenStack Identity) thành phần cho security với chức chứng thực, sách, … trình bày sơ lược User Project: việc tạo user project đảm bảo việc truy cập chứng thực user truy cập vào project không thuộc chủ quản – chức User Project Nova Keypairs: Tạo khóa để gán cho instance khởi tạo công cụ đảm bảo security có user cấp khóa đủ thẩm quyền truy cập instance Việc triển khai keystone ch a thành công nên mức độ đánh giá ch a xác Nh ng chức security keystone đ m b o an toàn cho việc triển khai IaaS Tháng 4/2012 Page 40 Cloud computing OpenStack Phần 4: Tổng kết Trong tuần thử nghiệm nhóm đư gặp nhiều khó khăn trình cài đặt cấu hình thành phần Openstack Đây hệ thống phức t p nhiều thành phần trình phát triển nên tài liệu có nhiều chỗ khơng đ ợc xác cập nhật kịp th i Sau tham kh o nhiều h ớng dẫn từ ng i khác thử nghiệm Openstack, nhóm định tập trung thực việc thử nghiệm ba thành phần Nova, Glance Swift Một phần hai thành phần Dashboard Keystone ch a ho t động tốt phiên b n Diablo, phần th i gian mắt phiên b n Essex khớp với th i điểm kết thúc thử nghiệm Do việc thử nghiệm tất c thành phần kể Openstack đ ợc kiểm tra với phiên b n Essex th i gian tới để tránh việc lãng phí th i gian Sau số điểm tổng kết l i sau trình thử nghiệm: **** Những việc đạt Đư hoàn tất cài đặt vận hành đ ợc ba thành phần Openstack Nova, Glance Swift t ơng ứng với hai dịch vụ quan trọng cung cấp tài nguyên Cloud compute Cloud storage Đư thử nghiệm máy o Linux b n nh Ubuntu, Debian, CentOs Tuy nhiên, sử dụng file image đ ợc cung cấp sẵn từ hưng Trong Ubuntu nhà cung cấp tốt đầy đủ phiên b n (Lí phần họ đối tác AWS Openstack, thêm công ty đầu t lớn vào CC) Swift - thành phần l u trữ – họat động bình th nh CyberDuck Windows MacOS ng, t ơng tác đ ợc với số GUI Kiểm tra đ ợc chức b n thơng qua API dịng lệnh (euca2tools) B n thân gói Nova, Glance Swift đư cung cấp chức xem thông tin, upload, qu n lý instance liệu, nhiên tên câu lệnh 'r i r c' nên thông th ng để tiện cho việc sử dụng ng i ta hay dùng euca2tools Gói t ơng thích với c Eucalyptus Openstack Tất c thao tác thử nghiệm sử dụng câu lệnh euca* **** Những việc chưa đạt Ch a thử nghiệm đ ợc hai thành phần Keystone Dashboard Các thao tác qu n lý thực đ ợc thơng qua dịng lệnh Với tài ngun tính tốn: đư ch y instance (máy o) Linux ổn định Tuy nhiên với máy o ch y Windows ch a thành cơng Vẫn có nhiều lỗi phát sinh chẳng h n nh bị instance đăng nhập vào instance Các lỗi theo đánh giá xuất phát từ tính ch a ổn định Openstack, thứ Tháng 4/2012 Page 41 Cloud computing OpenStack trình độ nhóm ch a hiểu rõ Linux Openstack để tìm hiểu gi i triệt để Với tài nguyên l u trữ: kiểm tra đ ợc sơ cách thức ho t động, ch a có tìm hiểu đ ợc sâu kh l u trữ m rộng, l u trữ file kích th ớc lớn Ngồi giới h n b i điều kiện phần cứng, th i gian triển khai nên ch a kiểm tra đ ợc hiệu thành phần Một số chức cần có nhiều máy chủ để kiếm tra nh việc di chuyển instance, cân t i ch a đ ợc thực **** Kế hoạch việc thử nghiệm Phiên b n Essex Openstack mắt đầu tháng 04/2012 hứa hẹn nhiều c i tiến, ổn định Hai thành phần Keystone Dashboard đ ợc giới thiệu t ơng thích tốt với thành phần l i Kế ho ch chuyển sang thử nghiệm phiên b n này, kết hợp với việc m rộng h tầng vật lý Với mơ hình lớn hơn, kh kiểm tra hiệu thành phần Openstack chi tiết đ ợc đánh giá xác, Tháng 4/2012 Page 42 Cloud computing OpenStack Phụ lục: Phụ lục : Tutorial cài đặt OpenStack Ubuntu 64 bits Xem file PDF kèm Phụ lục : Một số link tham khảo khác Security Solutions for Cloud Computing http://infosecisland.com/blogview/5449-SecuritySolutions- for-Cloud-Computing.html Security Issues and Solutions in Cloud Computing http://wolfhalton.info/2010/06/25/security- issues-and-solutions- in-cloud-computing/ http://www.hastexo.com/resources/docs/installing-openstack-essex-20121-ubuntu-1204-precisepangolin Tháng 4/2012 Page 43 Cloud computing OpenStack References: 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Điệ to đ y Available from: http://vi.wikipedia.org/wiki/%C4%90i%E1%BB%87n_to%C3%A1n_%C4%91%C3%A1m_m%C 3%A2y Cloud computing Available from: http://en.wikipedia.org/wiki/Cloud_computing Data center Available from: http://en.wikipedia.org/wiki/Data_center Wind, S Open source cloud computing management platforms: Introduction, comparison, and recommendations for implementation in Open Systems (ICOS), 2011 IEEE Conference on 2011 Sabahi, F Cloud computing security threats and responses in Communication Software and Networks (ICCSN), 2011 IEEE 3rd International Conference on 2011 Ubuntu Cloud: Technologies for future-thinking companies 2012; Available from: http://www.canonical.com/about-canonical/resources/white-papers/ubuntu-cloudtechnologies-future-thinking-companies Wesselius, J Windows Server Virtualisation: Hyper-V, an Introduction 2009; Available from: http://www.simple-talk.com/sysadmin/virtualization/windows-server-virtualisation-hyperv,-an-introduction/ Full virtualization Available from: http://en.wikipedia.org/wiki/Full_virtualization Ảo hóa tro g điệ to đ y 2012; Available from: http://hpcc.hut.edu.vn/forum/archive/index.php/thread-658.html Paravirtualization Available from: http://en.wikipedia.org/wiki/Paravirtualization Operating system-level virtualization Available from: http://en.wikipedia.org/wiki/OSlevel_virtualization Eucalyptus open source cloud computing infrastructure - Overview 2011; Available from: http://go.eucalyptus.com/Eucalyptus-Open-Source-Cloud-Computing-Infrastructure-AnOverview-Download.html Mahjoub, M., et al A Comparative Study of the Current Cloud Computing Technologies and Offers in Network Cloud Computing and Applications (NCCA), 2011 First International Symposium on 2011 Leads, O.P OpenNebula 3.2 Key Features and Functionality 2012 [cited 2012 22nd March]; Available from: http://opennebula.org/documentation:features Systems, C Xen Cloud Platform Project 2012 [cited 2012 22nd March]; Available from: http://www.xen.org/products/cloudxen.html Abiquo Abiquo Overview 2012 [cited 2012 22nd March]; Available from: http://www.abiquo.com/products/abiquo-overview.php OpenStack Compute 2012; Available from: http://openstack.org/projects/compute/ OpenStack Object Storage 2012; Available from: http://openstack.org/projects/storage/ OpenStack Image Service 2012 Archer;, J., et al., Security Guidance for Critical Areas of Focus in Cloud Computing v3.0 Cloud Security Alliance, 2011 Jansen, W and T Grance., Guidelines on security and privacy in public cloud computing, 2011 Brodkin, J Gartner Seven cloud-computing security risks 2008; Available from: http://www.infoworld.com/d/security-central/gartner-seven-cloud-computing-securityrisks-853 Stokes, J., T-Mobile and Microsoft/Danger data loss is bad for the cloud 2009 Security management in the cloud 2010; Available from: http://mscerts.programming4.us/programming/Security%20Management%20in%20the%20 Cloud.aspx Tháng 4/2012 Page 44 Cloud computing OpenStack 25 Security Management in the Cloud - Access Control 2012; Available from: http://mscerts.programming4.us/programming/Security%20Management%20in%20the%20 Cloud%20-%20Access%20Control.aspx Tháng 4/2012 Page 45