Tải bản đầy đủ (.doc) (26 trang)

Tiểu luận môn Điện toán lưới và đám mây Tìm hiểu WebSphere sMash và DB2 Express-C trên đám mây công khai Amazon EC2

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 (457.08 KB, 26 trang )

ĐẠI HỌC QUỐC GIA TPHCM
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN MÔN HỌC ĐIỆN TOÁN LƯỚI VÀ ĐÁM MÂY
ĐIỆN TOÁN ĐÁM MÂY
Tìm hiểu WebSphere sMash
và DB2 Express-C trên đám mây công khai
Amazon EC2
HVTH: Võ Trúc Vy. CH1301073. CH-08
GVHD: PGS.TS. Nguyễn Phi Khứ
TpHCM, 6/2014
LỜI CẢM ƠN
Em xin chân thành cám ơn Thầy PGS.TS. Nguyễn Phi Khứ đã tận tình giảng
dạy môn Điện toán lưới và Đám mây.
Kiến thức Thầy đã truyền đạt là vô cùng quí giá, là hành trang cho em trong học
tập và làm việc, là động lực giúp em tự tin hơn.
Em xin chân thành cám ơn Thầy.
1
LỜI NÓI ĐẦU
Trong vài năm qua, Công nghệ thông tin (IT) đã bắt đầu một mẫu hình mới —
điện toán đám mây. Mặc dù điện toán đám mây chỉ là một cách khác để cung cấp các
tài nguyên máy tính, chứ không phải là một công nghệ mới, nhưng nó đã châm ngòi
một cuộc cách mạng trong cách cung cấp thông tin và dịch vụ của các tổ chức.
Điện toán đám mây quả thực là một cuộc cách mạng, nó đang tạo ra một sự
thay đổi cơ bản trong kiến trúc máy tính, phát triển phần mềm và các công cụ và tất
nhiên, cả trong cách chúng ta lưu trữ, phân phối và sử dụng thông tin.
Đồ án này trình bày lý thuyết cơ bản điện toán đám mây, các dịch vụ của các
nhà cung cấp trên nền điện toán đám mây cho thấy sức mạnh và triển vọng của nó cho
hiện tại và tương lai. Đồ án tập trung giới thiệu các dịch vụ mã nguồn mở.
2
MỤC LỤC
CHƯƠNG 1. ĐIỆN TOÁN ĐÁM MÂY 4


1.1. Định nghĩa 4
1.2. Lợi ích 4
1.3. Các khối xây dựng của điện toán đám mây 5
1.4. Các tầng của điện toán đám mây 5
1.5. Các cách hình thành đám mây 7
1.6. Các vai trò công nghệ thông tin trong đám mây 7
1.7. Đánh giá rủi ro 8
1.8. Kết luận 9
1.9. Kỹ thuật trong đám mây 10
1.10. Lưu trữ trong đám mây 11
1.11. Các vấn đề cần quan tâm 11
CHƯƠNG 2. WEBSPHERE SMASH VÀ DB2 EXPRESS-C TRÊN ĐÁM MÂY
CÔNG KHAI AMAZON EC2 13
2.1. Giới thiệu 13
2.2. WebSphere sMash và DB2 Express-C 13
CHƯƠNG 3. KẾT LUẬN 24
3
CHƯƠNG 1. ĐIỆN TOÁN ĐÁM MÂY
1.1. Định nghĩa
Điện toán đám mây (Cloud-Computing) có thể được định nghĩa một cách đơn
giản như là sự sử dụng tài nguyên tính toán có khả năng thay đổi theo nhu cầu được
cung cấp như là một dịch vụ từ bên ngoài với chi phí trả cho mỗi lần sử dụng.
Có thể truy cập đến bất kỳ tài nguyên nào tồn tại trong "đám mây (cloud)" tại
bất kỳ thời điểm nào và từ bất kỳ đâu thông qua hệ thống Internet, không phải quan
tâm xem làm cách nào các thứ đang được duy trì phía trong của đám mây.
Đám mây là được đánh giá cao và sẵn sàng đáp ứng cho các nhu cầu cần thiết
của ứng dụng. Điện toán đám mây cũng có thể được gọi là tính toán tiện ích hay là
tính toán lưới (grid computing).
Điện toán đám mây là mô hình dịch chuyển trong cách thức làm thế nào chúng
ta cung cấp kiến trúc và khả năng mở rộng của các ứng dụng.

1.2. Lợi ích
Có nhiều lý do ngày càng có nhiều công ty đang chuyển dịch theo hướng các giải
pháp công nghệ thông tin bao gồm điện toán đám mây.
Trước hết, điện toán đám mây có thể cắt giảm các chi phí liên quan đến việc cung
cấp các dịch vụ công nghệ thông tin. có thể giảm cả vốn và chi phí vận hành bằng cách
nhận được tài nguyên chỉ khi cần chúng và chỉ trả tiền cho những gì sử dụng.
Ngoài ra, do làm giảm một số trong các món chi tiêu bắt buộc kết hợp với việc
quản lý nguồn tài nguyên khác nhau trên toàn doanh nghiệp, nhân viên chủ chốt của có
thể tập trung nhiều hơn vào giá trị sản xuất và đổi mới nghiệp vụ.
Cuối cùng, các mô hình điện toán đám mây cung cấp sự nhanh nhẹn kinh doanh.
Kể từ khi toàn bộ cơ sở hạ tầng công nghệ thông tin có thể điều chỉnh mở rộng lên
hoặc giảm xuống để đáp ứng nhu cầu, các doanh nghiệp có thể đáp ứng dễ dàng hơn
các nhu cầu thay đổi nhanh chóng của thị trường để đảm bảo các nhu cầu luôn đứng
hàng đầu cho những người tiêu dùng của họ.
Theo nhiều cách, điện toán đám mây là sự thực hiện kết hợp nhiều công nghệ hiện
có (SOA, ảo hóa, điện toán tự trị) với những ý tưởng mới để tạo ra một giải pháp công
nghệ thông tin đầy đủ.
4
1.3. Các khối xây dựng của điện toán đám mây
Mô hình điện toán đám mây gồm có một mặt trước (front end) và một mặt
sau (back end). Hai thành phần này được kết nối thông qua một mạng, trong đa số
trường hợp là Internet.
Phần mặt trước là phương tiện chuyên chở qua đó người dùng tương tác với hệ
thống; phần mặt sau chính là đám mây.
Phần mặt trước gồm có một máy tính khách hoặc mạng máy tính của doanh
nghiệp và các ứng dụng được sử dụng để truy cập vào đám mây. Phần mặt sau cung
cấp các ứng dụng, các máy tính, các máy chủ và lưu trữ dữ liệu để tạo ra đám mây của
các dịch vụ.
1.4. Các tầng của điện toán đám mây
Khái niệm điện toán đám mây được xây dựng trên các tầng, mỗi tầng cung cấp

một mức chức năng riêng. Sự phân tầng này của các thành phần đám mây đã cung cấp
một phương tiện cho các tầng của điện toán đám mây để trở thành một loại hàng hóa
như điện, dịch vụ điện thoại hoặc khí tự nhiên.
Hàng hóa mà điện toán đám mây bán là khả năng tính toán với chi phí và phí tổn
thấp hơn cho người dùng. Điện toán đám mây đã sẵn sàng để trở thành dịch vụ siêu
tiện ích tiếp theo.
Trình giám sát máy ảo (VMM- virtual machine monitor) cung cấp phương tiện
để sử dụng đồng thời các tiện ích điện toán đám mây (xem Hình 1). VMM là một
chương trình trên một hệ thống máy tính chủ cho phép một máy tính hỗ trợ nhiều môi
trường thi hành giống hệt nhau. Từ quan điểm của người dùng, hệ thống này là một
máy tính độc lập, hoàn toàn cách biệt với những người dùng khác. Trong thực tế, các
người dùng đang được phục vụ bởi cùng một máy tính. Một máy ảo là một hệ điều
hành (OS) đang được quản lý bởi một chương trình điều khiển nằm dưới cho phép nó
xuất hiện giống như là nhiều hệ điều hành. Trong điện toán đám mây, VMM cho phép
những người dùng giám sát và do đó quản lý các khía cạnh của quá trình như là truy
cập dữ liệu, lưu trữ dữ liệu, mã hóa, đánh địa chỉ, cấu trúc liên kết và di chuyển tải
công việc.
Hình 1. Các trình giám sát máy ảo hoạt động như thế nào
5
Đây là các tầng đám mây được cung cấp:
1.4.1. Tầng cơ sở hạ tầng
Là nền tảng của đám mây. Nó gồm có các tài sản vật lý — các máy chủ, các thiết
bị mạng, các ổ đĩa lưu trữ, v.v Cơ sở hạ tầng là một dịch vụ (IaaS) có các nhà cung
cấp như IBM® Cloud. Khi sử dụng IaaS thực tế không kiểm soát cơ sở hạ tầng nằm
dưới, nhưng có quyền kiểm soát các hệ điều hành, lưu trữ, triển khai các ứng dụng và
ở một mức độ hạn chế, có quyền kiểm soát việc lựa chọn các thành phần mạng.
Dịch vụ in theo yêu cầu (POD) là một ví dụ về các tổ chức có thể hưởng lợi từ
IaaS. Mô hình POD được dựa trên việc bán sản phẩm có khả năng tùy chỉnh. Các POD
cho phép các cá nhân mở cửa hàng và bán thiết kế các sản phẩm. Các chủ cửa hàng có
thể tải lên nhiều hay ít thiết kế tùy theo khả năng sáng tạo của họ. Có hàng ngàn lần tải

lên. Với các khả năng lưu trữ đám mây, một POD có thể cung cấp không gian lưu trữ
không hạn chế.
1.4.2. Tầng nền tảng hệ thống.
Tầng giữa, nó cung cấp cơ sở hạ tầng của ứng dụng. Nền tảng hệ thống là một
dịch vụ (PaaS) cung cấp sự truy cập đến các hệ điều hành và các dịch vụ có liên quan.
Nó cung cấp một cách để triển khai các ứng dụng lên đám mây bằng cách sử dụng các
ngôn ngữ lập trình và các công cụ do nhà cung cấp hỗ trợ. không cần phải quản lý
hoặc kiểm soát cơ sở hạ tầng nằm dưới, nhưng có quyền điều khiển các ứng dụng đã
triển khai và ở một mức độ nào có quyền điều khiển ứng dụng sử dụng các cấu hình
môi trường trên máy tính chủ.
PaaS có các nhà cung cấp như là Elastic Compute Cloud (EC2) của Amazon. Nhà
phần mềm doanh nhân nhỏ là một hoạt động kinh doanh lý tưởng đối với PaaS. Với
nền tảng hệ thống đã chọn lọc kỹ, có thể tạo ra các sản phẩm đẳng cấp thế giới mà
không thêm gánh nặng cho hệ thống đang chạy trong công ty.
1.4.3. Tầng ứng dụng
Tầng trên cùng. tầng mà hầu hết mọi người xem như là đám mây. Các ứng dụng
chạy ở đây và được cung cấp theo yêu cầu của những người dùng. Phần mềm là một
dịch vụ (SaaS) có các nhà cung cấp như Google Pack. Google Pack bao gồm các ứng
dụng, các công cụ có thể sử dụng được qua Internet, như Calendar, Gmail, Google
Talk, Docs và nhiều hơn nữa.
Hình . Các tầng điện toán đám mây được nhúng trong các thành phần "là một
dịch vụ"
6
1.5. Các cách hình thành đám mây
Có ba kiểu hình thành đám mây: riêng tư (theo giả thuyết), công cộng và lai.
1.5.1. Các đám mây công cộng
Có sẵn cho công chúng hoặc một nhóm ngành nghề lớn và do một tổ chức bán các
dịch vụ đám mây sở hữu và cung cấp. Một đám mây công cộng là cái mà người ta hình
dung là đám mây theo nghĩa thông thường; đó là, các tài nguyên được cung cấp động
trên Internet bằng cách sử dụng các ứng dụng web từ một nhà cung cấp bên thứ ba bên

ngoài cung cấp các tài nguyên chia sẻ và gửi hóa đơn tính cước trên cơ sở tính toán
việc sử dụng.
1.5.2. Các đám mây riêng tư
Tồn tại bên trong tường lửa của công ty và do tổ chức của quản lý. Chúng là các
dịch vụ đám mây do tạo ra và kiểm soát trong doanh nghiệp của mình. Các đám mây
riêng tư cũng cung cấp nhiều lợi ích tương tự như các đám mây công cộng — sự khác
biệt chủ yếu là tổ chức của chịu trách nhiệm thiết lập và duy trì đám mây đó.
1.5.3. Các đám mây lai
Là một sự kết hợp của đám mây công cộng và riêng tư khi sử dụng các dịch vụ có
trong cả hai vùng công cộng và riêng tư. Các trách nhiệm quản lý được phân chia giữa
các nhà cung cấp dịch vụ đám mây công cộng và chính doanh nghiệp. Khi sử dụng
một đám mây lai, các tổ chức có thể xác định các mục tiêu và các yêu cầu của các dịch
vụ được tạo ra và có được chúng dựa vào sự lựa chọn thích hợp nhất.
1.6. Các vai trò công nghệ thông tin trong đám mây
Việc quản lý và quản trị sẽ đòi hỏi sự tự động hóa cao hơn, đòi hỏi một sự thay đổi
nhiệm vụ của các nhân viên chịu trách nhiệm tạo kịch bản lệnh do tăng trưởng sản
xuất mã. thấy đấy, công nghệ thông tin có thể làm cho gắn kết hơn, cần ít phần cứng
và ít triển khai phần mềm hơn, nhưng nó cũng tạo ra các cấu tạo mới. Công nghệ
thông tin đang dịch chuyển hướng tới người lao động tri thức. Trong mẫu hình mới
7
này, các nguồn nhân lực kỹ thuật sẽ có trách nhiệm lớn hơn để tăng cường và nâng cấp
các quy trình nghiệp vụ chung.
1.6.1. Nhà phát triển
Điện toán đám mây cung cấp một khả năng hầu như vô tận, loại bỏ các mối lo về
khả năng mở rộng. Điện toán đám mây cho các nhà phát triển truy cập vào các tài sản
phần mềm và phần cứng mà hầu hết các doanh nghiệp nhỏ và vừa không có đủ khả
năng tự trang bị. Các nhà phát triển, khi sử dụng điện toán đám mây dựa vào Internet
và các tài sản là kết quả của cấu hình này, sẽ có quyền truy cập vào các tài nguyên mà
hầu như đã chỉ có thể mơ ước trong quá khứ vừa qua.
1.6.2. Nhà quản trị

Các nhà quản trị là những người bảo vệ và các nhà lập pháp của một hệ thống
công nghệ thông tin. Họ chịu trách nhiệm kiểm soát người dùng truy cập vào mạng.
Điều này có nghĩa là họ nằm trên đỉnh của việc tạo ra các mật khẩu người dùng và tạo
nên các quy tắc và các thủ tục dành cho chức năng cơ bản như là việc truy cập nói
chung vào các tài sản hệ thống.
Trong điện toán đám mây, nhà quản trị không chỉ đảm bảo dữ liệu và các hệ thống
bên trong cho tổ chức, họ còn phải giám sát và quản lý đám mây để đảm bảo sự an
toàn cho hệ thống và dữ liệu của họ ở khắp mọi nơi.
1.6.3. Kiến trúc sư
Kiến trúc của điện toán đám mây về cơ bản là sự trừu tượng hóa của khái niệm ba
tầng, đó là IaaS, PaaS và SaaS, sao cho doanh nghiệp cụ thể triển khai cách tiếp cận
điện toán đám mây đáp ứng được mục tiêu và mục đích khởi đầu của nó.
Vai trò của kiến trúc sư trong thời đại điện toán đám mây là nghĩ ra và mô hình
hóa một sự tương tác chức năng của các tầng của đám mây. Kiến trúc sư phải sử dụng
trừu tượng hóa như một phương tiện để đảm bảo rằng công nghệ thông tin đang đóng
đúng vai trò của mình trong việc đạt được các mục tiêu của tổ chức.
1.7. Đánh giá rủi ro
Sự an toàn và sự riêng tư là các mối quan tâm chính được những người đang di
chuyển vào đám mây bày tỏ. Các công ty đang cung cấp các dịch vụ điện toán đám
mây biết điều này và hiểu rằng nếu không có sự an toàn tin cậy, thì việc kinh doanh
của họ sẽ thất bại. Vì vậy, sự an toàn và sự riêng tư là những ưu tiên cao cho tất cả các
thực thể điện toán đám mây.
1.7.1. Quản lý
Quản lý là trách nhiệm chính của chủ sở hữu của một đám mây riêng tư và là trách
nhiệm chia sẻ chung của nhà cung cấp dịch vụ và người dùng dịch vụ trong các đám
8
mây công cộng. Tuy nhiên, trong hoàn cảnh có các yếu tố như chủ nghĩa khủng bố
xuyên quốc gia, từ chối dịch vụ, các vi rút, các sâu và các thứ tương tự — đã có hoặc
có thể có những khía cạnh nằm ngoài sự kiểm soát của hoặc chủ sở hữu đám mây
riêng tư hoặc nhà cung cấp dịch vụ và người dùng dịch vụ đám mây công cộng — cần

có một sự hợp tác rộng lớn hơn theo kiểu nào đó, đặc biệt là trên các cấp độ toàn cầu,
khu vực và quốc gia. Tất nhiên, sự hợp tác này phải được xây dựng theo cách sẽ không
pha loãng, nếu không nó sẽ gây tổn hại đến sự kiểm soát của chủ sở hữu của quá trình
hoặc các thuê bao trong trường hợp của đám mây công cộng.
1.7.2. Các yêu cầu băng thông
Nếu sắp chập nhận khung công tác đám mây, thì phải đánh giá băng thông và nút
nghẽn cổ chai băng thông tiềm ẩn trong chiến lược.
Trên thị trường hiện nay, câu trả lời tốt nhất là máy chủ phiến. Một máy chủ phiến
là một máy chủ đã được tối ưu hóa để giảm thiểu việc sử dụng năng lượng và không
gian vật lý. Một trong những lợi thế rất lớn của máy chủ phiến đối với việc sử dụng
điện toán đám mây là cải thiện tốc độ băng thông. hãy xem các khả năng của nhà cung
cấp của để xác định xem nút nghẽn cổ chai băng thông có là một vấn đề hiệu năng lớn
hay không.
1.7.3. Ảnh hưởng tài chính
Vì một tỷ lệ chi phí khá lớn trong các hoạt động công nghệ thông tin xuất phát từ
các chức năng quản trị và quản lý, nên sự tự động hóa ngầm của một số các chức năng
này sẽ tự nó cắt giảm bớt các chi phí trong một môi trường điện toán đám mây. Sự tự
động hóa có thể làm giảm đáng kể hệ số lỗi và chi phí dự phòng của sự lặp lại thủ
công.
Có các yếu tố khác đóng góp vào các vấn đề tài chính như chi phí duy trì các tiện
nghi vật lý, việc sử dụng năng lượng điện, các hệ thống làm mát và tất nhiên có cả các
nhân tố quản trị và quản lý.
1.7.4. Giảm nhẹ rủi ro
Với việc sử dụng các hệ thống trong đám mây, luôn có nguy cơ luôn hiện hữu về
an toàn dữ liệu, kết nối và hành động ác ý ảnh hưởng đến các quá trình điện toán. Tuy
nhiên, nếu có kế hoạch cẩn thận và phương pháp luận lựa chọn nhà cung cấp dịch vụ
và quan điểm sắc sảo về quản lý rủi ro chung, hầu hết các công ty đều có thể sử dụng
công nghệ này một cách an toàn.
1.8. Kết luận
Trong thời đại cách mạng mới này, điện toán đám mây có thể cung cấp cho các tổ

chức phương tiện và các phương pháp cần thiết để đảm bảo sự ổn định tài chính và
9
dịch vụ chất lượng cao. Tất nhiên, phải có hợp tác chung nếu quá trình điện toán đám
mây là để đạt tới sự an toàn tối ưu và các tiêu chuẩn vận hành chung. Với sự ra đời của
điện toán đám mây, điều cấp thiết với tất cả chúng ta là sẵn sàng cho cuộc cách mạng
này.
1.9. Kỹ thuật trong đám mây
Kỹ thuật điện toán đám mây là kỹ thuật tập trung vào các dịch vụ đám mây như
SaaS, PaaS và IaaS. Đó là một giải pháp đa ngành từ nhiều lĩnh vực khác nhau như hệ
thống kỹ thuật, công nghệ phần mềm, kỹ thuật web, kỹ thuật thông tin, kỹ thuật bảo
mật, nền tảng kỹ thuật, kỹ thuật dịch vụ, kỹ thuật rủi ro, và kỹ thuật chất lượng. Khả
năng cung cấp các dịch vụ đám mây và những thách thức trong mô hình điều khiển
trong kinh doanh, cho kỹ thuật điện toán đám mây như là quá trình “thiết kế các hệ
thống cần thiết để tận dụng sức mạnh và kinh tế của điện toán đám mây để giải quyết
các vấn đề kinh doanh”.
Các yếu tố của kỹ thuật điện toán đám mây bao gồm:
• Nền tảng (Foundation): cơ sở, khái niệm, hướng dẫn và phân loại
• Thực hiện (Implementation): xây dựng khối và hướng dẫn thực hành
trên đám mây
• Vòng đời (Lifecycle): sự lặp lại tại đầu cuối giúp điện toán đám mây
phát triển và phân phối
• Quản lý (Management): thời gian thiết kế và quản lý đám mây thời gian
chạy từ nhiều vấn đề
Những thành phần của kỹ thuật trong đám mây.
10
1.10. Lưu trữ trong đám mây
Đám mây lưu trữ là một mô hình kết nối mạng lưu trữ trực tuyến, nơi dữ liệu
được lưu trữ trên nhiều máy chủ ảo, thường được tổ chức bởi các bên thứ ba, thay vì
được lưu trữ trên máy chủ chuyên dụng. Công ty Hosting hoạt động là trung tâm dữ
liệu lớn, và những người yêu cầu dữ liệu của họ được tổ chức mua hoặc thuê dung

lượng lưu trữ từ họ và sử dụng nó cho các nhu cầu lưu trữ của họ. Các trung tâm dữ
liệu điều hành trên nền ảo hóa các nguồn lực theo yêu cầu của khách hàng và được đưa
vào trong kho lưu trữ, các khách hàng của nhà cung cấp có thể sử dụng để lưu trữ các
tập tin hoặc dữ liệu đối tượng. Về mặt vật lý, các nguồn tài nguyên có thể được lấy qua
nhiều máy chủ.
Dịch vụ lưu trữ trong đám mây có thể được truy cập thông qua một trình duyệt
web, giao diện lập trình ứng dụng (API). Công việc lưu trữ dữ liệu trên đám mây lưu
trữ sẽ tốt hơn là trên một hệ thống địa phương. Vì đám mây lưu trữ có một số ưu điểm
so với lưu trữ dữ liệu truyền thống. Nếu lưu trữ dữ liệu trên một đám mây, có thể sử
dụng nó từ bất kỳ vị trí có quyền truy cập Internet.
Điều này làm cho nó đặc biệt hấp dẫn cho các nhân viên thường xuyên đi công
tác. Nhân viên công ty không cần phải sử dụng cùng một máy tính để truy cập dữ liệu
cũng không cần phải mang theo các thiết bị lưu trữ vật lý.
Ngoài ra, nếu tổ chức có văn phòng chi nhánh, tất cả nhân viên đều có thể truy
cập dữ liệu từ các nhà cung cấp đám mây.
1.11. Các vấn đề cần quan tâm
1.11.1.Bảo mật và sự an toàn
Mô hình điện toán đám mây đã bị chỉ trích bởi những người dùng vì tính riêng
tư. Trong đó các công ty lưu trữ có các dịch vụ kiểm soát, có thể theo dõi hợp pháp
hoặc bất hợp pháp các thông tin liên lạc và lưu trữ dữ liệu giữa người dùng và công ty
chủ.
Trong hầu hết trường hợp, các nhà cung cấp phải đảm bảo rằng cơ sở hạ tầng
của họ là an toàn, dữ liệu và các ứng dụng được bảo vệ. Đồng thời các nhà cung cấp
đã thực hiện các biện pháp an ninh thích hợp để bảo vệ thông tin.
11
1.11.2.Sự tuân thủ các quy định
Tuân thủ các quy định bao gồm FISMA, HIPAA và SOX tại Hoa Kỳ, luật bảo
vệ dữ liệu ở EU và các thẻ tín dụng của ngành công nghiệp PCI DSS.
Nhiều nhà cung cấp cũng có được SAS 70 Loại II (Statement on Auditing
Standards 70 Type II) chứng nhận (ví dụ như Amazon, Salesforce.com, Google và

Microsoft), nhưng điều này đã bị chỉ trích. Nhà cung cấp thường đưa thông tin này
theo yêu cầu, theo thỏa thuận không tiết lộ thông tin.
1.11.3.Tác động của môi trường
Mặc dù điện toán đám mây thường được giả định là một hình thức “máy tính
xanh”, nó chưa được công bố và không có nghiên cứu nào để chứng minh giả thuyết
này. Nơi lắp đặt các máy chủ môi trường tác động ảnh hưởng đến điện toán đám mây.
Ở những nơi có khí hậu thuận lợi làm mát tự nhiên và tái tạo điện luôn sẵn có, ảnh
hưởng môi trường sẽ được nhiều lợi thế hơn trung bình. Vì vậy các nước có điều kiện
thuận lợi, chẳng hạn như Phần Lan, Thụy Điển và Thụy Sĩ, đang cố gắng thu hút các
trung tâm dữ liệu điện toán đám mây.
12
CHƯƠNG 2. WEBSPHERE SMASH VÀ DB2 EXPRESS-C TRÊN ĐÁM
MÂY CÔNG KHAI AMAZON EC2
2.1. Giới thiệu
Trong số ba loại đám mây công khai (public), riêng tư (private), và các đám
mây lai (hybrid) đám mây công khai có lẽ được biết đến nhiều nhất và có tính sẵn
sàng bày bán nhất. Tính khả truy cập và khả tương thích là hai đặc điểm chính dẫn đến
sự thông dụng của đám mây công khai. Cuối cùng, kiến trúc Amazon Elastic Compute
Cloud (EC2) cung cấp một kiến trúc đám mây công khai mà đặt các thể hiện Amazon
Machine Image có thể giao tới người dùng. Để cho phép các người dùng tận dụng
EC2, gần đây IBM đã phát hành Amazon Machine Images (AMI) thứ mà đóng gói
phần mềm phổ dụng của họ cung cấp cho nền tảng EC2; các AMIs này đều có giấy
phép không phí. Thêm vào đó IBM cũng cung cấp các phần mềm IBM có sẵn nhất
định chạy bên trong cơ sở hạ tầng EC2.
Bài viết này cung cấp một cái nhìn tổng quan về đám mây công khai và thảo luận
cách dùng của IBM WebSphere sMash và IBM DB2 Express-C Amazon Machine
Images để phân phát các ứng dụng Web được đặt trên cơ sở hạ tầng EC2
2.2. WebSphere sMash và DB2 Express-C
Một cách riêng rẽ, WebSphere sMash và DB2 Express-C là các công cụ mạnh mẽ
cho các nhà phát triển.

Dùng WebSphere sMash, có thể tạo các ứng dụng kiểu Web 2.0 dùng các công
nghệ được sử dụng và các mẫu được biết đến rộng rãi như là DOJO, PHP, Groovy và
các dịch vụ REST.
DB2 Express-C cung cấp kho dữ liệu hiệu quả, đáp ứng tốt và tin cậy cho dữ liệu
doanh nghiệp và bao gồm cả khả năng quản lý thuần XML (pure XML). Tuy nhiên,
một mức cao hơn của giá trị có thể được nhận ra khi các công nghệ này được kết hợp
để giao các ứng dụng Web phong phú, phản ứng nhanh, hướng dữ liệu.
Ứng dụng mẫu được bao gồm trong bài này minh họa một ứng dụng đặt chỗ trong
nhà hàng để cung cấp khái niệm sơ lược các khả năng sẽ được cung cấp cùng với
WebSphere sMash Zero Resource Model (ZRM) và một cơ sở dữ liệu DB2 Express-C.
Các mẫu cho ứng dụng này có thể dễ dàng được mở rộng để giải quyết dữ liệu phức
13
tạp nhất và các mối quan hệ dữ liệu. The Zero Resource Model tích hợp với DB2
Express-C được tận dụng để cung cấp một kinh nghiệm tiền kỳ
2.2.1. Cài đặt AMIs
Để dùng IBM AMIs, phải thi hành các bước sau, điều kiện đầu tiên là:
• Cài đặt tài khoản Amazon Web Services (AWS). Tài khoản này được dùng
để quản lý việc sử dụng EC2.
• Lấy và cấu hình WebSphere sMash AMI và DB2 Express-C AMI. Khi cấu
hình thể hiện DB2 Express-C, dùng các tên người dùng mặc định cho mục
đích minh họa. Đừng tạo cơ sở dữ liệu, các chi tiết đó được mô tả trong
phần tiếp theo.
• Triển khai AMIs vào tài khoản AWS của bằng các cung cấp theo chỉ dẫn.
2.2.2. Tạo và kích hoạt cơ sở dữ liệu
Sau khi triển khai cả DB2 Express-C và WebSphere sMash AMIs vào EC2, cấu
hình cơ sở dữ liệu của thể hiện đang chạy DB2 Express-C. Cơ sở dữ liệu này chứa các
bảng được tận dụng bởi ứng dụng.
1. Dùng SSH để đăng nhập và xác thực thể hiện DB2 AMI. Sau khi đăng nhập
vào, chuyển qua người dùng db2inst1 dùng lệnhsu - db2inst1 .
2. Tạo cơ sở dữ liệu cho ứng dụng dùng lệnh createDatabase. Từ thư mục

/home/db2inst1/bin, nhập vào lệnh ./createDatabase RSTDB .
Hình 1. Tạo cơ sở dữ liệu
3. Dừng và khởi động lại dịch vụ DB2 để kích hoạt cơ sở dữ liệu mới. Chuyển
lại người dùng root bằng lệnh su và chạy các lệnhrcdb2 stop và rcdb2
start .
14
Hình 2. Kích hoạt cơ sở dữ liệu
Sau khi khởi động lại dịch vụ, cơ sở dữ liệu RSTDB được kích hoạt, và thể hiện
DB2 Express-C được chạy trên cổng 50001. Cấu hình thể hiện DB2 Express-C của giờ
đây đã hoàn thành. ZRM trong WebSphere sMash được dùng để tích hợp với hậu kỳ,
bởi thế tất cả các bảng của được cấu hình một cách tự động.
2.2.3. Cài đặt ứng dụng
Sau khi cài đặt thể hiện WebSphere sMash AMI, đăng nhập vào ứng dụng
từ http://<ec2_host>:8070/. Ở đây sẽ tạo ứng dụng WebSphere sMash mà sẽ được
dùng ở ví dụ. Để làm thế, hãy nhấn Create new application để tạo ứng dụng mẫu
trong khung (panel) bên trái của AppBuilder. Khi được nhắc hãy nhập
tên RestaurantSeating. Sau khi tạo ứng dụng, nhấn vào tên ứng dụng ở khung trung
tâm của console để bắt đầu thêm nội dung cho ứng dụng.
2.2.4. Tác dụng đòn bẩy Zero Resource Model
ZRM hỗ trợ bởi WebSphere sMash được thiết kế để làm đơn giản triệt để quy trình
cung cấp truy cập kiểu REST tới nơi chứa dữ liệu phía sau. Mô hình hỗ trợ một
phương thức cung cấp truy cập với ít mã và cấu hình. Đơn giản hãy tạo một mô hình
dữ liệu và trình điều khiển tài nguyên mà được gọi để điều khiển các tương tác REST
với dữ liệu. Các trình điều khiển dữ liệu chứa rất ít mã để xử lý dữ liệu vào, và ZRM
hoàn toàn ẩn các tương tác với cơ sở dữ liệu ở phía sau.
1. Để dùng ZRM dưới dạng ví dụ, tạo các mô hình tài nguyên cho dữ liệu. Các mô
hình tài nguyên này định nghĩa định dạng dữ liệu của các tài nguyên trong ứng
dụng của và được sử dụng bởi ZRM để cung cấp quyền truy cập tới gian dữ liệu
trong cơ sở dữ liệu. nên đã đăng nhập vào AppBuilder, vì thế có thể lựa chọn New
file => Zero Resource Model in app/models => New form.

15
Hình 3. Tạo một mô hình tài nguyên mới trong AppBuilder
2. Tạo một mô hình dữ liệu JSON cho mỗi thực thể. Các mô hình JSON này định
nghĩa các thuộc tính cho mỗi tài nguyên. Điều này bao gồm thông tin về kiểu dữ
liệu của thuộc tính cũng như các thông tin khác như là giá trị mặc định, chiều dài
dữ liệu, và v.v Bởi vì đang tạo một hệ thống quản lý chỗ trong nhà hàng, sẽ cần
phải tạo các mô hình tài nguyên cho bốn thực thể khác nhau:
o Hàng đợi các khách
o Các bàn của nhà hàng
o Các chỗ ngồi
o Các nhân viên hầu bàn.
Trong WebSphere sMash, các mô hình này được khai báo dạng JSON. có thể dùng
trình soạn thảo thiết kế trong AppBuilder, hoặc có thể nhập trực tiếp các khai báo
JSON của các mô hình tài nguyên. Trong cả hai trường hợp, nên có bốn tệp JSON
được khai báo trong Ví dụ 1.
Ví dụ 1. Các khai báo mô hình tài nguyên
// start patron.json (model for waiting customers)
{
"fields": {
"name": {
"label": "Name",
"required": true,
"type": "string",
16
"description": "",
"default_value": "",
"max_length": 50
},
"capacity_requested": {
"label": "Number needed",

"required": true,
"type": "integer",
"description": "",
"default_value": ""
},
"seated": {
"label": "",
"required": true,
"type": "string",
"description": "",
"default_value": "false",
"max_length": 5
}
}
}
// end patron.json
// start rest_table.json (model for restaurant tables)
{
"fields": {
"capacity": {
"label": "Capacity",
"required": true,
"type": "integer",
"description": "",
"default_value": ""
},
"table_type": {
"label": "Type",
"required": true,
"type": "string",

"description": "",
"default_value": "",
"max_length": 50
17
}
}
}
// end rest_table.json
// start waiter.json (model for waiters)
{
"fields": {
"name": {
"label": "Name",
"required": true,
"type": "string",
"description": "",
"default_value": "",
"max_length": 50
}
}
}
// end waiter.json
// start seating.json (model for a seating in the restaurant)
{
"fields": {
"table_id": {
"label": "Table Id",
"required": true,
"type": "integer",
"description": "",

"default_value": ""
},
"patron_name": {
"label": "Patron Name",
"required": true,
"type": "string",
"description": "",
"default_value": "",
"max_length": 50
},
"waiter_name": {
"label": "Waiter Name",
18
"required": true,
"type": "string",
"description": "",
"default_value": "",
"max_length": 50
}
}
}
// end seating.json
3. Có thể thiết lập các trình điều khiển tài nguyên của bây giờ. Các trình điều khiển tài
nguyên cung cấp truy cập REST tới dữ liệu định nghĩa bởi các mô hình tài nguyên,
và trong ví dụ này, chúng được triển khai bằng ngôn ngữ Groovy. Chọn New file
=> Resource handler trong app/resources để tạo bốn trình điều khiển tài nguyên,
mỗi cái cho mỗi mô hình tài nguyên. Các trình điều khiển tài nguyên nên có tên
giống như các mô hình tài nguyên nhưng phần mở rộng tệp là .groovy chứ không
phải .json. Từ đây, chọn Resource handler trong app/resources. Có một phương
thức onList, onRetrieve, onCreate, onUpdate, và onDelete trong mỗi trình điều

khiển tài nguyên. Mỗi phương thức tương ứng mới một phương thức HTTP GET,
POST, PUT, và DELETE một cách tách biệt.
Ví dụ 2 hiển thị một ví dụ của trình điều khiển tài nguyên cho mô hình tài
nguyên người hầu bàn.
Ví dụ 2. waiter.groovy tệp
def onList()
{
ZRM.delegate();
}
def onRetrieve()
{
ZRM.delegate();
}
def onCreate()
{
ZRM.delegate();
}

def onUpdate()
{
19
ZRM.delegate();
}
def onDelete()
{
ZRM.delegate();
}
Khai báo groovy có trước có thể được mà đơn giản hơn bằng cách khai báo các nội
dung toàn bộ của tệp trong một dòng đơn:ZRM.delegate(). Không cần khai báo mỗi
phương thức, nhưng làm như vậy cho phép thêm các mã tùy chọn vào mỗi phương

thức nếu cần.
2.2.5. Tạo các bảng cơ sở dữ liệu
Sau khi tạo cả các mô hình và trình điều khiển tài nguyên, có thể dùng các công cụ
dòng lệnh và các tệp cấu hình trong WebSphere sMash để tạo các bảng cơ sở dữ liệu
của riêng bạn.
1. Dùng SSH để đăng nhập vào thể hiện WebSphere sMash AMI và cập nhật tệp
/home/smash/apps/RestaurantSeating/config/zero.config. Thêm tên, địa điểm và
cấu hình của gian dữ liệu phía sau.
Ví dụ 3. Tích hợp ZRM và DB2 Express-C
/config/db/zero-resource = {
"class" : "com.ibm.db2.jcc.DB2SimpleDataSource",
"driverType" : 4,
"serverName" : "ec2-75-101-207-229.compute-1.amazonaws.com",
"portNumber" : 50001,
"databaseName" : "RSTDB",
"user" : "db2inst1",
"password" : "passw0rd"
}
2. Copy tệp db2cc.jar and db2cc_license_cu.jar vào thư viện ứng dụng WebSphere
sMash. Trong các bước trước, đã cung cấp thông tin được yêu cầu cho ZRM, bao
gồm tên lớp nguồn dữ liệu, vị trí cơ sở dữ liệu và thông tin truy xuất cơ sở dữ liệu.
Tiếp theo, vì đang trỏ vào lớp nguồn dữ liệu
com.ibm.db2.jcc.DB2SimpleDataSource, cần chắc rằng các thư viện DB2 phù hợp
sẵn sàng cho WebSphere sMash. Dùng một trình SCP để lấy các tệp
/home/db2inst1/sqllib/java/db2cc.jar và
/home/db2inst1/sqllib/java/db2cc_license_cu.jar từ thể hiện DB2 Express-C AMIe.
Copy các tệp vào thư mục /home/smash/apps/RestaurantSeating/lib. Chạy zero
resolve từ thư mục /home/smash/apps/RestaurantSeating của thể hiện WebSphere
sMash để có các tệp JAR mới thêm vào classpath (đường dẫn tới lớp) ứng dụng.
20

3. Một cách tùy chọn, bây giờ có thể định nghĩa các dữ liệu ban đầu của các bảng cơ
sở dữ liệu. Để tiết kiệm thời gian nhập dữ liệu sau khi tạo các bảng, có thể dùng
một tính năng định nghĩa dữ liệu ban đầu để sinh dữ liệu khi tạo các bảng. Dữ liệu
này được định nghĩa trong tệp initial_data.json, nằm trong thư mục
app/models/fixtures ở trong ứng dụng. Các điểm vào tệp là các thể hiện của các mô
hình tài nguyên mà đã được định nghĩa trong các bước trước. Để sinh ra các bảng
của và sinh dữ liệu ban đầu chạy lệnh zero modelsync. Kết quả là, các bảng được
tạo trong thể hiện DB2 Express-C AMI, và bất kỳ dữ liệu đã định nghĩa trong tệp
initial_data.json sẽ được chèn vào các bảng sau khi chúng được tạo.
2.2.6. Tạo giao diện người dùng
Bây giờ cần phải cho phép các người dùng hệ thống của xem và tương tác với dữ
liệu. WebSphere sMash cung các các widget (trình ứng dụng nhỏ) DOJO mà truy cập
dữ liệu được lưu tận dụng những tiện nghi trong ZRM. Các widget này cung cấp các
chức năng bên ngoài. có thể đặt chúng ở bất kỳ đâu trong trang HTML, cung cấp các
thông tin cấu hình cần thiết, và kết quả là một giao diện người dùng mà giao quyền
truy cập tạo, đọc, cập nhật và xóa tới dữ liệu phía sau dùng các trình điều khiển tài
nguyên được tạo ra ở trước.
1. Định nghĩa một DataStore mà tương tác với một trình điều khiển tài nguyên ZRM
và định nghĩa một DataGrid mà tận dụng DataStore. Trong hệ thống quản lý chỗ
nhà hàng, các khách hàng cần có khả năng xem khách đang đợi hiện tại, thêm
khách mới, và xem các chỗ hiện tại (có thể áp dụng các kỹ thuật tương tự như dữ
liệu chỗ ngồi của hoặc bất kỳ dữ liệu nào quan trọng được cấu hình để dùng
ZRM.)
Ví dụ 4. DataGrid và DataStore khách hàng
// patron DataStore
<span dojoType="zero.resource.DataStore" id="patronDataStore"
jsId="patronDataStore"
contextRoot="./resources"
resourceCollection="patron">
</span>

// patron DataGrid
<div dojoType="zero.grid.DataGrid"
id="patronDataGrid"
visibleFields="name,capacity_requested,id"
store="patronDataStore"
readonly="true"
style="width: 348px; height: 271px;">
</div>
21
DataStore tham chiếu tới bộ sưu tập khách hàng (patron.json), và DataGrid tham
chiếu tới DataStore. Hình 4 cho thấy ví dụ của đầu ra.
Hình 4. zero.grid.DataGrid khách hàng
Để thêm vào DataGrid hiển thị dữ liệu, có thể thêm một khách hàng mới hoặc ngồi
vào chỗ một khách hàng đã đặt. Dữ liệu mới có thể được thêm một cách đơn giản
vào gian dữ liệu ở phía sau tận dụng ZRM.
Ví dụ 5. Thêm một dữ liệu khách hàng
function addPatron() {
dojo.xhrPost({
url: "resources/patron",
form: "addPatronForm",
load: function (data) {
hideAddPatron();
displayWaitingPatrons();
},

// Call this function if an error happened
error: function (error) {
console.error ('Error: ', error);
}
});

}
2. Cho phép giao tiếp với các trình điều khiển tài nguyên ZRM dùng HTML và
JavaScript™. Ví dụ trước dẫn đến kết quả trong một lời gọi tới trình điều khiển tài
nguyên patron.groovy, cái mà ủy nhiệm cho ZRM để điều khiển sinh cơ sở dữ liệu
DB2 với dữ liệu mới. Hình 5 mở rộng các khái niệm được mô tả trước để xác định
việc biểu diễn và cập nhật thông tin về các đặt chỗ hiện tại. Dùng một vài mã
22
HTML và JavaScript nhỏ hơn dẫn đến giao diện người dùng được chỉ ra trong
Hình 5.
Hình 5. Giao diện người dùng cho hệ thống chỗ ngồi nhà hàng
Kết quả là một giao diện người dùng súc tích, hiệu ứng trực quan và có ý nghĩa mà
cho phép người chủ điều khiển đầy đủ các khía cạnh liên quan đến chỗ ngồi trong nhà
hàng.
23
CHƯƠNG 3. KẾT LUẬN
Điện toán đám mây đang bùng nổ và ngày càng mở rộng phạm vi hoạt động của
chúng. Việc bước đầu áp dụng điện toán đám mây vào quản lý hệ thống đã đem lại
nhiều kết quả khả quan. Điện toán đám mây sẽ là hiện tại và tương lai phát triển của
công nghệ thông tin.
Đồ án này cung cấp một cái nhìn tổng quan về đám mây công khai và cách dùng của
IBM WebSphere sMash và IBM DB2 Express-C Amazon Machine Images để phân
phát các ứng dụng Web được đặt trên cơ sở hạ tầng EC2, phần nào chứng minh được
sức mạnh và lợi ích mà công nghệ điện toán đám mây mang lại cho doanh nghiệp nói
riêng và kinh tế nói chung.
24

×