Đăng ký Đăng nhập
Trang chủ Báo cáo project2 tìm hiểu về openshit...

Tài liệu Báo cáo project2 tìm hiểu về openshit

.DOCX
26
537
109

Mô tả:

Contents 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 17 5. Tạo public key và private key 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 23 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êng cô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ên hà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í cho phầ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 ta thấ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 trung chí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 cao hơ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òn trô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ềm nữ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ẽ cung cấ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ả chi phí 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ầng cũ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 quan tâ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 được cung 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ên Internet. 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
Contents Phầần 1: Giới thiệu vềầ Cloud Computng.......................................................................................................... 2 Các khái niệm cơ bản.............................................................................................................................. 2 I. 1. Đặt vầấn đềầ........................................................................................................................................... 2 2. Khái niệm............................................................................................................................................. 2 Cầấu trúc và cách thức hoạt động của Điện toán đám mầy.................................................3 II. 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: OpenShif.................................................................................................................................................... 8 Cầấu trúc cơ bản.......................................................................................................................................... 9 I. Các loại tài khoản:............................................................................................................................ 9  II. Giao diện người dùng............................................................................................................................ 10 1. Giao diện đôầ họa (OpenShif Online).....................................................................................10 2. Giao diện dòng lệnh (Client tools):......................................................................................... 10 Mã ủy quyềần (Authorizaton Tokens).......................................................................................... 11 III. 1. Giới thiệu:......................................................................................................................................... 11 2. SSH Keys............................................................................................................................................. 11 IV. Tền miềần (domains)............................................................................................................................ 12 V. Cartridges.................................................................................................................................................... 12 VI. Applicaton............................................................................................................................................. 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 OpenShif................................................................16 3. Đăng ký Openshift......................................................................................................................... 16 4. Đăng nhập và tạo tên miêền trên openshit..........................................................................17 5. Tạo public key và private key................................................................................................... 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................................................23 1|Page Phầần 1: Giới thiệu vềầ Cloud Computng 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ềng cô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 tền hà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ư, tnh toán rầất nhiềầu lo ại chi phí nh ư chi phí cho phầầ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 tnh 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ư tnh 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 ta thầấy được răầng nềấu có một n ơi tn cậy giúp các doanh nghi ệp qu ản lý tôất nguôần dữ liệu đó, các doanh nghiệp seẵ không còn quan tầm đềấn c ơ s ở h ạ tầầng, công ngh ệ mà chỉ tập trung chính vào công việc kinh doanh thì seẵ mang l ại cho h ọ hi ệu qu ả và l ợi nhuận ngày càng cao hơn. Thuật ngữ “cloud computng” ra đ ời băất nguôần t ừ m ột trong những hoàn cảnh như vậy. Thuật ngữ “cloud computng” 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, tnh toán.…lền trền m ạng Internet. Chúng ta seẵ không còn trô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ềầm nữ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” seẵ cung cầấ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ọ seẵ chỉ trả chi phí 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ầầng cũng như quan tầm nhiềầu đềấn công ngh ệ. Xu h ướng này seẵ 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 computng” 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 seẵ đ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 tnh. Ở mô hình điện toán này, m ọi kh ả năng liền quan đềấn công nghệ thông tn đềầ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ệ đó. 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 tn được cung 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ền Internet. Dữ liệu, tài nguyền, phầần mềầm và các thông tn liền quan đềầu được l ưu tr ữ, tnh 2|Page 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 tnh IEEE "Nó là hình mầẵu trong đó thông tn đ ược l ưu tr ữ th ường trự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, bao gôầm máy tnh cá nhần, trung tầm giải trí, máy tnh trong doanh nghi ệp, các ph ương t ện máy tnh 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 ụ ... seẵ năầm t ại các máy chủ ảo (đám mầy) trền Internet thay vì trong máy tnh 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 computng 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 ệc tch 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 tch h ợp các cloud l ại với nhau thành “sky computng”, đưa ra các chu ẩn chung đ ể gi ải quyềất các bài toán l ớn c ủa khá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ầẵn nhau: 3|Page  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 ụ được cung cầấp từ điện toán đám mầy. Chẳng hạn máy tnh 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)….  Applicaton (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 tnh 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ía khách hàng (lớp Client), cho phép khách hàng truy cập các ứng d ụng t ừ xa thông qua Website.  Người dùng không còn cầần thực hiện các tnh 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 seẵ được th ực hiện từ các “đám mầy”.  Platorm (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, cho phé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 khai cá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ầần mềầm) của riềng mình.  Infrastructure (Lớp Cơ sở hạ tầềng): Cung cầấp hạ tầầng máy tnh, tều biểu là môi trường nềần ảo hóa. Thay vì khách hàng phải bỏ tềầ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 tềấn hóa của mô hình máy chủ ảo (Virtual Private Server). 4|Page  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 tnh, đượ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 đượ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ọ. 2. Cách thức hoạt động. Để hiểu cách thức hoạt động của “đám mầy”, tưởng tượng răầng “đám mầy” bao gôầm 2 lớp: Lớp Back-end và lớp Front-end. Hạ tầầng thiềất bị được chứa ở lớp Back-End (bao gôầm nhiềầu máy tnh, máy ch ủ và h ệ thôấng lưu trữ dữ liệu gộp thành “đám mầy” các d ịch vụ Web), và giao di ện ng ười dùng c ủa các ứng dụng được chứa tại lớp Front-End.  Lớp Front-end: gôầm có một máy tnh 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 qua giao 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 ọ seẵ phải sử dụng thông qua giao diện từ lớp Front-end, và các phầần mềầm seẵ đ ược ch ạy trền lớ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 Computng 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ư Microsof, Google có hàng ch ục kho d ữ li ệu trung tầm năầm rải rác khăấp nơi trền thềấ giới. Các công ty l ớn này seẵ cung cầấp các d ịch v ụ cho phép doanh 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 ữ trung tầm.  Vầấn đềầ vềầ sức mạnh tnh toán: 5|Page Sử dụng các siều máy tnh (super-computer) để xử lý tnh toán. Sử dụng các hệ thôấng tnh toán song song, phần tán, tnh toán lưới.  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 (sofware as a service). b. Ưu nhược điểm.  Ưu điểm: Những ưu điểm và thềấ mạnh dưới đầy đã góp phầần giúp "đi ện toán đám mầy" tr ở thành mô hình điện toán được áp dụng rộng rãi trền toàn thềấ giới:  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…)  Với độ tn cậy cao, không chỉ giành cho người dùng ph ổ thông, đi ện toán đám mầ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ứ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 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 tềấ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 hơn bởi leẵ chúng không được cài đặt côấ định trền một máy tnh nào. Chúng cũng dềẵ dàng hôẵ trợ và cải thiện vềầ tnh 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 đ ả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: 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 tn 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 tn đó 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 tềấ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 tnh cá nhần. Điềầu này seẵ 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 tềấ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 6|Page có thể chăấc chăấn răầng các dịch vụ đám mầy seẵ không h ủy toà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 ng ười sử dụng dịch vụ của điện toán đám mầy. Bởi leẵ một khi các đám mầy b ị tầấn công ho ặc đ ột nhập, toàn bộ dữ liệu seẵ 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 leẵ 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 tnh cá nhần. c. Xu hướng phát triển. Thuật ngữ “cloud computng” ra đời từ giữa năm 2007, cho đềấn nay đã không ng ừng phát triển mạnh meẵ 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 ư Sun Microsystems, HP, IBM, Intel, Cisco và Microsof. Nó đang đ ược nhiềầu ng ười dùng cá nhần cho đềấn những công ty lớn như General Electric, L'Oréal, Procter & Gamble và Valeo chầấp nhần và sử dụng. Với mục tều giải quyềất các bài toán vềầ dữ liệu, tnh toán, d ịch vụ, …, cloud computng đã 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 tnh t ừng ngày. Trong khi đó, thuật ngữ ban đầầu của “Grid computng” 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ền cứu khoa học. 7|Page Phầần 2: OpenShif       OpenShif là một dịch vụ nềần tảng điện toán đám mầy (Platform as a Service – PaaS) của hãng Red Hat. Phầần mềầm chạy dịch vụ là mã nguôần mở và có săẵn trền GitHub v ới tền "OpenShif Origin".Người phát triển phầần mềầm có th ể sử dụng Git đ ể tri ển khai ứng d ụng băầng các ngôn ngữ khác nhau trền nềần tảng. Đặc biệt, OpenShif 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 tnh tùy biềấn c ủa h ệ thôấng, hôẵ trợ nhiềầu ngôn ngữ và frameworks. OpenShif 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. OpenShif có cung cầấp các gói dịch vụ VPS ( Máy ch ủ ảo ) từ miềẵn phí đềấn nầng cao với mức độ bảo mật cao và chạy trền nềần máy chủ Linux . Cloud hostng Free Openshif được miềẵn phí sử dụng Cloud hostng v ới đầầy đ ủ tnh năng như một VPS (Vitual Private Server) , có thể s ử d ụng SSH (Secure Shell) + SFTP như một VPS. 8|Page I. Cầấu trúc cơ bản. OpenShif Online cung cầấp cho người dùng tài nguyền CPU, b ộ nh ớ, kềất nôấi m ạng ho ặc một Apache hay Jboss server để khởi tạo và triển khai, qu ản lý ứng d ụng c ủa mình trền cloud. Với hầầu hềất các dạng của ứng dụng, OpenShif kh ởi t ạo săẵn các fle 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ền miềầ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 Gears (“bánh răng”) Cartridges(“đạn”) Mô tả 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 cartdges chạy. Gears xác định dung lượng RAM và dung lượng bộ nhớ có săẵn cho một cartridge. 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 hay các database như Postgre hay MySQL. Các loại Gears được hôẵ trợ trền OpenShif:  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ì seẵ có 3 Small gears có săẵn với tổng cộng 1.5 GB RAM và 3GB c ủa b ộ nh ớ đĩa. OpenShif 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 OpenShif: Free (miềẵn phí), Bronze (Đôầng), Silver (B ạc). Bảng sau seẵ mô tả chi tềất quyềần lợi, các tnh năng cung cầấp cho môẵi loại: 9|Page 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 OpenShif: management console (giao diện đôầ họa điềầu khiển) và command line interface (CLI) (giao diện dòng lệnh). II. 1. Giao diện đôầ họa (OpenShif Online) Chính là địa chỉ trang web cho người dùng truy cập: http://www.openshif.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: 10 | P a g e Page Mô tả Applicaton 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 authorizatons) 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ác vầấn đềầ vềầ tài khoản và ứng dụng của mình. My Xem và quản lý thông tn tài khoản, bao gôầm cả nầng cầấp tài khoản. Account 2. Giao diện dòng lệnh (Client tools): Dùng để quản lý môi trường trong OpenShif thông qua các dòng l ệnh và cung cầấp các tnh 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 applicaton management: người quản lý ứng dụng cầấp cao III. Mã ủy quyềần (Authorizaton 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ản OpenShif Online mà không cầần phải khai báo thông tn đăng nh ập môẵi lầần. M ột token cũng dù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ào mộ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: Scope session read userinfo Mô tả Truy nhập vào tầất cả các hàm API của một tài khoản 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 Truy nhập để đăng nhập tền, id và sử dụng các khả năng của user Thời gian hiệu lực 1 ngày 1 tháng 1 tháng Mã ủy quyềần chỉ được tạo khi đã cài đặt giao diện dòng lệnh Client Tools 11 | P a g e 3. SSH Keys OpenShif Online sử dụng gia thức mạng Secure Shell (SSH) để xác nh ận thông tn tài khoản cho OpenShif Online Server để đ ảm b ảo s ự giao tềấp. Nó hôẵ tr ợ c ả RSA và DSA keys cho 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ông khai đã được upload lền OpenShif Online Server. Khi mà giao di ện dòng l ệnh đ ược cầấu hình nó seẵ 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 OpenShif 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 tnh đ ộc nhầất của tài khoản. Cú pháp cho một địa chỉ URL của ứng d ụng là: applicaton-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ụng trong 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 applicaton: 12 | P a g e V. Cartridges Cartridges là các thành phầần của ứng dụng trền OpenShif Online, ch ứa các mã ứng dụ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 cartdge cho một ứng dụng cung cầấp kh ả năng mong muôấn mà không cầần phải quản lý hoặc cập nhật những tnh năng kèm theo. Khi được thềm vào ứng dụng, m ột cartridge đượ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 framework cartridges được hôẵ trợ là:  Các loại cartridges tện ích khác: Add-on cartridges Database Database 13 | P a g e Mô tả Cung cầấp cho ứng dụng một trong các loại database back ends. VD: MySQL hay PostgreSQL Cung cầấp các chức năng để quản lý database của ứng d ụng sử management Monitoring and management dụng phầần mềầm của bền thứ ba. VD: HAProxy Cung cầấp một loạt các chức năng quản lý và giám sát ứng dụng. VD: Cron task schedule, the Jenkins client Các loại database và khả năng mở rộng hay không của chúng: Các loại Management Database Cartridges và khả năng mở rộng scalable của chúng: VI. Applicaton Khi một ứng dụng mới được khởi tạo, một URL với tền của ứng dụng và tền miềần domain seẵ được đăng kí trong DNS. Một copy của code ứng d ụng seẵ đ ược ki ểm tra trong một thư mục có tền giôấng như tền ứng dụng. Chú ý răầng các loại ứng d ụng khác nhau yều cầầu các cầấu trúc thư mục khác nhau. Các thành phầần của ứng d ụng đ ược ch ạy trền các gears: Các thành phầần cầấu tạo nền một ứng dụng: Components Domain 14 | P a g e Mô tả Domain cung cầấp một định danh nhóm duy nhầất cho tầất cả các ứng dụng của một người dùng xác định. Một domain không trực tềấp liền hệ với DNS, thay vào đó nó được nôấi vào tền ứng dụng để tạo URL cho ứng dụng theo dạng: http://app_name-domain.example.com. Applicaton name Alias Git repository Tền của ứng dụng được đặt bởi user. Tền DNS có thể được cung cầấp cho ứng dụng bởi việc đăng kí m ột bí danh (alias) với OpenShif Online và ch ỉ mục DNS cho OpenShif Online servers. Một Git repository được sử dụng để thay đổi code ứng dụng cục bộ. Sau khi thay đổi code, lệnh git push seẵ cầần để tri ển khai code đã sửa. Vòng đời của một ứng dụng: Process Mô tả Code (lập trình) Phát triển ứng dụng với các ngôn ngữ lập trình và công cụ cầần thiềất. Tiềấp tục đẩy các code ứng dụng đềấn nguôần điềầu khi ển ứng dụng từ xa là Git repository. Build (xầy OpenShif Online hôẵ trợ nhiềầu cơ chềấ để build ứng d ụng. Nềấu là m ột dựng) ứng dụng đơn giản, một máy chủ cá nhần hoặc n ội bộ tch h ợp Jenkins tềấp tục build hệ thôấng. Deploy (triển Mọi ứng dụng đềầu bao gôầm các cartridges mà đơn giản hóa bảo trì và khai) cầấu hình server. OpenShif Online hôẵ trợ đa d ạng các kyẵ thu ật để cung cầấp những dịch vụ được yều cầầu một cách tự động. Manage (quản OpenShif Online cho phép theo dõi th ời gian th ực, gỡ lôẵi–debugging và lý) điềầu chỉnh ứng dụng. Ứng dụng được mở rộng tự động dựa theo l ưu lượng web. 1. Các ứng dụng có thể mở rộng (scalable) và không thể mở rộng (non-scalable) Các ứng dụng có thể mở rộng và cả không thể mở rộng. Một ứng d ụng là không th ể mở rộng chỉ khi tều thụ một trong các giới hạn mặc định của các gears được trao. M ặt khác, ứng dụng có thể mở rộng tều tôấn 2 gears có săẵn, m ột là cho m ức săẵn sàng ủy quyềần cao high-availability proxy (HAProxy) và một là cho ứng d ụng th ực tềấ (actual applicaton). Khi mà MySQL được thềm vào ứng dụng, nó được cài đặt là một gear. Điểm mạnh của các ứng dụng mở rộng được là nó tự động cầấp pháp tài nguyền d ựa trền yều cầầu. OpenShif Online giám sát các yều cầầu tài nguyền và t ự đ ộng cầấp phát tài nguyền tương ứng. Một ứng dụng có thể tự động mở rộng hoặc bởi chính người dùng. Một ứng dụng mới khởi tạo mặc định là có th ể mở rộng dựa theo sôấ yều cầầu. Tuy nhiền, user có thể điềầu chỉnh sôấ gears tôấi thiểu hay tôấi đa đ ược s ử d ụng b ởi m ột ứng d ụng trong giới hạn cho phép. 4. Làm thềấ nào để mở rộng ứng dụng? Môẵi ứng dụng được tạo trền OpenShif Online ph ải có ít nhầất m ột web framework cartridge (VD: PHP cartridge). Khi một ứng dụng được m ở r ộng, cartridge th ứ 2, HAProxy, seẵ được thềm vào ứng dụng. HAProxy seẵ lăấng nghe tầất c ả yều cầầu cho ứng d ụng đềấn web và chuyển chúng đềấn web cartridges. Khi sôấ yều cầầu của trang web (web page request) đềấn ứng d ụng tăng, HAProxy báo cho OpenShif Online khi mà phát hiện quá tải yều cầầu. Một bản sao của web cartridge seẵ đ ược tạo trền một gear riềng biệt. Trong môẵi trường hợp như vậy, web cartridge đã được m ở rộng 2 lầần. Tiềấn trình này được lặp lại khi mà có thềm yều cầầu web đ ược phát hi ện b ởi 15 | P a g e HAProxy và môẵi lầần như vậy một bản sao của l ại được tạo trền m ột gear riềng bi ệt và sôấ gear tăng 1. Nềấu tỷ lệ tổng sôấ gear của một ứng dụng với sôấ HAProxy gears l ớn h ơn 2, đ ịnh tuyềấn chức năng của HAProxy seẵ bị vô hiệu hóa để web cartridges được săấp xềấp th ứ t ự trền đó. Nềấu tỷ lệ lại hạ xuôấng băầng 2 hoặc thầấp hơn, HAProxy lại được kích hoạt lại. 16 | P a g e Phầần 3: Xầy dựng ứng dụng web bán hàng trền OpenShif 1. Đăng ký Openshift Đầầu tền chúng ta tềấn hành tải 2 phầần mềầm này vềầ 1. WinSCP : Là phầần mềầm kềất nôấi với máy chủ ảo để up dữ liệu. 2. PuTTY Key Generator : Phầần mềầm khởi tạo key bảo mật. Vào trang web www.openshif.redhat.com để đăng ký 1 tài khoản mới – ch ọn Sign up. Nhập đẩy đủ thông tn và nhầấn Sign Up để hoàn thành việc đăng ký. 17 | P a g e Sau khi đăng ký xong, bạn vào hộp thư email đăng ký để tềấn hành lầấy đ ịa ch ỉ kích ho ạt tài khoản. 2. Đăng nhập và tạo tên miêền trên openshit Tiềấn hành đăng nhập với tài khoản vừa được tạo. 18 | P a g e Chọn create your frst applicaton now. Tiềấp theo ta chọn phầần PHP 5.3 19 | P a g e Trong phầần Public URL bạn điềần địa chỉ host seẵ đưa lền trang web ( trền openshif thì nó seẵ có đuôi đăầng sau là rhcloud.com. Chọn create applicaton. Chọn Not now, contnue. 20 | P a g e
- Xem thêm -

Tài liệu liên quan