1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo Project2: Tìm hiểu về Openshit

26 689 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 26
Dung lượng 1,23 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Báo cáo Project2: Tìm hiểu về Openshit

Trang 1

Phần 1: Giới thiệu về Cloud Computing 2

I Các khái niệm cơ bản 2

1 Đặt vấn đề 2

2 Khái niệm 2

II Cấu trúc và cách thức hoạt động của Điện toán đám mây 3

1 Mô hình dịch vụ điện toán đám mây 3

2 Cách thức hoạt động 5

3 Giải pháp, dịch vụ, ưu nhược điểm và xu hướng phát triển 5

Phần 2: OpenShift 8

I Cấu trúc cơ bản 9

 Các loại tài khoản: 9

II Giao diện người dùng 10

1 Giao diện đồ họa (OpenShift Online) 10

2 Giao diện dòng lệnh (Client tools): 10

III Mã ủy quyền (Authorization Tokens) 11

1 Giới thiệu: 11

2 SSH Keys 11

IV Tên miền (domains) 12

V Cartridges 12

VI Application 14

1 Các ứng dụng có thể mở rộng (scalable) và không thể mở rộng (non-scalable) 15

2 Làm thế nào để mở rộng ứng dụng? 15

Phần 3: Xây dựng ứng dụng web bán hàng trên OpenShift 16

3 Đăng ký Openshift 16

4 Đăng nh p và t o tên mi n trên openshitập và tạo tên miền trên openshit ạo tên miền trên openshit ền trên openshit 17

5 T o public key và private keyạo tên miền trên openshit 20

6 Thêm public key vào openshit 22

7 S d ng winscript đ t i n i dung php lên trang webử dụng winscript để tải nội dung php lên trang web ụng winscript để tải nội dung php lên trang web ể tải nội dung php lên trang web ải nội dung php lên trang web ội dung php lên trang web 23

Trang 2

Phần 1: Giới thiệu về Cloud Computing

I Các khái niệm cơ bản.

1 Đặt vấn đề.

Ngày nay, đối với các công ty, doanh nghiệp, việc quản lý tốt, hiệu quả dữ liệu của riêngcông ty cũng như dữ liệu khách hàng, đối tác là một trong những bài toán được ưu tiênhàng đầu và đang không ngừng gây khó khăn cho họ Để có thể quản lý được nguồn dữ liệu

đó, ban đầu các doanh nghiệp phải đầu tư, tính toán rất nhiều loại chi phí như chi phí chophần cứng, phần mềm, mạng, chi phí cho quản trị viên, chi phí bảo trì, sửa chữa,…Ngoài ra họ còn phải tính toán khả năng mở rộng, nâng cấp thiết bị, kiểm soát việc bảo mật

dữ liệu cũng như tính sẵn sàng cao của dữ liệu Từ một bài toán điển hình như vậy, chúng tathấy được rằng nếu có một nơi tin cậy giúp các doanh nghiệp quản lý tốt nguồn dữ liệu đó,các doanh nghiệp sẽ không còn quan tâm đến cơ sở hạ tầng, công nghệ mà chỉ tập trungchính vào công việc kinh doanh thì sẽ mang lại cho họ hiệu quả và lợi nhuận ngày càng caohơn Thuật ngữ “cloud computing” ra đời bắt nguồn từ một trong những hoàn cảnh nhưvậy Thuật ngữ “cloud computing” còn được bắt nguồn từ ý tưởng đưa tất cả mọi thứnhư dữ liệu, phần mềm, tính toán.…lên trên mạng Internet Chúng ta sẽ không còntrông thấy các máy PC, máy chủ của riêng các doanh nghiệp để lưu trữ dữ liệu, phần mềmnữa mà chỉ còn một số các “máy chủ ảo” tập trung ở trên mạng Các “máy chủ ảo” sẽ cungcấp các dịch vụ giúp cho doanh nghiệp có thể quản lý dữ liệu dễ dàng hơn, họ sẽ chỉ trả chiphí cho lượng sử dụng dịch vụ của họ, mà không cần phải đầu tư nhiều vào cơ sở hạ tầngcũng như quan tâm nhiều đến công nghệ Xu hướng này sẽ giúp nhiều cho các công ty,doanh nghiệp vừa và nhỏ mà không có cơ sở hạ tầng mạng, máy chủ để lưu trữ, quản lý dữliệu tốt Vậy “cloud computing” là gì? Nó có thể giải quyết bài toán trên như thế nào và cónhững đặc điểm nổi bật gì? Chúng ta sẽ đi qua các phần sau để nắm rõ vấn đề này

2 Khái niệm.

a Thuật ngữ “đám mây”

Thuật ngữ "đám mây" ở đây là lối nói ẩn dụ chỉ mạng Internet dựa vào cách thức Internetđược bố trí trong sơ đồ mạng máy tính Ở mô hình điện toá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 quantâm đến các cơ sở hạ tầng phục vụ công nghệ đó

b Định nghĩa

Một mô hình điện toán nơi mà khả năng mở rộng và linh hoạt về công nghệ thông tin đượccung cấp như một dịch vụ cho nhiều khách hàng đang sử dụng các công nghệ trên Internet Nói một cách đơn giản nhất “điện toán đám mây” chính là những ứng dụng trực tuyến trênInternet Dữ liệu, tài nguyên, phần mềm và các thông tin liên quan đều được lưu trữ, tính

Trang 3

toán, xử lý trên các server (chính là các “đám mây”) 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 đó.Theo tổ chức Xã hội máy tính IEEE "Nó là hình mẫu trong đó thông tin được lưu trữ thườngtrực tại các máy chủ trên Internet và chỉ được được lưu trữ tạm thời ở các máy khách, baogồm máy tính cá nhân, trung tâm giải trí, máy tính trong doanh nghiệp, các phương tiện máytính cầm tay, "

II Cấu trúc và cách thức hoạt động của Điện toán đám mây.

1 Mô hình dịch vụ điện toán đám mây.

a Mô hình tổng quan

Theo định nghĩa, các nguồn điện toán khổng lồ như phần mềm, dịch vụ sẽ nằm tại cácmáy chủ ảo (đám mây) trên Internet thay vì trong máy tính gia đình và văn phòng (trên mặtđất) để mọi người kết nối và sử dụng mỗi khi họ cần

Hiện nay, các nhà cung cấp đưa ra nhiều dịch vụ của cloud computing theo nhiều hướng khác nhau, đưa ra các chuẩn riêng cũng như cách thức hoạt động khác nhau Do đó, việctích hợp các cloud để giải quyết một bài toán lớn của khách hàng vẫn còn là một vấn đề khókhăn Chính vì vậy, các nhà cung cấp dịch vụ đang có xu hướng tích hợp các cloud lại vớinhau thành “sky computing”, đưa ra các chuẩn chung để giải quyết các bài toán lớn củakhách hàng

b Cấu trúc phân lớp mô hình điện tóa đám mây

Mô hình “điện toán đám mây” được chia ra thành 5 lớp riêng biệt, có tác động qua lại lẫnnhau:

Trang 4

Client (Lớp Khách hàng): Lớp Client của điện toán đám mây bao gồm phần cứng và phần

mềm, để dựa vào đó, khách hàng có thể truy cập và sử dụng các ứng dụng/dịch vụ đượccung cấp từ điện toán đám mây Chẳng hạn máy tính và đường dây kết nối Internet (thiết

bị phần cứng) và các trình duyệt web (phần mềm)…

Application (Lớp Ứng dụng): Lớp ứng dụng của điện toán đám mây làm nhiệm vụ phân

phối phần mềm như một dịch vụ thông qua Internet, người dùng không cần phải cài đặt

và chạy các ứng dụng đó trên máy tính của mình, các ứng dụng dễ dàng được chỉnh sữa

và người dùng dễ dàng nhận được sự hỗ trợ

Các đặc trưng chính của lớp ứng dụng bao gồm:

 Các hoạt động được quản lý tại trung tâm của đám mây, chứ không nằm ở phíakhách hàng (lớp Client), cho phép khách hàng truy cập các ứng dụng từ xa thôngqua Website

 Người dùng không còn cần thực hiện các tính năng như cập nhật phiên bản, bản

vá lỗi, download phiên bản mới… bởi chúng sẽ được thực hiện từ các “đám mây”

Platform (Lớp Nền tảng): Cung cấp nền tảng cho điện toán và các giải pháp của dịch

vụ,chi phối đến cấu trúc hạ tầng của “đám mây” và là điểm tựa cho lớp ứng dụng, chophép các ứng dụng hoạt động trên nền tảng đó Nó giảm nhẹ sự tốn kém khi triển khaicác ứng dụng khi người dùng không phải trang bị cơ sở hạ tầng (phần cứng và phầnmềm) của riêng mình

Infrastructure (Lớp Cơ sở hạ tầng): Cung cấp hạ tầng máy tính, tiêu biểu là môi trường

nền ảo hóa Thay vì khách hàng phải bỏ tiền ra mua các server, phần mềm, trung tâm dữ liệu hoặc thiết bị kết nối… giờ đây, họ vẫn có thể có đầy đủ tài nguyên để sử dụng mà chi phí được giảm thiểu, hoặc thậm chí là miễn phí Đây là một bước tiến hóa của mô hình máy chủ ảo (Virtual Private Server)

Server (Lớp Server - Máy chủ): Bao gồm các sản phẩm phần cứng và phần mềm máy tính,

được thiết kế và xây dựng đặc biệt để cung cấp các dịch vụ của đám mây Các server phải

Trang 5

được xây dựng và có cấu hình đủ mạnh (thậm chí là rất mạnh) để đám ứng nhu cầu sửdụng của số lượng đông đảo các người dùng và các nhu cầu ngày càng cao của họ.

Lớp Front-end: gồm có một máy tính Client và một ứng dụng cần cho việc truy cập

đám mây; là lớp người dùng, cho phép người dùng sử dụng và thực hiện thông quagiao diện người dùng Tuy nhiên, không phải tất cả các hệ thống đám mây đều sửdụng chung một giao diện Khi người dùng truy cập các dịch vụ trực tuyến, họ sẽ phải

sử dụng thông qua giao diện từ lớp Front-end, và các phần mềm sẽ được chạy trênlớp Back-end nằm ở “đám mây”

Lớp Back-end: bao gồm các cấu trúc phần cứng và phần mềm để cung cấp giao diện

cho lớp Front-end và được người dùng tác động thông qua giao diện đó

3 Giải pháp, dịch vụ, ưu nhược điểm và xu hướng phát triển.

a Giải pháp và dịch vụ

Cloud Computing ra đời để giải quyết các vấn đề như:

 Vấn đề về lưu trữ dữ liệu: Dữ liệu được lưu trữ tập trung ở các kho dữ liệu khổng lồ.Các công ty lớn như Microsoft, Google có hàng chục kho dữ liệu trung tâm nằm rảirác khắp nơi trên thế giới Các công ty lớn này sẽ cung cấp các dịch vụ cho phépdoanh nghiệp có thể lưu trữ và quản lý dữ liệu của họ trên các kho lưu trữ trungtâm

 Vấn đề về sức mạnh tính toán:

Trang 6

 Vấn đề về cung cấp tài nguyên, phần mềm: Cung cấp các dịch vụ như IaaS(infrastructure as a service), PaaS (platform as a service), SaaS (software as a service).

b Ưu nhược điểm

 Với độ tin cậy cao, không chỉ giành cho người dùng phổ thông, điện toán đámmây 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ứukhoa học Tuy nhiên, một vài dịch vụ lớn của điện toán đám mây đôi khi rơi vào trạng tháiquá 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ấptrê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ụngcủa điện toán đám mây dễ dàng để sửa chữa hơn bởi lẽ chúng không được cài đặt cố địnhtrên một máy tính nào Chúng cũng dễ dàng hỗ trợ và cải thiện về tính năng

 Tài nguyên sử dụng của điện toán đám mây luôn đượ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 đảmbả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ườidùng có thể lựa chọn phù hợp

Nhược điểm:

Tuy nhiên, mô hình điện toán này vẫn còn mắc phải một số nhược điểm sau:

 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 đíchnà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 chongườ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ờigian 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ậmchí 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ụchồ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ườidù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ặctrong 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ườidù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 toàn bộ dữ liệu của họ trong trườnghợp dịch vụ ngừng hoạt động

Trang 7

 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ứchiệ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 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 độtnhậ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 toá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ôitrường nào, ngay cả trên các máy tính cá nhân

c Xu hướng phát triển

Thuật ngữ “cloud computing” ra đời từ giữa năm 2007, cho đến nay đã không ngừng pháttriển mạnh mẽ và được hiện thực bởi nhiều nhà cung cấp, trong đó có Amazon, Google,DataSynapse, Cloud2s và Salesforce cũng như những nhà cung cấp truyền thống như SunMicrosystems, HP, IBM, Intel, Cisco và Microsoft Nó đang được nhiều người dùng cá nhâncho đến những công ty lớn như General Electric, L'Oréal, Procter & Gamble và Valeo chấpnhân và sử dụng

Với mục tiêu giải quyết các bài toán về dữ liệu, tính toán, dịch vụ, …, cloud computing đã vàđang mang lại lợi nhuận lớn, đem đến một sân chơi, một thị trường rộng lớn cho các nhàcung cấp dịch vụ, nên sự phát triển nhanh chong của nó có thể được tính từng ngày Trongkhi đó, thuật ngữ ban đầu của “Grid computing” không mang kinh tế, lợi nhuận cao nên sựphát triển của nó đang ngày cáng giảm sút, và chỉ đang được áp dụng vào lĩnh vực nghiêncứu khoa học

Trang 8

 Đặc biệt, OpenShift cũng hỗ trợ các ứng dụng web dạng phần mềm mã nhị phân,miễn là nó có thể chạy trên RHEL Linux Điều này làm tăng tính tùy biến của hệthống, hỗ trợ nhiều ngôn ngữ và frameworks.

 OpenShift bảo trì dịch vụ bên dưới ứng dụng và thống kê ứng dụng nếu cần thiết

 OpenShift có cung cấp các gói dịch vụ VPS ( Máy chủ ảo ) từ miễn phí đến nâng caovới mức độ bảo mật cao và chạy trên nền máy chủ Linux

 Cloud hosting Free Openshift được miễn phí sử dụng Cloud hosting với đầy đủ tínhnăng như một VPS (Vitual Private Server) , có thể sử dụng SSH (Secure Shell) + SFTPnhư một VPS

Trang 9

I Cấu trúc cơ bản.

OpenShift Online cung cấp cho người dùng tài nguyên CPU, bộ nhớ, kết nối mạng hoặcmột Apache hay Jboss server để khởi tạo và triển khai, quản lý ứng dụng của mình trêncloud

Với hầu hết các dạng của ứng dụng, OpenShift khởi tạo sẵn các file layout mà bạn có thể

sử dụng như một khung để xây dựng ứng dụng của mình Nó cũng tạo cho bạn một tênmiền hệ thống (DNS) tất nhiên có giới hạn để ứng dụng có thể truy nhập trực tuyến

Thành phần cơ bản của hệ

thống

Mô tả

Gears (“bánh răng”) Nguồn tài nguyên hạn chế của hệ thống cung cấp cho mã

lệnh ứng dụng nơi cartidges chạy Gears xác định dunglượng RAM và dung lượng bộ nhớ có sẵn cho mộtcartridge

Cartridges(“đạn”) Cartridges cung cấp các chức năng để chạy các ứng dụng

Nhiều cartridges hiện được hỗ trợ như Perl, PHP, Ruby haycác database như Postgre hay MySQL

Các loại Gears được hỗ trợ trên OpenShift:

 Small gears provide 512MB of RAM, 100MB of swap space, and 1GB of disk space

 Medium gears provide 1GB of RAM, 100MB of swap space, and 1GB of disk space

 Large gears provide 2GB of RAM, 100MB of swap space, and 1GB of disk space.Mặc định thì sẽ có 3 Small gears có sẵn với tổng cộng 1.5 GB RAM và 3GB của bộ nhớđĩa OpenShift Online có thể chỉ định 3 gears này trong 1 ứng dụng và các cartridges của nó(Cron, MySQL,…), sử dụng mỗi gear để phân chia hoặc mở rộng ứng dụng

Các loại tài khoản:

Hiện tại có 3 loại tài khoản trên OpenShift: Free (miễn phí), Bronze (Đồng), Silver (Bạc).Bảng sau sẽ mô tả chi tiết quyền lợi, các tính năng cung cấp cho mỗi loại:

Trang 10

II Giao diện người dùng

Có 2 loại giao diện cho người sử dụng có thể dùng để tương tác vs OpenShift:management console (giao diện đồ họa điều khiển) và command line interface (CLI) (giaodiện dòng lệnh)

1 Giao diện đồ họa (OpenShift Online)

Chính là địa chỉ trang web cho người dùng truy cập: http://www.openshift.com

Management console phù hợp cho:

 Khởi tạo, quản lý, giám sát tài khoản

 Deploy và run các ứng dụng

 Giám sát và đánh giá các ứng dụng

Miêu tả ngắn gọn về các trang trên giao diện đồ họa:

Trang 11

Page Mô tả

Application Xem, quản lý các ứng dụng và cartridges Nếu đang chưa có ứng dụng nào bạn

có thể tạo ứng dụng mới từ trang này

Settings Xem và quản lý SSH key, tên miền (domains), và ủy quyền tài khoản (account

authorizations)

Help Truy nhập vào Kbase, các forum, các bài hướng dẫn, Một số lượng lớn các tài

nguyên có sẵn để cho người sử dụng tham khảo, chẩn đoán và giải quyết cácvấn đề về tài khoản và ứng dụng của mình

My

Account

Xem và quản lý thông tin tài khoản, bao gồm cả nâng cấp tài khoản

2 Giao diện dòng lệnh (Client tools):

Dùng để quản lý môi trường trong OpenShift thông qua các dòng lệnh và cung cấp cáctính tăng hiện vẫn chưa có với giao diện đồ họa:

Thích hợp cho các đối tượng:

 Coding: người lập trình

 Debugging: người sửa lỗi

 Advanced application management: người quản lý ứng dụng cấp cao

III Mã ủy quyền (Authorization Tokens)

1 Giới thiệu:

Một mã ủy quyền là một giá trị bí mật được dùng để tự động đăng nhập vào tài khoảnOpenShift Online mà không cần phải khai báo thông tin đăng nhập mỗi lần Một token cũngdùng để xem khả năng cấp cho người dùng khác đầy đủ hay một phần quyền truy cập vàomột tài khoản, xác định thông qua phạm vi scope của token

Có các loại phạm vi như sau:

session Truy nhập vào tất cả các hàm API của một

tài khoản

1 ngày

read Chỉ có thể đọc khi truy nhập vào các tài

nguyên của 1 tài khoản nhưng không thểxem các mã ủy quyền

1 tháng

userinfo Truy nhập để đăng nhập tên, id và sử dụng

các khả năng của user

1 tháng

Mã ủy quyền chỉ được tạo khi đã cài đặt giao diện dòng lệnh Client Tools

Trang 12

3 SSH Keys

OpenShift Online sử dụng gia thức mạng Secure Shell (SSH) để xác nhận thông tin tàikhoản cho OpenShift Online Server để đảm bảo sự giao tiếp Nó hỗ trợ cả RSA và DSA keyscho SSH

Xác nhận thành công khi khóa công khai SSH trên máy của user phù hợp với khóa côngkhai đã được upload lên OpenShift Online Server Khi mà giao diện dòng lệnh được cấu hình

nó sẽ ngầm tạo một cặp SSH keys mặc định ssh trong thư mục home của user

Các SSH keys được hỗ trợ bởi OpenShift Online:

IV Tên miền (domains)

Một mẫu tên miền là một phần của địa chỉ URL của ứng dụng, nó tạo ra tính độc nhấtcủa tài khoản Cú pháp cho một địa chỉ URL của ứng dụng là: application-domain.example.com Mỗi người sử dụng được hỗ trợ một tên miền nhưng user có thể tạo nhiều ứng dụngtrong tên miền đó Chú ý rằng tê n miền phải khởi tạo trước ứng dụng

Một domain bao gồm tối đa 16 kí tự chữ cái hoặc chữ số, không bao gồm dấu cách vàcác kí tự biểu tượng

Ví dụ về domain của một application:

Trang 13

V Cartridges

Cartridges là các thành phần của ứng dụng trên OpenShift Online, chứa các mã ứngdụng để cung cấp các chức năng cần thiết để chạy ứng dụng Cartridges sẵn có có hỗ trợnhiều loại ngôn ngữ lập trình, cơ dở dữ liệu, các dịch vụ giám sát và quản lý

Thêm một cartidge cho một ứng dụng cung cấp khả năng mong muốn mà không cầnphải quản lý hoặc cập nhật những tính năng kèm theo Khi được thêm vào ứng dụng, mộtcartridge được triển khai đến một hoặc nhiều gears dựa theo yêu cầu của ứng dụng

Một ứng dụng yêu cầu ít nhất một web framework cartridge, các web frameworkcartridges được hỗ trợ là:

 Các loại cartridges tiện ích khác:

Database Cung cấp cho ứng dụng một trong các loại database back ends VD:

Ngày đăng: 01/06/2014, 13:46

TỪ KHÓA LIÊN QUAN

w