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 - Pdf 27

ĐẠ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.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

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

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

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

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.

/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.

"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",

"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

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

// 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);
}
});


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status