Tải bản đầy đủ (.docx) (48 trang)

Điện toán đám mây Tìm hiểu công nghệ, giải pháp lưu trữ đám mây

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 (2.95 MB, 48 trang )

MỤC LỤC

CHƯƠNG 1: TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY..........................................4
I. Điện toán đám mây......................................................................................................4
1.1 Khái niệm về điện toán đám mây...........................................................................4
1.2 Các đặc điểm chính của điện tốn đám mây...........................................................5
1.3 Ưu nhược điểm của “ Điện toán đám mây”............................................................5
II. Các nhà cung cấp dịch vụ Cloud Coputing phổ biến hiện nay....................................7
2.1. Microsoft (Hay còn gọi là Microsoft Azure).........................................................7
2.2 Google Cloud Platform (Hay còn gọi là GCP).......................................................7
2.3 VMware Cloud.......................................................................................................8
2.4. Oracle....................................................................................................................8
2.5. Amazon Web Service (Hay còn gọi là AWS)........................................................8
2.6. FPT Smart Cloud...................................................................................................9
III. Mơ hình dịch vụ trong điện tốn đá mây...................................................................9
3.1 IaaS - Infrastructure as a Service – hạ tầng như một dịch vụ.........................9
3.2 PaaS - Platform as a Service – nền tảng như một dịch vụ....................................11
3.3 SaaS - Software as a service – phần mềm như một dịch vụ..................................12
3.4 MbaaS - Backend as a service..............................................................................13
3.5 Severless computing là gì.....................................................................................14
3.6 FaaS – Funnction as a service..............................................................................16
IV. Các mơ hình triển khai điện tốn đám mây..............................................................17
V. Những rủi ro về an tồn bảo mật ĐTĐM..................................................................18
VI. Kiến trúc lưu trữ đám mây Hadoop- HDFS.............................................................21
CHƯƠNG 2: Tìm hiểu một số cơng nghệ và giải pháp lưu trữ đám mây..................24
I. Một số kiến trúc lưu trữ: AFS, NFS, GFS, HDFS......................................................24
II. Hệ thống lưu trữ mạng đám mây DAS, NAS, SAN..................................................26
2.1. Direct Attached Storage ( DAS ):........................................................................26
2.2. Network Atteched Storage ( NAS ):....................................................................26
2.3. Storage Area Network ( SAN ):...........................................................................26
III. Ứng dụng lưu trữ đám mây với cá nhân..................................................................27


3.1. Google Drive.......................................................................................................27


3.2. Dropbox.com.......................................................................................................28
3.3. OneDrive.............................................................................................................29
3.4. Mega...................................................................................................................29
3.5. Box......................................................................................................................30
3.6. Mediafire.............................................................................................................31
3.7. iCloud.................................................................................................................. 33
IV. Ứng dụng lưu trữ đám mây với doanh nghiệp.........................................................33
V. Đồng bộ tài khoản truy cập Synchronous – Account Cloud......................................39
VI. Kho dữ liệu và an toàn dữ liệu đám mây Cloud Data Secure..................................40
CHƯƠNG 3: Demo ứng dụng lưu trữ đám mây Google Drive...................................42
KẾT LUẬN...................................................................................................................... 48
Tài liệu tham khảo.........................................................................................................48

2


CHƯƠNG 1: TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY
I. Điện toán đám mây
1.1 Khái niệm về điện toán đám mây
Điện tốn đám mây (Cloud Computing, hay cịn biết đến với tên gọi “Điện tốn
máy chủ ảo”) là mơ hình máy tính dựa trên nền tảng phát triển của Internet.
Điện tốn đám mây là sự nâng cấp từ mơ hình máy chủ mainframe sang mơ
hình cleint-server. Cụ thể, người dùng sẽ khơng cịn phải có các kiến thức về
chun mục để điều khiển các công nghệ, máy móc và cơ sở hạ tầng, mà các
chuyên gia trong “đám mây” của các hãng cung cấp sẽ giúp thực hiện điều đó.
Thuật ngữ "đám mây" ở đây là lối nói ẩn dụ chỉ mạng Internet (dựa vào cách
được bố trí của nó trong sơ đồ mạng máy tính) và như một liên tưởng về độ phức

tạp của các cơ sở hạ tầng chứa trong nó. Ở mơ hình điện tốn này, mọi khả năng
liên quan đến công nghệ thông tin đều được cung cấp dưới dạng các "dịch vụ", cho
phép người sử dụng truy cập các dịch vụ công nghệ từ một nhà cung cấp nào đó
"trong đám mây" mà không cần phải có các kiến thức, kinh nghiệm về công nghệ
đó, cũng như không cần quan tâm đến các cơ sở hạ tầng phục vụ cơng nghệ đó.

Hình 1. Sơ đồ điện toán đám mây
3


Tài nguyên, dữ liệu, phần mềm và các thông tin liên quan đều được chứa trên
các server (chính là các “đám mây”). Nói một cách đơn giản nhất “ứng dụng điện
tốn đám mây” chính là những ứng dụng trực tuyến trên Internet. Trình duyệt là nơi
ứng dụng hiện hữu và vận hành còn dữ liệu được lưu trữ và xử lý ở máy chủ của
nhà cung cấp ứng dụng đó.
1.2 Các đặc điểm chính của điện tốn đám mây
+ Tránh phí tồn cho khách hàng.
+ Độc lập thiết bị và vị trí: cho phép khách hang truy cập hệ thống từ bất kỳ nơi
nào hoặc bất kỳ thiết bị nào.
+ Nhiều người sử dụng: giúp chia sẻ tài nguyên và giá thành, cho phép tập chung
hóa cơ sở hạ tầng, tận dụng hiệu quả các hệ thống.
+ Phân phối theo nhu cầu sử dụng
+ Quản lý được hiệu suất
+ Tin cậy
+ Khả năng mở rộng
+ Cải thiện tài nguyên
1.3 Ưu nhược điểm của “ Điện toán đám mây”
* Ưu điểm:
+ Tốc độ xử lý nhanh, cung cấp cho người dùng những dịch vụ nhanh chóng và giá
thành rẻ dựa trên nền tảng cơ sở hạ tầng tập trung (đám mây).

+ Chi phí đầu tư ban đầu về cơ sở hạ tầng, máy móc và nguồn nhân lực của người
sử dụng điện toán đám mây được giảm đến mức thấp nhất.
+ Khơng cịn phụ thuộc vào thiết bị và vị trí địa lý, cho phép người dùng truy cập
và sử dụng hệ thống thơng qua trình duyệt web ở bất kỳ đâu và trên bất kỳ thiết bị
nào mà họ sử dụng (chẳng hạn là PC hoặc là điện thoại di động…).
+ Chia sẻ tài nguyên và chi phí trên một địa bàn rộng lớn, mang lại các lợi ích cho
người dùng.
+ Với độ tin cậy cao, không chỉ dành cho người dùng phổ thơng, điện tốn đám
mây cịn phù hợp với các yêu cầu cao và liên tục của các công ty kinh doanh và các
nghiên cứu khoa học. Tuy nhiên, một vài dịch vụ lớn của điện toán đám mây đôi
4


khi rơi vào trạng thái quá tải, khiến hoạt động bị ngưng trệ. Khi rơi vào trạng thái
này, người dùng không có khả năng để xử lý các sự cố mà phải nhờ vào các chuyên
gia từ “đám mây” tiến hành xử lý.
+ Khả năng mở rộng được, giúp cải thiện chất lượng các dịch vụ được cung cấp
trên “đám mây”.
+ Khả năng bảo mật được cải thiện do sự tập trung về dữ liệu.
+ Các ứng dụng của điện toán đám mây dễ dàng để sửa chữa và cải thiện về tính
năng bởi lẽ chúng khơng được cài đặt cố định trên một máy tính nào.
+ Tài nguyên sử dụng của điện tốn đám mây ln được quản lý và thống kê trên
từng khách hàng và ứng dụng, theo từng ngày, từng tuần, từng tháng. Điều này đảm
bảo cho việc định lượng giá cả của mỗi dịch vụ do điện toán đám mây cung cấp để
người dùng có thể lựa chọn phù hợp.
* Nhược điểm:
+ Tính riêng tư: Các thông tin người dùng và dữ liệu được chứa trên điện toán đám
mây có đảm bảo được riêng tư, và liệu các thơng tin đó có bị sử dụng vì một mục
đích nào khác
+ Tính sẵn dùng: Liệu các dịch vụ đám mây có bị “treo” bất ngờ, khiến cho người

dùng không thể truy cập các dịch vụ và dữ liệu của mình trong những khoảng thời
gian nào đó khiến ảnh hưởng đến công việc.
+ Mất dữ liệu: Một vài dịch vụ lưu trữ dữ liệu trực tuyến trên đám mây bất ngờ
ngừng hoạt động hoặc không tiếp tục cung cấp dịch vụ, khiến cho người dùng phải
sao lưu dữ liệu của họ từ “đám mây” về máy tính cá nhân. Điều này sẽ mất nhiều
thời gian. Thậm chí một vài trường hợp, vì một lý do nào đó, dữ liệu người dùng bị
mất và không thể phục hồi được.
+ Tính di động của dữ liệu và quyền sở hữu: Một câu hỏi đặt ra, liệu người dùng có
thể chia sẻ dữ liệu từ dịch vụ đám mây này sang dịch vụ của đám mây khác? Hoặc
trong trường hợp không muốn tiếp tục sử dụng dịch vụ cung cấp từ đám mây, liệu
người dùng có thể sao lưu toàn bộ dữ liệu của họ từ đám mây? Và làm cách nào để
người dùng có thể chắc chắn rằng các dịch vụ đám mây sẽ khơng hủy tồn bộ dữ
liệu của họ trong trường hợp dịch vụ ngừng hoạt động.
+ Khả năng bảo mật: Vấn đề tập trung dữ liệu trên các “đám mây” là cách thức
hiệu quả để tăng cường bảo mật, nhưng mặt khác cũng lại chính là mối lo của
5


người sử dụng dịch vụ của điện toán đám mây. Bởi lẽ một khi các đám mây bị tấn
công hoặc đột nhập, toàn bộ dữ liệu sẽ bị chiếm dụng. Tuy nhiên, đây không thực
sự là vấn đề của riêng “điện tốn đám mây”, bởi lẽ tấn cơng đánh cắp dữ liệu là vấn
đề gặp phải trên bất kỳ môi trường nào, ngay cả trên các máy tính cá nhân.
II. Các nhà cung cấp dịch vụ Cloud Coputing phổ biến hiện nay
2.1. Microsoft (Hay còn gọi là Microsoft Azure)
Microsoft đã trở thành trung tâm của thế giới công nghệ trong nhiều năm
nay. Mặc dù Microsoft bước vào cuộc chiến đám mây tương đối muộn, nhưng sự
tham gia sâu sắc của nó vào tất cả các tầng của đám mây đã đẩy cơng ty lên đỉnh
cao. Ngồi ra, cam kết vơ song của nó là phát triển và hỗ trợ khách hàng triển khai
Blockchain, Machine Learning (ML) và Trí tuệ nhân tạo (AI) trong môi trường sản
xuất sáng tạo, cũng như doanh thu dẫn đầu thị trường, cho phép Microsoft giữ vị trí

đứng đầu đống.
Nền tảng Azure, dịch vụ đám mây cơng cộng của cơng ty, đã đóng một vai
trị quan trọng trong việc thiết lập thương. Hoạt động kinh doanh của Microsoft
được tổ chức tốt thành ba phân khúc: đám mây thông minh (Windows Server OS,
Azure và SQL Server), máy tính cá nhân (Xbox, Surface...) và các quy trình kinh
doanh bao gồm Microsoft Office và Dynamics.
2.2 Google Cloud Platform (Hay còn gọi là GCP)
Khi Alphabet ra mắt Google Cloud Platform, gã khổng lồ công nghệ đã chọn
nhắm mục tiêu vào các doanh nghiệp vừa và nhỏ hơn là theo đuổi những người
chơi đã thành lập, nhưng giờ đây tự hào về các khách hàng lớn như eBay, Snap và
HSBC, mặc dù sau này cũng sử dụng Azure và AWS. Sau khi Google công bố thu
nhập quý hai vào giữa năm nay, các nhà đầu tư hiện đang chú ý đáng kể đến tiến
trình đã đạt được trong kinh doanh điện tốn đám mây của cơng ty.
Mặc dù cơng ty đã bị Microsoft, IBM và Amazon khuất phục về thị phần,
nền tảng Google Cloud gần đây đã thực hiện một số động thái để tăng tồn bộ
khơng gian địa chỉ của mình và cung cấp một sự khác biệt tiềm năng từ các dịch vụ
Cơ sở hạ tầng khác như Dịch vụ (IaaS). Điểm mấu chốt là Nền tảng đám mây của
6


Google bị lôi kéo vào một trận chiến khốc liệt với các đối tác của nó, bao gồm
AWS và Microsoft Azure.
2.3 VMware Cloud
Sau khi trở thành một công ty ảo hóa được thành lập, VMware bước vào không
gian đám mây với nền tảng đám mây sáng tạo của mình, cho phép khách hàng cung
cấp quyền truy cập an toàn vào dữ liệu và ứng dụng cho người dùng cuối của họ từ
nhiều thiết bị. VMware gần đây đã hợp tác với AWS, tập đồn điện tốn đám mây
khổng lồ trực tuyến, để cung cấp cho khách hàng một giải pháp tích hợp hơn.
2.4. Oracle
Oracle Corp, một nhà cung cấp phần mềm cơ sở dữ liệu hàng đầu, đã tiết lộ

chương trình đầy tham vọng của mình trong lĩnh vực điện tốn đám mây vào năm
2015. Cơng ty đã cơng bố kế hoạch của mình trong sự kiện Oracle OpenWorld để
mở rộng danh mục đầu tư của mình trong các dịch vụ đám mây phân tích, ứng
dụng đám mây, IaaS và dịch vụ tích hợp đám mây. Kể từ đó, Oracle đã khơng nhìn
lại và phát triển với một tốc độ chưa từng thấy.
Oracle Corp đã tương đối muộn trong cuộc đua đám mây, cho phép những
người mới nổi như Salesforce.com giành được thị phần đáng kể với phần mềm
được phân phối qua internet và kết quả là đã gặp khó khăn. Tuy nhiên, bây giờ có
vẻ như Oracle cuối cùng đã tìm ra bức tranh lớn hơn, đang ở chế độ đổi mới tích
cực và là một sự đánh cược chắc chắn cho tương lai.
2.5. Amazon Web Service (Hay còn gọi là AWS)
Amazon Inc. là con chim đầu tiên bắt sâu với Amazon Web Service (AWS) và
đã tận dụng các doanh nghiệp lớn và nhỏ đang tìm cách chuyển hoạt động từ các
trung tâm dữ liệu sang đám mây. Dịch vụ web của Amazon ln có lợi ích từ một
khởi đầu lớn trong thị trường điện toán đám mây. Hơn một thập kỷ trước và rất lâu
trước khi sự cạnh tranh trong thế giới đám mây bắt đầu, AWS bắt đầu cung cấp các
giải pháp cơ sở hạ tầng đám mây như lưu trữ và tính tốn.
Rõ ràng, sự khởi đầu đó tiếp tục phục vụ họ tốt và giúp họ duy trì lợi thế thị phần
lớn, bất chấp sự hiện diện của các thương hiệu khác trong không gian này bao gồm
Microsoft và Google (và có, thậm chí cả Alibaba và Oracle). Sự tiến bộ đã tiếp tục
không bị cản trở trong khi được hỗ trợ bởi những đổi mới nhất quán.
7


2.6. FPT Smart Cloud
FPT Cloud là nền tảng Điện toán Đám mây thế hệ mới, được xây dựng trên
nền tảng ảo hoá bản quyền VMWare và OpenStack, vận hành trong Trung tâm dữ
liệu Uptime Tier III với kết nối liền mạch và kiến trúc tiên tiến, kết nối trực tiếp đến
hệ thống Public Cloud từ các hãng lớn (Microsoft, AWS, Google), giúp cung cấp đa
dạng các sản phẩm, giải pháp, tiện ích, phục vụ mọi nhu cầu của khách hàng.

Lợi thế bản địa là điều không thể không nhắc đến, việc sử dụng dịch vụ Cloud
từ một nhà cung cấp uy tín bản địa sẽ giúp doanh nghiệp ln đảm bảo tuân thủ quy
định và pháp luật Nhà nước về lưu trữ dữ liệu, và được hỗ trợ kịp thời, liên tục bởi
đội ngũ chuyên gia chuẩn quốc tế.
III. Mô hình dịch vụ trong điện tốn đá mây
3.1 IaaS - Infrastructure as a Service – hạ tầng như một dịch vụ
IaaS là tầng dịch vụ thấp nhất trong mơ hình dịch vụ của điện tốn đám mây.
Nhưng nó cũng chính là nền tảng để xây dựng lên hai mơ hình dịch vụ lớp cao hơn.
IaaS có khả năng cung cấp cho người dùng cuối các tài nguyên máy tính như: máy
chủ ảo, hệ thống mạng, hệ thống lưu trữ, và rất nhiều các chức năng khác nữa của
tài nguyên máy tính, tại đó người dùng cuối có thể triển khai và chạy các phần
mềm tùy ý, nó bao gồm cả hệ điều hành và các ứng dụng. Và người dùng cuối sẽ
không cần phải quan tâm hay quản lý hạ tầng bên dưới của điện toán đám mây (là
các máy chủ vật lý được xây dựng thành một khối tài nguyên khổng lồ), họ chỉ
quản lý phần bên trên đó là hệ điều hành, lưu trữ những gì trên máy chủ ảo đó và
triển khai ứng dụng của họ ra sao. Đây là mơ hình dịch vụ cơ bản nhất và cũng phổ
biến nhất với việc cung cấp hạ tầng tính tốn: máy ảo, và các tài ngun máy tính
khác cho người dùng. Các tài nguyên này được cung cấp dưới dạng các dịch vụ
trực tuyến và nó cho người dùng trải nghiệm khơng khác gì so với việc sử dụng các
máy chủ vật lý truyền thống.
IaaS cung cấp các tài nguyên máy tính tương tự như những tài nguyên máy
tính vật lý thơng qua cơng nghệ ảo hóa. Các phần mềm quản lý ảo hóa (được gọi là
các hypervisor) như Xen, KVM, VMware thực hiện ảo hóa các tài nguyên vật lý
như RAM, CPU, Disk … thành các tài nguyên ảo, tạo ra các máy chủ ảo cung cấp
cho người dùng. Ảo hóa chính là nền tảng căn bản để tạo nên đám mây IaaS.
Nhưng chỉ riêng ảo hóa không thôi sẽ không thể tạo thành thứ được gọi là điện tốn
đám mây, cịn rất nhiều các cơng nghệ khác nữa như: Linux namespace, Linux
8



Cgroup, Linux Bridge, Openvswitch…. cung cấp thêm các nguồn tài nguyên máy
tính khác như: đĩa cài hệ điều hành, ổ đĩa gắn thêm vào máy chủ ảo, tường lửa, cân
bằng tải, Virtual Local area network (VLAN).
 Ví dụ : Dịch vụ Web của Amazon

-

Ở đâu có Đám mây, Amazon không cịn xa nữa và cơng ty là đối thủ cạnh tranh
hàng đầu cho Azure của Microsoft. Thương hiệu có khả năng nhận dạng cao
với Đám mây công cộng và IaaS nói riêng. Các dịch vụ của nó bao gồm toàn bộ
quang phổ của Đám mây.

Amazon Web Services (AWS) rất dễ sử dụng và đã được biết đến là bao gồm một
loạt các công cụ. Hơn hết, nó hầu như vô hạn nhưng mang lại cho khách hàng lợi
thế về tính linh hoạt và khả năng chi trả, những yếu tố rất quan trọng khi doanh
nghiệp mở rộng quy mô.
Tuy nhiên, nó có một vài nhược điểm và một nhược điểm đặc biệt lớn là liên quan
đến giới hạn EC2. Điều này có thể cản trở hoạt động kinh doanh, tùy thuộc vào
cách bạn sử dụng dịch vụ. Nguồn lực có thể bị hạn chế theo khu vực, có thể dẫn
đến tắc nghẽn ngoài ý muốn.

9


3.2 PaaS - Platform as a Service – nền tảng như một dịch vụ
PaaS có khả năng cung cấp cho người dùng khả năng triển khai các ứng dụng
tự tạo của họ hay những ứng dụng cần thiết lên hạ tầng điện tốn đám mây sử dụng
các ngơn ngữ lập trình, các thư viện, dịch vụ và cơng cụ được hỗ trợ bởi nhà cung
cấp PaaS. Đến lớp này của điện tốn đám mây, người dùng sẽ khơng cần phải quản
lý và điều khiển hạ tầng đám mây bao gồm: mạng, máy chủ ảo, hệ điều hành, lưu

trữ mà chỉ cần kiểm sốt việc triển khai ứng dụng của mình lên nền tảng đã có sẵn.
Các nhà cung cấp PaaS đưa đến cho những người lập trình ứng dụng mơi
trường để chạy ứng dụng đó. Nhà cung cấp sẽ phát triển các bộ công cụ và các
chuẩn cho phát triển các ứng dụng từ người dùng. Trong mơ hình dịch vụ PaaS, nhà
cung cấp đám mây sẽ đưa đến một nền tảng đám mây, nó bao gồm hệ điều hành,
môi trường để chạy các ngơn ngữ lập trình, cơ sở dữ liệu và cả các máy chủ web.
Các nhà phát triền ứng dụng có thể phát triển và chạy các giải pháp phần mềm của
họ trên nền tảng đám mây đó mà không mất tiền và công sức cho việc mua và quản
lý lớp phần cứng vật lý và lớp hệ điều hành.
Một số nhà cung cấp PaaS lớn như: Microsoft Azure và Google App Engine,
giúp cho tài nguyên máy tính và lưu trữ bên dưới được mở rộng tự động và không
giới hạn để phù hợp với nhu cầu của các ứng dụng đó, người dùng sẽ không phải
nâng cấp hệ thống một cách thủ cơng.
Ví dụ: Microsoft Azure

10


Microsoft Azure là một môi trường triển khai và phát triển sử dụng khái niệm PaaS.
Do bản chất của nó, Azure có thể hỡ trợ tồn bộ vịng đời phát triển ứng dụng web,
từ xây dựng đến triển khai và sau đó.
Azure cũng hỗ trợ một loạt các công cụ, ngôn ngữ và khuôn khổ. Các nhà phát triển
sử dụng nó có thể truy cập hơn một trăm dịch vụ liên quan đến dịch vụ điện toán
đám mây của Microsoft. Do kích thước tuyệt đối của Azure, nó bao gồm cả ba mơ
hình Đám mây - SaaS, PaaS và IaaS.
3.3 SaaS - Software as a service – phần mềm như một dịch vụ
SaaS có khả năng cung cấp cho người dùng các ứng dụng của nhà cung cấp
được xây dựng trên hạ tầng điện toán đám mây. Các ứng dụng có thể được truy cập
từ nhiều các thiết bị người dùng khác nhau từ các giao diện đơn giản như giao diện
web, điện thoại, laptop…Đây là lớp mơ hình dịch vụ cao nhất trong điện toán đám

mây. Tại lớp này, người dùng sẽ khơng phải quản lý hầu như tồn bộ mọi thứ: từ
mạng, máy chủ ảo, hệ điều hành, lưu trữ, và cả môi trường để chạy ứng dụng.
Người dùng chỉ cần biết họ cần ứng dụng gì và sử dụng nó.
Trong mơ hình SaaS, người dùng có quyền truy cập vào các phần mềm và cơ
sở dữ liệu. Nhà cung cấp đám mây quản lý hạ tầng và nền tảng để chạy các phần
mềm đó. SaaS đôi khi được nhắc đến như là mơ hình “phần mềm theo nhu cầu”.
Các phần mềm ứng dụng như: Email, virtual desktop… đều có thể được cung cấp
dưới dạng dịch vụ, được xây dựng và cài đặt trên hạ tầng và nền tảng của điện toán
đám mây. Như vậy, về cơ bản điện toán đám mây đã cung cấp các dịch vụ đầy đủ
cho các nhu cầu của người dùng. Điện toán đám mây đã thay đổi cơ bản cách con
người sử dụng công nghệ số. Biến việc sử dụng riêng lẻ thành các dịch vụ tập trung
cho phép giảm chi phí giá thành và nâng cao sự tiện dụng, an toàn khi giải phóng
người dùng khỏi việc đầu tư và bảo trì một hệ thống độc lập đầy đủ. Chỉ với một
thiết bị cơ bản với cấu hình khơng cao như: điện thoại, máy tính thơng thường có
kết nối mạng, người dùng hoàn toàn có thể tương tác và thực hiện các cơng việc ở
mức độ phức tạp, địi hỏi nhiều tài ngun với chi phí hợp lí.
WebEx thường được cơng nhận nhiều hơn trong việc sử dụng kinh doanh,
mặc dù dường như không nhiều người biết rằng nó có một tùy chọn miễn phí tốt
cho mục đích sử dụng cá nhân. Là một công ty của Cisco, nó cung cấp một loạt các
ứng dụng truyền thông được phân phối bằng mơ hình SaaS.
11


Trong số các tính năng của WebEx là gọi điện video và hội nghị, quản lý đào tạo
trực tuyến, quản lý hỗ trợ từ xa, v.v. Trên thực tế, tôi đã sử dụng nó trước khi có thể
chứng minh tính linh hoạt mà WebEx có thể mang lại cho các tổ chức ở hầu hết
mọi quy mô - nếu được sử dụng đúng cách.
3.4 MbaaS - Backend as a service
MbaaS còn được biết đến với cái tên Backend as a service (Baas), là một mơ
hình hỡ trợ cho việc phát triển ứng dụng trên nền tảng di động hoặc web bằng cách

liên kết các ứng dụng với các đám mấy lưu trữ ở backend (backend cloud storage)
và các giao diện lập trình ứng dụng (APIs) được cung cấp bởi backend. MBaas
cung cấp các dịch vụ nổi bật như: quản lý người dùng, push notification, tích hợp
với mạng xã hội, dịch vụ dựa trên vị trí... Những dịch vụ này được cung cấp thông
qua việc sử dụng các bộ công cụ phát triển phần mềm (SDKs) và giao diện lập trình
ứng dụng (APIs). MBaas gần đây có mối quan hệ mật thiết với sự phát triển của
lĩnh vực điện toán đám mây. Mặc dù đây được xem như một lĩnh vực còn non trẻ
nhưng hứa hẹn sẽ có những bước phát triển vượt bậc nhất là đối với khối khách
hàng doanh nghiệp.
Bằng cách sử dụng MBaas, các nhà sản xuất và phát triển ứng dụng có thể
tiết kiệm được nhiều thời gian xây dựng hệ thống và các chi phí vận hành. Thông
qua MBaas các dịch vụ ứng dụng như : push notify, tích hợp mạng xã hội, message
& chat function… được cung cấp sẵn bằng các bộ SDK và API đồng nhất, nhà phát
triển ứng dụng thay vì phải tự mình xây dựng các hệ thống này từ đầu cho ứng
dụng của mình thì bây giờ có thể sự dụng các dịch vụ này thông qua các hệ thống
MBaas. Nhờ đó quá trình phát triển ứng dụng có thể được tiết kiệm thời gian hơn,
qua đó cũng tiết kiệm được chi phí sản xuất, nâng cao hiệu quả dự án. Bên cạnh đó
MBaas cũng cung cấp các phương tiện để quản lý dữ liệu ở backend cho các dịch
vụ sử dụng trong ứng dụng.
Push notification: tính năng này hiện có mặt trong nhiều ứng dụng trên nền
tảng di động hiện nay. Khi nhà cung cấp dịch vụ cho ra đời một sản phẩm mới
hoặc có một chương trình khuyến mãi mới áp dụng cho một nhóm khách hàng, các
thông tin quảng bá này có thể được chuyển tới khách hàng thơng qua hình thức
push notification.
Dịch vụ quản lý người dùng: Cho phép chứng thực người dùng từ ứng dụng
Android, iOS và JavaScript SDK. Chứng thực người dùng có thể thực hiện thông
qua tài khoản: Email, Facebook, Twitter, GitHub, Google và hình thức chứng thực
nặc danh. Nhà phát triển ứng dụng chỉ cần xử lý nghiệp vụ đăng nhập hệ thống ở
12



phía client bằng cách tương tác với các API của MBaas, điều này giúp họ tiết kiệm
thời gian và công sức với việc phát triển hệ thống backend.
3.5 Severless computing là gì
Serverless là mơi trường, nền tảng thực thi ứng dụng và dịch vụ mà không
phải quan tâm đến máy chủ. Ứng dụng serverless không cần phải quan tâm việc
phân bổ, quản lý tài nguyên của hệ điều hành, và bỏ qua các vấn đề về nâng cấp và
bảo mật. Với khái niệm là chỉ cần tập trung phát triển sản phẩm, việc còn lại về vận
hành sẽ để nền tảng này đảm nhiệm.
Điều quan trọng và khác biệt nhất trong serverless là bạn chỉ trả tiền khi và
chỉ những phần bạn sử dụng. Giả sử bạn có một máy chủ ảo, thì thường sẽ được
tính tiền trọn gói bao gồm thời gian chạy 24/7 trong 1 tháng, CPU và RAM, băng
thông, lưu trữ. Bạn vẫn sẽ phải trả tiền hàng tháng đều đặn cho dù cái máy chủ ảo
đó khơng chạy, hoặc chỉ sử dụng 5~10% cơng suất thì bạn vẫn phải trả trọn gói.
Hiểu một cách nôm na, thì serverless như gói cước điện thoại được tính theo block
giây, gọi bao nhiêu tính tiền bấy nhiêu, cịn máy chủ ảo thường thì phải trả tiền thuê
bao hàng tháng dù có phải sử dụng hay không.
+ Ưu điểm: Xây dụng ứng dụng serverless đồng nghĩa với việc bạn chỉ tập trung
vào sản phẩm cốt lõi thay vì phải lo lắng về việc quản lý và vận hành nhiều máy
chủ hoặc thời gian chạy, dù trên nền tảng đám mây hay tự xây dựng hệ thống máy
chủ. Sự cắt giảm công sức tổng thể này sẽ giúp cho các nhà phát triển dành thời
gian và năng lượng để tập trung vào việc xây dựng các sản phẩm tuyệt vời có quy
mô linh hoạt và ổn định cao.
- Không cần quản lý máy chủ: Bạn sẽ không cần cung cấp hay duy trì bất kỳ
máy chủ nào. Sẽ khơng cần phần mềm hoặc thời gian chạy để cài đặt, nâng cấp
hoặc quản trị.
- Thay đổi quy mô một cách linh hoạt: Ứng dụng của bạn sẽ có khả năng thay
đổi quy mô tự động hoặc bằng cách điều chỉnh dung lượng thơng qua việc
chuyển đổi đơn vị sử dụng (ví dụ: thơng lượng, bộ nhớ) thay vì với máy chủ
độc lập thì sẽ phức tạp hơn.

- Độ sẵn sàng cao: Ứng dụng serverless có độ sẵn sàng tích hợp và dung sai cao.
Bạn sẽ không cần tạo kiến trúc cho các khả năng này do các dịch vụ chạy ứng
dụng đã cung cấp cho ứng dụng theo mặc định. Ngoài ra, có để chọn trung tâm
dữ liệu (một hoặc nhiều nơi) để triển khai sản phẩm một cách dễ dàng.

13


- Tiết kiệm chi phí: chi phí gần như bằng 0 sau khi triển khai nếu bạn không có
request nào (hoặc khơng có hành động gọi hàm), cịn sử dụng bao nhiêu thì tính
tiền bấy nhiêu.
+ Nhược điểm
- Độ trễ: Hiệu suất có thể là một vấn đề, chính bản thân mơ hình này có thể gây
ra độ trễ lớn hơn trong q trình các nguồn tài ngun điện tốn phản ứng lại
với lệnh của các ứng dụng. Nếu khách hàng yêu cầu hiệu suất cao thì việc sử
dụng các máy chủ ảo được phân bổ sẽ là một lựa chọn ưu việt hơn.
- Gỡ lỗi (Debug): Công việc giám sát và gỡ lỗi của serverless computing cũng
khá khó khăn. Việc bạn không sử dụng một nguồn tài nguyên máy chủ thống
nhất làm cho cả hai hoạt động này gặp nhiều trở ngại. (Tin tốt là công cụ này sẽ
dần được để cải thiện xử lý giám sát và gỡ lỗi tốt hơn trong môi trường không
máy chủ.)
- Giới hạn về bộ nhớ, thời gian: các nhà cung cấp đều giới hạn tài nguyên ở các
mức cố định về bộ nhớ và thời gian thực thi (timeout). Giả sử timeout tối đa là
5 phút, nếu bạn chạy quá 5 phút, quá trình thực thi sẽ bị ngắt. Về bộ nhớ, thì sẽ
thiết lập mỡi mức khác nhau tuỳ nhà cung cấp, AWS có memory là 3008MB (sẽ
được cấp CPU cao tương ứng), nếu ứng dụng yêu cầu bộ nhớ lớn thì sẽ khơng
đáp ứng được. Liên quan đến vấn đề bộ nhớ này, thì cũng cần phải lưu tâm lúc
lập trình nên tối ưu tốt, để tiết kiệm chi phí.
- Phụ thuộc nhà cung cấp: bạn không thể muốn chạy phiên bản của phần mềm,
nền tảng chính xác như bạn muốn. Ví dụ Nodejs bạn cần 10.x nhưng nhà cung

cấp chỉ hỡ trợ đến 8.x, thì bạn sẽ khơng sử dụng được nền tảng này. Như vậy,
trước khi sử dụng, bạn cần cân nhắc các nền tảng được hỗ trợ.
- Chi phí ngầm: tuỳ nhà cung cấp có tính hay khơng, nhưng cơ bản là sẽ phát
sinh chi phí lưu trữ mã nguồn, băng thơng, và chi phí về lưu trữ dữ liệu (tuỳ
ứng dụng có sử dụng hay không, ví dụ DynamoDB, RDMS … thì sẽ được tính
riêng). Mặc dù, tuy không nhiều nhưng nếu không tối ưu, các phần chi phí
ngầm sẽ cịn cao hơn cả chi phí cho serverless.
- Thời gian để nghiên cứu: trước đây bạn phải học cách sử dụng, quản lý máy
chủ thì giờ đây bạn cũng cần thời gian để học để quản lý các tài nguyên trong
serverless, mặc dù ko phải quá khó như quản lý máy chủ, nhưng khơng thể
khơng tính. Ví dụ bạn sẽ mất thời gian để hiểu về cách sử
dụng CloudFormation, IAM policies, quản lý cấu hình về stage, region,
memory của Functions…
14


 Ví dụ : AWS Lambda: nói về thị phần cung cấp hạ tầng cloud hiện nay thì
AWS vấn đang dẫn đầu và họ cũng đưa ra dịch Lambda để người dùng có thể
sử dụng và tạo ra các functions trên mơ hình serverless. Khi kết hợp với các
dịch vụ khác như API Gateway, S3,.. thì có thể tạo được một API server hay
một hệ thống tự động xử lí khi có file upload lên S3. AWS Lambda hỗ trợ khá
nhiều ngôn ngữ như Node.js, Java, C#, Python,…
 Azure Functions: hàng của Microsoft, hỗ trợ C#, JavaScript, F#, Python,
Batch, PHP, PowerShell.
3.6 FaaS – Funnction as a service
- FaaS là một dịch vụ backend của Serverless, cho khả năng viết hoặc cập nhật
code một cách nhanh chóng, mà sau có đó có thể chạy để phản hồi lại một sự kiện
nào đó. Điều này giúp chúng ta dễ dàng mở rộng về quy mô code cũng như tối ưu
hóa về chi phí để triển khai microservices.
- Giải thích theo một cách cụ thể hơn: Thay vì triển khai theo mơ hình client-server,

chúng ta cần thuê server và deploy lên trên đó, ở đây với FaaS, chúng ta deploy
code dưới dạng các Function (Function as a Service) và các function này có thể gọi
dưới dạng RestAPI. -Ưu điểm khi sử dụng Faas .
- Tốc độ – Improved developer velocity: Rõ ràng mà nói, thay vì ngồi lị mị lo
code, rồi build, rồi run. Chưa hết, nếu lên server test thì cịn deploy nữa. Thật là q
nhiều cơng đoạn, q trình nhiêu khê.
- Với Functions as a service, dev giờ chỉ lo code. Nhanh hơn rất nhiều!
- Với FaaS, lập trình viên có thể có thểm thời gian để viết về logic của ứng dụng,
bớt thời gian lo lắng về servers và deploys. Điều đó cũng đồng nghĩa với việc
development nhanh hơn.
- Khả năng mở rộng – Scability: Thay vì phải lo lắng phía server handle ra sao cho
hàng triệu request. Với Functions as a service, dev giờ chỉ focus vào thực thi
function, cịn scale ra sao đã có phía server lo.

15


IV. Các mơ hình triển khai điện tốn đám mây
Mơ hình Private Cloud (Đám mây riêng)
Private Cloud (hay Đám mây riêng) là những dịch vụ được cung cấp qua mạng nội
bộ riêng biệt. Các doanh nghiệp có thể trực tiếp quản lý “đám mây” này và sử dụng
nội bộ thay vì cơng khai hoặc Internet. Private Cloud cung cấp 2 loại hình dịch vụ
là Iaas và PaaS.
Lợi ích của Private Cloud
Private Cloud có các lợi ích tương tự Public Cloud nhưng có chứa các đặc tính “tự
phục vụ” riêng tư hơn. Hỡ trợ tùy chỉnh và kiểm sốt tài ngun chuyên dùng trên
cơ sở hạ tầng máy tính được lưu trữ tại chỗ. Cung cấp mức độ bảo mật và sự riêng
tư cao nhờ hệ thống tường lửa và lưu trữ nội bộ. Hạn chế của Private Cloud là bộ
phận CNTT của công ty sẽ phải chịu trách nhiệm về chi phí vận hành và việc quản
lý Đám Mây.

Mơ hình Public Cloud (Đám mây công cộng)
Public Cloud hay Đám mây công cộng là các dịch vụ được bên thứ 3 cung cấp cho
người dùng qua mạng Internet. Public Cloud được xây dựng nhằm phục vụ cơng
cộng (public). Vì vậy mơ hình này khơng bị giới hạn đối tượng sử dụng. Có hai
hình thức sử dụng dịch vụ Public Cloud là miễn phí hoặc trả phí. Các dịch vụ trả
phí thường áp dụng mơ hình pay-per-usage (trả phí theo lưu lượng sử dụng).
Lợi ích của Public Cloud
Khả năng mở rộng theo nhu cầu người dùng nhờ kho tài nguyên rộng lớn. Số lượng
máy chủ và mạng tham gia vào quá trình tạo ra Public Cloud là vơ hạn. Vì thế, nếu
một thành phần nào đó bị lỡi thì hồn tồn khơng ảnh hưởng đến các thành phần
khác.Nền tảng để tạo ra các dịch vụ đám mây cơng cộng là Internet. Vì thế, Public
Cloud khơng bị giới hạn về vị trí, địa điểm. Bạn có thể kết nối với Public Cloud từ
bất kỳ đâu. Mức chi phí tốt, người dùng chỉ phải trả tiền cho những gì họ thực sự
dùng. Phục vụ được nhiều người dùng hơn. Tiết kiệm hệ thống máy chủ, điện năng
và nhân lực
Tuy nhiên, Public Cloud vẫn có một số hạn chế như doanh nghiệp sẽ cần phụ thuộc
nhiều vào nhà cung cấp. Việc lưu trữ các văn bản, thông tin nội bộ cũng gặp khó
khăn hơn do tính mở của mơ hình này
16


Hybrid Cloud (Đám mây lai)
Đúng như tên gọi, Hybrid Cloud hay Đám mây kết hợp là sự kết hợp giữa Public
Cloud và Private Cloud. Điều này cho phép Hybrid Cloud khai thác lợi ích của cả
hai mơ hình này để tối ưu cho người dùng. Doanh nghiệp sẽ tạo ra các Hybrid
Cloud và chia quyền quản lý với nhà cung cấp Public Cloud. Người sử dụng có thể
sử dụng đồng thời các dịch vụ của nhà cung cấp và dịch vụ riêng của doanh
nghiệp.
Lợi ích của Hybrid Cloud
Doanh nghiệp có thể sử dụng đồng thời nhiều dịch vụ

Cho phép doanh nghiệp triển khai mơ hình tại chỡ
Có lợi cho các cơng việc có tính đột biến
Sử dụng Hybrid Cloud để xử lý các dữ liệu lớn (Big Data)
Chỉ phải thanh tốn cho thời gian sử dụng thêm
Tuy nhiên, mơ hình này cũng vấp phải khó khăn trong việc quản lý và tiêu tốn
nhiều chi phí cho việc triển khai và duy trì.

V. Những rủi ro về an tồn bảo mật ĐTĐM
- Tài sản trí tuệ bị mất hoặc bị đánh cắp:
Các công ty ngày càng có xu hướng lưu trữ nhiều thông tin và dữ liệu nhạy cảm
trong đám mây. Một phân tích của Skyhigh cho thấy 21% tệp được tải lên dịch vụ
chia sẻ tệp dựa trên đám mây đều chứa dữ liệu nhạy cảm bao gồm cả những dữ liệu
có quyền sở hữu trí tuệ. Khi một dịch vụ đám mây bị vi phạm, tội phạm mạng sẽ
chiếm được quyền truy cập vào những dữ liệu nhạy cảm này. Kể cả khi không có vi
phạm xảy ra, một số dịch vụ vẫn có thể gây ra rủi ro cho dữ liệu nếu quyền sở hữu
dữ liệu được tải lên.
Vi phạm điều lệ và quy định
Ngày nay, hầu hết các cơng ty hoạt động và chịu sự kiểm sốt thông tin theo các
quy định tương ứng, như HIPAA đối với các thông tin về sức khỏe, FERPA đối với
hồ sơ sinh viên, và nhiều quy định khác của chính phủ và ngành. Theo các bộ quy
định này, các doanh nghiệp phải biết dữ liệu của họ ở đâu, ai có thể truy cập dữ liệu
17


đó và làm thế nào để bảo vệ các dữ liệu này. BYOC (Bring Your Own Cloud)
thường vi phạm mỗi một trong những quy định này, khiến doanh nghiệp rơi vào
tình trạng khơng tn thủ quy định về bảo mật, dẫn đến những hậu quả nghiêm
trọng.
Mất quyền kiểm soát hành động của người dùng cuối
Khơng kiểm sốt chặt chẽ được việc sử dụng dịch vụ đám mây của nhân viên sẽ

gây ra những sự cố không đáng có cho doanh nghiệp. Chẳng hạn, một nhân viên
bán hàng sắp nghỉ việc có thể tải xuống tất cả các báo cáo về những thông tin quan
trọng của khách hàng, sau đó lưu trữ những dữ liệu này tại đám mây cá nhân và sử
dụng những thông tin đó bán cho đối thủ cạnh tranh hoặc sử dụng cho công ty mới
chuyển tới. Đây là một trong những mối đe dọa nội bộ phổ biến đang diễn ra ở hầu
hết các doanh nghiệp hiện nay.
Nhiễm phần mềm độc hại gây ra những cuộc tấn cơng có chủ đích
Các dịch vụ đám mây có thể được sử dụng như một vectơ cho việc lọc dữ liệu.
Skyhigh đã phát hiện ra một kỹ thuật lọc dữ liệu mới, theo đó những kẻ tấn công đã
mã hóa dữ liệu nhạy cảm vào các tệp video và tải chúng lên YouTube. Bên cạnh đó
còn có một phần mềm độc hại giúp lọc dữ liệu nhạy cảm thông qua tài khoản
Twitter 140 ký tự một lần. Các biến thể phần mềm độc hại Dyre giúp tội phạm
mạng sử dụng các dịch vụ chia sẻ tệp để phân phối phần mềm độc hại đến các mục
tiêu nhằm tiến hành các cuộc tấn công lừa đảo (phishing attacks).
Vi phạm hợp đồng với khách hàng hoặc đối tác kinh doanh
Hợp đồng giữa các bên kinh doanh thường hạn chế cách sử dụng dữ liệu và người
được phép truy cập. Khi nhân viên di chuyển những dữ liệu vào đám mây mà
không được phép, hợp đồng kinh doanh có thể bị vi phạm dẫn đến các hành động
pháp lý sau đó.

Giảm niềm tin của khách hàng
Vi phạm dữ liệu chắc chắn ảnh hưởng nghiêm trọng đến niềm tin của khách hàng.
Trong một vụ vi phạm dữ liệu thẻ thanh toán lớn chưa từng thấy, tội phạm mạng đã
đánh cắp hơn 40 triệu số thẻ tín dụng và thẻ ghi nợ của khách hàng từ Target. Vi
phạm khiến khách hàng tránh xa các cửa hàng Target và dẫn đến việc kinh doanh
18


của công ty xuống dốc không phanh gây nên sự tụt dốc thảm hại với doanh thu của
công ty.

Vi phạm dữ liệu yêu cầu phải được thông cáo và thông báo cho nạn nhân
Nếu dữ liệu nhạy cảm được đưa vào đám mây và vi phạm xảy ra, công ty có thể
được yêu cầu phải tiết lộ vi phạm và gửi thơng báo cho các nạn nhân của mình như
đối với quy định HIPAA và HITECH. Công ty có thể đối mặt với các trừng phạt
của cơ quan pháp lý và có nguy cơ bị khởi kiện bởi những nạn nhân bị ảnh hưởng.
Nếu khách hàng nghi ngờ rằng dữ liệu của họ khơng được bảo vệ hồn tồn bởi các
kiểm soát bảo mật cấp doanh nghiệp, họ có thể đưa doanh nghiệp của mình đi đến
một cơng ty cung cấp dịch vụ đám mây khác mà họ có thể đặt niềm tin, có trách
nhiệm cao trong việc bảo vệ quyền riêng tư của khách hàng.
Giảm doanh thu
Tin tức về vi phạm dữ liệu của Target đã khiến người tiêu dùng tránh xa các cửa
hàng Target trong các kỳ nghỉ lễ, dẫn đến việc sụt giảm 46% lợi nhuận hàng q
của cơng ty. Cơng ty ước tính thiệt hại lên tới 148 triệu đô la. CIO và CEO của
Target đều đã phải từ chức và nhiều người hiện đang kêu gọi sự giám sát của ban
giám đốc đối với các chương trình an ninh mạng.
Theo nghiên cứu của Ponemon BYOC, 64% số người được hỏi nói rằng công ty
của họ khơng kiểm sốt được việc nhân viên của họ sử dụng đám mây tại nơi làm
việc. Để giảm thiểu rủi ro khi sử dụng đám mây không được quản lý (unmanaged
cloud), trước tiên các công ty cần có khả năng hiển thị các dịch vụ đám mây được
sử dụng bởi nhân viên của mình. Họ cần hiểu dữ liệu nào đang được tải lên dịch vụ
đám mây nào và của ai. Với thông tin này, các nhóm CNTT có thể bắt đầu thực thi
các chính sách bảo mật, tuân thủ và quản trị dữ liệu của công ty để bảo vệ dữ liệu
của công ty trên đám mây. Đám mây vẫn ở đây và các công ty phải cân bằng rủi ro
của dịch vụ đám mây với những lợi ích rõ ràng mà chúng mang lại.
VI. Kiến trúc lưu trữ đám mây Hadoop- HDFS
Hadoop là gì?
Apache Hadoop là một khung phần mềm mã nguồn mở được sử dụng để phát triển
các ứng dụng xử lý dữ liệu được thực thi trong mơi trường máy tính phân tán.
Các ứng dụng được xây dựng bằng HADOOP được chạy trên các tập dữ liệu lớn
được phân phối trên các cụm máy tính hàng hóa. Máy tính hàng hóa có giá thành rẻ

19


và phổ biến rộng rãi. Chúng chủ yếu hữu ích để đạt được sức mạnh tính tốn lớn
hơn với chi phí thấp.
Tương tự như dữ liệu nằm trong hệ thống tệp cục bộ của hệ thống máy tính cá
nhân, trong Hadoop, dữ liệu nằm trong hệ thống tệp phân tán được gọi là hệ thống
tệp phân tán Hadoop . Mô hình xử lý dựa trên khái niệm 'Vị trí dữ liệu' trong đó
logic tính tốn được gửi đến các nút cụm (máy chủ) chứa dữ liệu. Logic tính tốn
này khơng là gì, mà là một phiên bản đã biên dịch của một chương trình được viết
bằng ngơn ngữ cấp cao như Java. Một chương trình như vậy, xử lý dữ liệu được lưu
trữ trong Hadoop HDFS.
HDFS sẽ chia nhỏ file của bạn thành các phần và lưu trữ chúng tại các máy trong
cụm, và việc lưu trữ file sẽ tuân theo cơ chế Master – Slave.
Cụ thể cơ chế master – slave được thể hiện trong HDFS bằng việc trong một cụm
máy, sẽ chỉ bao gồm một máy duy nhất được gọi là là Namenode (Master) và các
máy còn lại gọi là Datanode (Slave). Trong đó:
- Datanode sẽ là nơi lưu trữ các file dữ liệu mà bạn đưa vào.
- Namenode là nơi lưu địa chỉ của file đó được chia và lưu trên các datanode
nào.
Ví dụ mình có một file 1TB, khi đưa vào HDFS để lưu trữ thì nó được chia thành 3
mảnh:
- 3 mảnh này sẽ chỉ được lưu ở datanode, namenode không lưu dữ liệu này.
- Namenode sẽ lưu địa chỉ có 3 mảnh được lưu trữ, ví dụ như mảnh 1 được lưu
trữ ở datanode 1, mảnh 2 được lưu trữ ở datanode 2,…

20


Namenode là đầu mối truy cập và thực hiện các thao tác với file từ phía

client, có nhiệm vụ duy trì và quản lý các datanode, nơi lưu trữ và cập nhật các
metadata, lắng nghe và theo dõi các datanode để đảm bảo là chúng vẫn “còn sống”,
điều khiển sự cân bằng về dung lượng lưu trữ của các datanode, quản lý lượng truy
cập tới các datanode.
Datanode là nơi lưu trữ dữ liệu, khi dữ liệu được đưa vào HDFS, nơi chạy
các tiến trình xử lý dữ liệu (các job), gửi dữ liệu định kỳ về tình trạng “sức khỏe”
tới datanode, mặc định là cứ 3s nó sẽ gửi một lần.
Dữ liệu được đưa vào trong HDFS sẽ được chia nhỏ thành nhiều mảnh và nằm rải
rác khắp nơi trong các datanode, mỗi mảnh dữ liệu như vậy được gọi là một block.
Việc dữ liệu được chia làm bao nhiêu block và mỗi block nằm ở datanode nào sẽ
được lưu ở metadata namenode.

21


Giải thích hình ảnh trên Chúng ta có 4 datanode và 5 block, trong đó:
-

Block 1 được lưu tại node 1, node 2, node 4.
Block 2 được lưu tại node 2, node 3, node 4
Block 3 được lưu tại node 1, node 3, node 4
Block 4 được lưu tại node 1, node 2, node 3
Block 5 được lưu tại node 1, node 2, node 4

Giả sử node 1 gặp sự cố, thì các dữ liệu mà node đang lưu (block 1, 3, 4, 5) vẫn có
lấy được từ các node khác. Điều này tương tự các node khác.
Bằng cơ chế “Quản lý các bản sao” mà HDFS có cách sắp xếp và nhân bản các
block để hạn chế tối đa việc mất mát dữ liệu khi có datanode gặp sự cố.
Mặc định HDFS sẽ tạo ra 3 bản sao cho mỡi block, nhưng bạn cũng có thể cấu hình
lại thơng tin này. Việc nhân bản ra càng nhiều sẽ càng làm giảm rủi ro mất mát dữ

liệu, nhưng đừng quên rằng nó cũng sẽ chiếm nhiều bộ nhớ hơn.

22


CHƯƠNG 2: Tìm hiểu một số cơng nghệ và
giải pháp lưu trữ đám mây
I. Một số kiến trúc lưu trữ: AFS, NFS, GFS, HDFS, NFS
NFS hay Network File System là kiến trúc hệ thống tập tin phân tán mà một máy
chủ trong hệ thống đóng vai trò là máy chủ lưu trữ, cung cấp năng lực lưu trữ của
các ổ đĩa cứng cục bộ, hệ thống RAID cho các máy tính khác qua giao thức mạng.
NFS là kiến trúc hệ quản lý tập tin phân tán rất phổ biến, được hỡ trợ bởi hầu hết
các nền tảng hệ điều hình như Windows, Unix.
Ưu điểm của NFS là tính trong suốt cho người dùng cuối về cách thức truy cập tập
tin hay vị trí nơi tập tin được lưu trữ. Hệ thống tập tin NFS được ánh xạ như một
thư mục trong hệ thống quản lý tập tin cục bộ và khơng có sự khác biệt. Yếu điểm
của NFS là tính khả mở thấp do mọi thao t|c đọc ghi dữ liệu đều thực hiện qua kết
nối mạng với máy chủ lưu trữ NFS. Trong trường hợp nếu có truy cập tương tranh
vào cùng một tệp, hiệu năng của NFS suy giảm rõ rệt.
AFS
AFS cũng là một hệ thống tập tin phân tán nhằm mục đích chia sẻ tập tin cho một
lượng lớn người dùng mạng. So với NFS, AFS có tính khả mở cao hơn, đ|p ứng
được số lượng người dùng lớn hơn nhờ vào đặc trưng sau đây: Khi truy cập tập tin,
toàn bộ tập tin sẽ được sao chép về phía máy người sử dụng và các thao tác đọc ghi
được thực hiện trên tập tin đó. Khi tập tin được đóng, nội dung tập tin sẽ được cập
nhật về phía máy chủ lưu trữ. Chính vì vậy, quá trình đọc ghi tương tranh là trong
suốt đối với từng người sử dụng nhưng tính nhất quán của tập tin không được đảm
bảo.
HDFS
HDFS (tên viết tắt của từ Hadoop Distributed File System” là một hệ thống lưu dữ

dữ dữ liệu được sử dụng bởi Hadoop. Chức năng của hệ thống này là cung cấp khả
năng truy cập với hiệu suất cao đến với các dữ liệu nằm trên các cụm của Hadoop.
Thông thường, HDFS sẽ sử dụng cũng như triển khai trên các phần cứng với chi
phí vừa phải, bởi các máy chủ sẽ rất dễ phát sinh các lỗi phần cứng. Đây là lý do
mà HDFS được lập trình và được xây dựng nhằm mục đích chịu lỡi cao để giảm rủi
ro cũng như giảm thiểu được quá trình phát sinh lỡi.
23


HDFS tạo ra các mảnh nhỏ hơn của dữ liệu lớn rồi phân tán chúng lên các nodes
khác nhau. Từ đó, sao chép mỗi miếng dữ liệu nhỏ hơn trên nhiều nodes khác. Do
vậy, khi node bất kỳ có dữ liệu bị lỡi thì hệ thống sẽ tự động sử dụng dữ liệu từ 1
node khác rồi tiếp tục xử lý. Đây là một trong những tính năng đặc biệt quan trọng
của HDFS.
Ưu điểm nổi bật của HDFS là gì?









Hiện nay, HDFS là một trong những hệ thống được các lập trình viên sử dụng rất
phổ biến. Lý do là vì?
HDFS cho phép dữ liệu có thể phân tán: Điều này có thể hiểu như sau: Nếu
như có một cụm Hadoop mà trong đó bao gồm 20 máy tính thì bạn chỉ cần đưa
một file dữ liệu vào HDFS. Khi đó, thì file sẽ tự động được chia nhỏ thành nhiều
phần rồi được lưu trữ ở 20 máy tính đó.

HDFS cho phép tính tốn và phân tán song song: Thay vì chỉ sử dụng một
máy để xử lý cơng việc, thì với HDFS thì bạn có thể để các máy hoạt động song
song để xử lý chung một công việc để tiết kiệm thời gian.
HDFS cho phép nhân bản các file: Đặc điểm này sẽ giúp bạn đề phòng được
các trường hợp một máy tính trong cụm Hadoop phát sinh sự cố thì dữ liệu sẽ được
backup lại mà khơng bị mất.
HDFS có thể mở rộng theo chiều dọc: Lúc này, bạn sẽ có nhiệm vụ nâng cấp
cho các hệ thống bằng cách tăng cấu hình cho máy tính lên. Tính năng này cịn
được gọi là Scale Up hay Vertical scaling.
HDFS có khả năng giải quyết những vấn đề nào?
Có 3 vấn đề mà khi sử dụng HDFS bạn đều có thể giải quyết một cách triệt để là:
Thứ 1: Lỡi phần cứng thường xun xảy ra HDFS được tích hợp với hệ thống phát
hiện ra lỗi, tự động khôi phục lỡi và chống chịu lỡi. Các tính năng này sẽ giúp bạn
giảm rủi ro xuống mức thấp nhất khi một hệ thống phát sinh lỗi phần cứng quá bất
ngờ.
Thứ 2: Phân chia tập dữ liệu thành tập dữ liệu có dung lượng ít hơn Vấn đề tiếp
theo mà HDFS có thể giúp các lập trình viên giải quyết được triệt để nhất đó chính
là phân chia dữ liệu. Cụ thể:; HDFS sẽ hỗ trợ chia các tập dữ liệu hàng trăm
Terabyte thành những tập dữ liệu có dung lượng ít hơn. Quá trình phân chia đều
24


thực hiện trên hệ thống máy tính. Điều này sẽ giúp cho các Developer có thể quản
lý dễ dàng hơn, giúp cho hệ thống giảm thiểu được thời gian truy xuất dữ liệu và
đơn giản hóa quá trình quản lý cho tập tin.
Thứ 3: Được thiết kế đặc biệt cho các ứng dụng xử lý dạng khối Các file khi được
tạo ra trên hệ thống HDFS đều sẽ được ghi, đóng lại và không thể chỉnh sửa được
nữa. Điều này sẽ giúp bảo mật, đảm bảo tính nhất quán cho các tập tin của dữ liệu.
II. Hệ thống lưu trữ mạng đám mây DAS, NAS, SAN
2.1. Direct Attached Storage ( DAS ):

Direct attached storage (DAS) là cách lưu trữ mà chúng ta đã quen biết từ
lâu, đó là các ổ cứng SCSI gắn bên trong các máy chủ. Các ứng dụng có thể truy
cập vào ổ cứng gắn trong ở mức độ block-level hay file-level. Thích hợp cho mọi
nhu cầu nhỏ đến cao cấp nhất và khả năng chạy cũng cực nhanh .
Một Server với những HDD bên trong, 1 Client với các HDD bên trong và truy
xuất trực tiếp đến HDD của nó thì đó chính là DAS.
2.2. Network Atteched Storage ( NAS ):
Network attached storage (NAS) là dạng lưu trữ không phải gắn liền với
server như DAS, mà kết nối từ xa đến server thông qua mạng LAN. Thay vì truy
cập đến thiết bị lưu trữ gắn trong (như DAS), ứng dụng truy cập đến thiết bị lưu trữ
gắn trên 1 thiết bị lưu trữ khác thông qua network. Cụ thể hơn, các thiết bị NAS
thường thấy chính là các server chạy hdh Windows Storage Server, được thiết kế để
tối ưu cho lưu trữ, và có thể dễ dàng mở rộng dung lượng bằng cách cắm thêm thiết
bị lưu trữ ngoài, hoặc combine với nhau thành group. Lúc này, ứng dụng cài trên
server khác, sẽ truy cập đến thiết bị lưu trữ này (cũng là 1 server chạy Win, hoặc
một HĐH nào khác) ở mức file-level, dùng CIFS (windows) hoặc NFS (unix). Các
ứng dụng mà cần truy cập thiết bi lưu trữ ở mức block-level sẽ không thể truy cập
vào NAS device (vd: exchange server); trong khi đó Lotus Note hoạt động ở mức
file-level
nên
dùng
NASđược.
Bạn cũng có thể hiểu rằng NAS chính là DAS được đặt trên mạng IP mà các
Server/Client truy xuất từ xa đến nó.
2.3. Storage Area Network ( SAN ):
Storage area network (SAN) hiện có 2 loại chính dùng 2 kiểu protocol khác
nhau, là Fiber Channel và iSCSI. Nếu như NAS không thể thay thế DAS vì chỉ ở
25



×