Tải bản đầy đủ (.pdf) (146 trang)

Nghiên cứu nguyên lý, kiến thức điện toán đám mây và xây dựng phần mềm quản lý nguồn lực trên nền tảng microsoft azure

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (5.13 MB, 146 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ




NGUYỄN MẠNH HÙNG

NGHIÊN CỨU NGUYÊN LÝ, KIẾN TRÚC ĐIỆN
TOÁN ĐÁM MÂY VÀ XÂY DỰNG PHẦN MỀM
QUẢN LÝ NGUỒN LỰC TRÊN NỀN TẢNG
MICROSOFT AZURE


LUẬN ÁN THẠC SĨ







Hà Nội - 2011






ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ




NGUYỄN MẠNH HÙNG


NGHIÊN CỨU NGUYÊN LÝ, KIẾN TRÚC ĐIỆN
TOÁN ĐÁM MÂY VÀ XÂY DỰNG PHẦN MỀM
QUẢN LÝ NGUỒN LỰC TRÊN NỀN TẢNG
MICROSOFT AZURE

Ngành :
Công nghệ thông tin
Chuyên ngành :
Công nghệ phần mềm
Mã số :
60 48 10

LUẬN ÁN THẠC SĨ

Cán bộ hướng dẫn: PGS-TS Nguyễn Văn Vỵ




Hà nội-2011








MỤC LỤC
MỤC LỤC 4
BẢNG KÝ HIỆU 7
BẢNG HÌNH VẼ 8
MỞ ĐẦU 12
CHƯƠNG 1 : ĐIỆN TOÁN ĐÁM MÂY 14
1.1. Khái niệm điện toán đám mây. 14
1.1.1. Định nghĩa Ian Foster 14
1.1.2. Định nghĩa Rajkumar Buyya 14
1.1.3. Định nghĩa Wikipedia 15
1.2. Đặc điểm của điện toán đám mây. 15
1.2.1. Tính tự phục vụ theo nhu cầu 15
1.2.2. Truy cập diện rộng 16
1.2.3. Dùng chung tài nguyên và độc lập vị trí 16
1.2.4. Khả năng co giãn nhanh chóng 16
1.2.5. Chi trả theo thực dùng 16
1.3. Các thành phần của đám mây. 17
1.3.1. Mô hình và dịch vụ của điện toán đám mây 17
1.3.2. Quản lý ảo hóa 20
1.3.3. Các dịch vụ chính 24
1.3.4. Quản trị dữ liệu 27
1.3.5. Quản lý dịch vụ 28
1.3.6. Bảo mật 31
1.3.7. Khả năng chịu lỗi 35
1.4. Mô hình triển khai điện toán đám mây 35
1.4.1. Đám mây công cộng 36
1.4.2. Đám mây riêng 36
1.4.3. Đám mây lai 37

1.4.4. Đám mây cộng đồng. 37
1.5. Thách thức của điện toán đám mây 38
1.6. Xu hướng phát triển của điện toán đám mây 39
CHƯƠNG 2: MICROSOFT VỚI ĐIỆN TOÁN ĐÁM MÂY 40
2.1. Tổng quan về giải pháp của Microsoft. 40
2.1.1. Sự truyền đạt 40
2.1.2. Cung cấp truy xuất ứng dụng văn phòng hiệu quả 41


2.1.3. Quản lý ứng dụng và dịch vụ 41
2.2. Tổng quan về Windows Azure Platform. 43
2.2.1. Giới thiệu Windows Azure. 43
2.2.2. Giới thiệu Sql Azure. 48
2.2.3. Giới thiệu Window Azure Plaform AppFabric 49
2.3. Windows Azure Blogs 50
2.3.1. Giới thiệu Windows Azure Blogs 50
2.3.2. Phân loại Blob Store 51
2.3.3. Blob Storage và Rest. 52
2.3.4. Giới thiệu Storage Client Blob API 53
2.4. Windows Azure Table 53
2.4.1. Giới thiệu Azure Table và mô hình dữ liệu 53
2.4.2. Phân vùng bảng. 55
2.4.3. Table và Rest API. 57
2.4.4. Giới thiệu ADO.NET Data Services Library (.NET Client Library) 58
2.5. Windows Azure Queues 59
2.5.1. Giới thiệu Azure Queues 59
2.5.2. Mô hình dữ liệu của Azure Queue. 61
2.5.3. Queue REST API 62
2.5.4. Azure Storage Client Queue API 63
2.6. Windows Azure Platform AppFabric 63

2.6.1. Giới thiệu AppFabric 63
2.6.2. Dịch vụ kiểm soát truy nhập 63
2.6.3. AppFabric Service Bus 70
CHƯƠNG 3. XÂY DỰNG ỨNG DỤNG QUẢN LÝ NGUỒN LỰC DỰA
TRÊN NỀN TẢNG MICROSOFT WINDOWS AZURE. 77
3.1. Tổng quan về hệ thống quản lý nguồn lực. 77
3.1.1. Tổng quan hệ thống quản lý nguồn lực 77
3.1.2. Các phân hệ chính trong hệ thống quản lý nguồn lực 78
3.2. Khảo sát yêu cầu nghiệp vụ hệ thống quản lý nguồn lực và tiền lương. 80
3.2.1. Đánh giá chung về công tác quản lý tổ chức. 80
3.2.2. Công tác quản lý nhân sự 81
3.3. Khảo sát quy trình nghiệp vụ hệ thống quản lý nguồn lực 89
3.4. Phân tích hệ thống quản lý nguồn lực. 90
3.4.1. Các phân hệ chính của hệ thống. 90
3.4.2. Phát triển mô hình các ca sử dụng 92
3.4.3. Phân tích ca sử dụng 109
3.5. Các mô hình thiết kế hệ thống quản lý nguồn lực 116
3.5.1. Thiết kế kiến trúc vật lý. 116
3.5.2. Lựa chọn công cụ và môi trường phát triển 117


3.5.3. Thiết kế mô hình phát triển 118
3.5.4. Thiết kế nguyên mẫu phát triển 119
3.5.5. Xác định biểu đồ lớp thiết kế 120
3.5.6. Thiết kế Cơ sở dữ liệu 121
CHƯƠNG 4. TRIỂN KHAI-KIỂM THỬ VÀ ĐÁNH GIÁ HIỆU NĂNG 123
4.1. Triển khai hệ thống trên đám mây 123
4.1.1. Giai đoạn Đánh giá đám mây 123
4.1.2. Giai đoạn kiểm chứng các khái niệm 124
4.1.3. Giai đoạn chuyển đổi dữ liệu nên đám mây 124

4.1.4. Giai đoạn chuyển đổi ứng dụng nên đám mây. 126
4.1.5. Giai đoạn thúc đẩy đám mây và nâng cấp ứng dụng 130
4.1.6. Giai đoạn tối ưu hóa 132
4.2. Kiểm thử hệ thống và đánh giá hiệu năng 132
4.2.1. Lập kế hoạch kiểm thử. 132
4.2.2. Lập chiến lược kiểm thử. 133
4.2.3. Đánh giá hiệu năng 133
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 135
TÀI LIỆU THAM KHẢO 136
PHỤ LỤC 138
5.1. Phân tích và đánh giá triển khai dự án trên nền tảng đám mây Azure 138
5.1.1. Thực trạng ứng dụng Công nghệ thông tin 138
5.1.2. Những thách thức khó có thể vượt qua 139
5.1.3. Giải pháp 142
5.1.4. Kế hoạch thực hiện 143
5.1.5. Phân tích và tính toán kinh phí 144
5.2. Kết luận 147



BẢNG KÝ HIỆU

Ký hiệu
Thuật ngữ
Ý nghĩa
ACS
Access Control Service

AES
Advanced Encryption

Standard

DNS
Domain Name System

EC2
Elastic Compute Cloud

JSON
JavaScript Object Notation

REST
Representational State
Transfer

SAML
Security Assertions Markup
Language

SDK
Software Development Kit

SLA
Service-Level Agreements

SOAP
Simple Object Access
Protocol

SPML

Service Provisioning Markup
Language

TCP
Transmission Control
Protocol

URIs
Uniform Resource Identifiers

KPI
Key Performance Indicator





BẢNG HÌNH VẼ
Số
thứ tự
Hình vẽ
Mô tả
Trang
1
.1

16
2
1.2
Các thành ph

18
3


22
4


23
5

Chu 
24
6


25
7


26
8


27
9


28
10



32
11

        
mây
33
12


34
13


34
14


35
15
Hình  1.15

36
16


37
17



38
18


38
19


39
20


mây
40
21


44
22


44
23


45
24

    lobs, Table và

Queues
45
25

Web roles và worker roles
46
26

Fabric Controller
47
27

Fabric Controller và Fault Domain
48
28

Fabric Controller và Update Domain
48


29
.9

49
30
2.10

AppFabric
50
31



50
32


51
33


52
34


52
35


54
36


56
37

       
worker role instance
60
38


Các thao tác v
60
39


61
40


64
41


65
42

       
Claims-Based
68
43

        

69
44


71
45



72
46


75
47

ppFabric Service Bus
76
48


81
49


81
50



90
51


92
52



93
53


95
54

        

95


55


96
56

Mô 
96
57



97
58

         
công tác
98

59


99
60
.13


100
61


101
62


102
63


103
64

Mô hìn
104
65


viên
105

66

         

106
67


107
68

Mô 
108
69


toàn nhân viên
109
70


nhân viên
110
71



111
72


   

112
73



112
74



113
75


114
76


115
77
3.30

116
78


118



79


119
80



120
81



121
82


122
83


123
84


123
85



124
86


124
87

zure
125
88


125
89


126
90


126
91


127
92

ce
127
93



128
94


128
95


130
96
4.15
c
131
97
6

133
98
7

134
99
8

134
98



139
99


140
100


143
101


145
102


147



MỞ ĐẦU
C

 Ngày nay CNTT hi

-

, quy tr

, x

.


.





 

 

 
 
 

tính toán thêm vào.




yên tính toán.
 

 các



 


mây. H,



                
 , nó không


 theo

              


 



: 



 

             
Azure 


.
-

bày 
. 




 

Trang 14
CHƯƠNG 1 : ĐIỆN TOÁN ĐÁM MÂY
1.1. Khái niệm điện toán đám mây.

      ,      
Internet.
m 

 


 
Computing.  , 
Wikipedia 
 
1.1.1. Định nghĩa Ian Foster
 


ài thông qua Internet. -scale
distributed computing paradigm that is driven by economies of scale, in which a pool
of abstracted, virtualized, dynamically scalable, managed computing power, storage,

platforms, and services are delivered on demand to external customers over the
[10].).
1.1.2. Định nghĩa Rajkumar Buyya
 song 


              
collection of interconnected and virtualised computers that are dynamically
provisioned and presented as one or more unified computing resources based on
service-level agreements established through negotiation between the service provider
[22].)

 

Trang 15
1.1.3. Định nghĩa Wikipedia
   
 Internet

 
 thông
tin 











Laptop
Mobile
PC
Application Server
Database
Server

Hình s 1.1 
1.2. Đặc điểm của điện toán đám mây.
Theo David S. Linthicum [5].          
mây.
1.2.1. Tính tự phục vụ theo nhu cầu

u : T

 

Trang 16
  
. [5].
1.2.2. Truy cập diện rộng




1.2.3. Dùng chung tài nguyên và độc lập vị trí

-

. Khi nhu

 .

. 
[5].
1.2.4. Khả năng co giãn nhanh chóng



tài nguyên.




1.2.5. Chi trả theo thực dùng

 

 

     


 

Trang 17





Hiệu suất: H

Khả năng chịu đựng: 


1.3. Các thành phần của đám mây.

Kiến trúc
(SaaS)
(PaaS)

(IaaS)
[, , ]
(HaaS)
Quản lý ảo hóa
  
Dịch vụ cốt lõi
Khám phá



Bảo mật



Mã hóa/ 
Quản trị dữ liệu



Quản lý dịch vụ






Tính phí


Giám sát

Hình s 1.2 : Các thành phn 
1.3.1. Mô hình và dịch vụ của điện toán đám mây
CD
Service   Service  
(Software as a Service  SaaS).
1.3.1.1. Dịch vụ phần mềm (Software as a Service – SaaS)

 

Trang 18
Mcho phép các
-







Sametime®, Unyte, Salesforce.com, Sugar CRM, và WebEx.
a) Các ứng dụng này thường cung cấp :
 Giao dii s dng.
 Các chng dc.
 C d lic.
 Thông qua trình duyt, i s dng có th truy cp n các ng dng
bng nhiu các thit b n tho
b) Phân loại trong SaaS.
 Chuyên về dịch vụ : Cung cp các gii pháp kinh doanh cho các t
chc, cá nhân và doanh nghic bán thông qua mt dch v
thuê bao. Các ng dng loi này gm: Qun lý quan h khách hàng, qun
lý nhân s 
 Hướng khách hàng : Cung cp dch v cho nhng khách hàng cá nhân.
H ch vi dng ng dng. Khách hàng h
phi tr phí. Mt khác vi dng rn 
vi dng email. Mt s dch v ph bin hin nay là google
p dch v ch yu kim tin nh
vào qung cáo.
c) Những thuận lợi khi triển khai SaaS
 Đối với người sử dụng: Có rt nhiu li khi s dKhông
cn phi mua các thit b phn cng t tin, không phi lo bo trì phn
mm. Vì phn mt trên web, truy xut ng dng thông qua
trình duyt nên có th s dng bt c   t c th m nào.
Ngoài ra h n phi lo lng v bo mt, phòng chng vi rút.
 Đối với nhà cung cấp dịch vụ : Nhà cung cp dch v không phi lo vn
 vi phm bn quyn vì ch có mt phn mm duy nht và
qun lý t xa, hacker khó có th ly cp d liu ca ng dng. Nhà cung

 


Trang 19
cp dch v có th kic nhiu tiu i s
dng dch v, h kim tin ng cách thu tin qu
d) Những giới hạn khi thực hiện triển khai SaaS.
 Khó đáp ứng nhu cầu của tất cả mọi người: Xây dc mt ng
dng có kh c ht yêu cu ca mi là rt khó,
u i các nhà cung cp dch v phân tích yêu cu nghip v rõ
c khi trin khi ng dng nên SaaS.
 Chuyển đổi dữ liệu người sử dụng qua SaaS : Vi các h thng ln, có
ng thông tin ln thì v chuyi d liu lên SaaS s gp
khi các d liu nhy cm vi doanh nghi
nên SaaS thì cn phi mã hóa thông tin.
 Có một số ứng dụng gần như không thể chuyển qua SaaS: Ví d 
các ng dng Business Intelligence, vi kh   liu rt ln,
không th truyn ti qua mc, vi li d liu này cn phi
bo mt cao, nên r t d liu ca h
lên internet
 Bảo mật là vấn đề cần thảo luận trong SaaS : Nhà cung cp dch v
cn phi có chính sách bo mt tt và phi có tho thun cp dch v hp
dn thì khách hàng mi có th ng giao d liu nên trên SaaS.
1.3.1.2. Dịch vụ nền tảng (Platform as a Service – PaaS)
  m: Phát



 [5].
 Thiết kế: H tr i dùng thit k ng dng và giao di
vi s dng.
 Phát triển ứng dụng: H tr các công c i s dng có th
thit k, vit các mã lnh nhng các yêu cu nghip v và thc

hin kim th phn mc hin
 Triển khai ứng dụng: Cung c  ng trin khai các ng dng
hoc dch v ng web.
 Tích hợp: Cung cng cho phép tích hp ng dng phn mm
ci s dng dch v 
phn mi s dng tr thành dch v phn mm.

 

Trang 20
 Lưu trữ: Cung cp kh  bên vng cho các ng dng và dch
v bao g  d liu và các file theo yêu cu.
 Hoạt động: Cung cp kh ng các ng dng trong
thc hi và x lý các ngoi l (Exception) có
liên quan ti hong ca ng dng.

và duy

1.3.1.3. Dịch vụ cơ sở hạ tầng (Infrastructure as a Service – IaaS )

p các tài nguyên 
các  . Chúng  
- 
. 




m IaaS :
 IaaS s dng công ngh o hóa nên có th thy rõ s tit kim chi phí do

vic s dng ngun lc hiu qu mang li.
 i dùng không cn quan tâm ti vic duy trì thit b phn cng
mng v rc ri trong quá trình vn hành h thng
mi.
m IaaS
 Do nhiu nhà cung cp dch v  h tng (IaaS) yêu ci s
dng phi tr tin c ng s dng/ thi gian, do
v gim chi phí và tn dng th mnh công ngh o hóa yêu cu
i s dng phi tính chính xác nhu cu thc s ci vi h
thng ca h.
 Nhng yu t  i dùng cn ph       
  
1.3.2. Quản lý ảo hóa
1.3.2.1. Tổng quan công nghệ ảo hóa.
p
các 

 

Trang 21

tính . 





               

1.3.2.2. Phân tầng trong kiến trúc ảo hóa.

Theo Rajkumar Buyya [14
sau :

Hình s 1.3 : Các lp trong kin trúc o
a) Tng o hóa (Virtualization layer)

N


    


 (Visual Virtual Machine
Manager).
 
 

 

Trang 22

                 


 
 

 






  
 
-

2008.
b) Máy o (Virtual machine)
Công ngn lý


ng :
 Tng h u hành máy o
 Tng ng di s dng

Hình s 1.4 : Phân tng trong máy o

hành máy Guest os) 

 

Trang 23
1.3.2.3. Chu trình vòng đời máy ảo.
.

Hình s 1.5 : Chu trình i máy o
Bước 1: Yêu cầu dịch vụ phía khách hàng: 
 



Bước 2: Cung cấp máy ảo: h  (Guest
OS) và các

Bước 3: Hoạt động máy ảo: 

Bước 4 : Giải phóng máy ảo : 



1.3.2.4. Tiến trình cấp phát máy ảo
 [14]:
Bước 1: L
  lý 
  


 

Trang 24
Bước 2: 

Bước 3: 


Hình s 1.6 : Mô t tin trình cp phát máy o
Bước 4: 

Kết luận: 


 

1.3.3. Các dịch vụ chính
1.3.3.1. Tìm kiếm và lưu dự phòng
Quá trình khám phá (tìm kiếm) các dịch vụ: 






trên Rest. REpresentational State Transfer (REST)  

-
WW (World Wide Web).
             

 

 

Trang 25
Khả năng sao lưu dự phòng: C


mây.
Ví dụ khả năng sao lưu dự phòng




Google App Engi
 Master/Slave Datastore: 




 High Replication Datastore: 



Khi thc hi phòng, vic tránh trùng lp d liu là ti cn thit.
Ví dụ
Gii pháp tránh trùng lp d liu ca Cisco thc hi:

Hình s 1.7 : Gii pháp tránh trùng lp d liu ca Cisco
 Tại nguồn : 
 Tại đích : 

 Mịn : 


a ra c   

 

Trang 26

Tại nguồn
 
.  

.
  
.
Tại đích
 
  



Hình s 1.8 : Loi b trùng lp ti ngu
1.3.3.2. Cân bằng tải
là  

 
 
 

 
 

 Các nút 
 

 .
 




×