Bài tập môn Điện toán đám mây
TRƯỜNG ĐẠI HỌC MỎ ĐỊA CHẤT KHOA CÔNG NGHỆ THÔNG TIN HỌC PHẦN: ĐIỆN TOÁN ĐÁM MÂY ĐỀ TÀI: TRIỂN KHAI WEBSITE TĨNH TRÊN HEROKU Nhóm sinh viên thực hiện: Mục lục 1.Tổng quan tảng đám mây Heroku 2.Heroku hoạt động nào? 3.Ưu nhược điểm .4 Các tính Heroku cung cấp cho người dùng Heroku Runtime Heroku Postgres (SQL) .5 Heroku Redis Scale Add-ons Code/data rollback .6 App metrics Continuous delivery GitHub Integration .6 5.Vậy lại sử dụng Heroku có AWS? Tại Heroku thu hút người dùng? Các phiên Heroku Heroku Postgres Heroku Redis Heroku Teams .9 Heroku Enterprise Heroku Connect Heroku Elements 6.Triển khai website tĩnh Heroku (bằng GitHub) 10 B1.Đăng kí tài khoản Github 10 B2.Sau có file github chuyển sang đăng kí tài khoản Heroku 13 Bạn có ý tưởng cần thử nghiệm đo đạc đánh giá người dùng? Tuy nhiên để đưa website hoạt động bạn cần code, cài đặt máy chủ, webserver… Với Heroku, bạn cần tập trung chuyên môn vào code deploy bạn đưa sản phẩm đến người dùng để lấy ý kiến 1.Tổng quan tảng đám mây Heroku - Heroku tảng đám mây dựa ứng dụng container dạng Dịch vụ (Paas), cho phép lập trình viên xây dựng, triển khai, quản lý,mở rộng ứng dụng đại - Nền tảng linh hoạt dễ sử dụng, cung cấp cho đường đơn giản để đưa sản phẩm tiếp cận người dùng Nó giúp nhà phát triển tập trung vào phát triển sản phẩm mà không cần quan tâm đến việc vận hành máy chủ hay phần cứng… 2.Heroku hoạt động nào? Heroku quản lý hoàn toàn Heroku, cho phép nhà phát triển tự tập trung vào sản phẩm cốt lõi họ mà không bị phân tâm việc trì máy chủ, phần cứng sở hạ tầng.Trải nghiệm Heroku cung cấp dịch vụ, công cụ, quy trình làm việc hỗ trợ tất thiết kế để nâng cao suất nhà phát triển ứng dụng Heroku biết đến nơi để triển khai ứng dụng dyno.(Khi bạn triển khai ứng dụng Heroku, bạn phải thiết lập máy ảo gọi slug, sử dụng nhiều buildpacks Khi máy ảo khởi chạy từ slug, gọi dyno) Trong trường hợp phải xử lý khối lượng công việc nhiều, phức tạp, bạn cần them nhiều block(scale chiều ngang) tăng kích thước block (scale chiều dọc) Phí sử dụng Heroku tính dựa số lượng dyno kích thước dyno mà bạn dùng Mặc dù bạn phải trả phí để sử dụng Heroku, Heroku khơng thật lưu trữ ứng dụng bạn Thực tế tảng Heroku lẫn ứng dụng phát triển triển khai Amazon Web Services (AWS) 3.Ưu nhược điểm Bạn dùng Heroku miễn phí với vơ vàn addons hỗ trợ hữu ích coi dịch vụ hấp dẫn Hỗ trợ nhiều ngơn ngữ lập trình như: NodeJS, Ruby, Python, PHP, Java, Scala, Clojure, Go, Kotlin Ngồi cịn cung cấp Database, SSL miễn phí, hỗ trợ mạnh làm việc team liên kết với Github cách đơn giản Khuyết điểm tất nhiên có, việc miễn phí có giới hạn 550 tháng Nếu muốn tăng lên 1000 bạn cần cài đặt phương thức tốn Tuy nhiên để kiểm nghiệm ý tưởng hay trang web nhỏ nhiêu q đủ để thu kết Sau đến server khơng có người truy cập server chuyển sang trạng thái ngủ Về việc server bị tắt traffic, cách đơn giản tự tạo traffic cho Cách dễ dùng Pingdom để ping trang blog bạn thường xuyên giữ cho server không bị tắt Các tính Heroku cung cấp cho người dùng Heroku Runtime Ứng dụng bạn chạy bên smart container quản lý hoàn toàn suốt thời gian chạy ứng dụng, Heroku xử lý thứ quan trọng bao gồm: – cấu hình, điều phối, cân tải, chuyển đổi dự phòng, ghi nhật ký log, bảo mật, v.v Heroku Postgres (SQL) Dịch vụ PostgreSQL đáng tin cậy an toàn với thiết lập dễ dàng, mã hóa nhanh gọn, mở rộng quy mơ đơn giản, chuyển đổi sở liệu, bảo vệ liên tục Heroku Redis Hỗ trợ dịch vụ Redis cho lập trình viên sử dụng Một dịch vụ cache key-value nhớ tốc độ nhanh phổ biến Scale Heroku mở rộng quy mô ứng dụng lập tức, theo chiều dọc chiều ngang Bạn điều hành thứ cách nhàn hạ từ dự án sở thích nhỏ lẻ thương mại điện tử cấp doanh nghiệp Add-ons Mở rộng, nâng cao quản lý ứng dụng bạn với dịch vụ tích hợp sẵn New Relic, MongoDB, SendGrid, Searchify, Fastly, Papertrail, ClearDB MySQL, Treasure Data, v.v Code/data rollback Hệ thống xây dựng Heroku dịch vụ Postgres cho phép bạn khôi phục mã nguồn sở liệu trạng thái trước App metrics Bạn ln biết xảy với ứng dụng bạn nhờ vào tính giám sát tích hợp lưu lượng, thời gian phản hồi, nhớ, tải CPU lỗi Continuous delivery Heroku Flow sử dụng Heroku Pipeline, Review Apps Github tích hợp để xây dựng quy trình pipeline CI/CD gồm build, test, deploy,… GitHub Integration Tích hợp Github giúp bạn pull request, push, commit,… hoạt động với branch mà bạn muốn 5.Vậy lại sử dụng Heroku có AWS? Heroku AWS khơng giống AWS nhà cung cấp IaaS, chịu trách nhiệm quản lý trung tâm chia sẻ liệu lớn tảng đám mây điện tốn (cloud) Các cơng ty AWS, Azure Google triển khai IaaS để nhà phát triển lưu trữ ứng dụng họ tảng trung tâm liệu thay tự xây dựng server Nhưng chất kinh doanh, nhà cung cấp IaaS dường quan tâm đến việc điều hành trung tâm lưu trữ liệu trải nghiệm khách hàng Vậy nên bạn cần có kiến thức AWS làm việc trực tiếp với Cịn Heroku lại PaaS nằm AWS Nền tảng thiết kế đặc biệt giúp nhà phát triển ứng dụng dễ sử dụng Chẳng hạn, để triển khai ứng dụng Heroku, bạn cần biết vài lệnh Heroku CLI Dashboard Những câu lệnh có sẵn tài liệu Heroku Tại Heroku thu hút người dùng? - Cung cấp trải nghiệm người dùng tốt + Heroku thiên đường cho nhà phát triển xây dựng nhà phát triển Họ hiểu xác developers cần gặp khó khăn sử dụng dịch vụ họ - Là hệ sinh thái dịch vụ + Các nhà phát triển xây dựng ứng dụng họ ngôn ngữ nào, cho dù Nodejs, Ruby, PHP, Python hay Java + Hơn nữa, Heroku cịn có danh sách Heroku Add-ons khổng lồ, tích hợp chức mạnh mẽ giúp bạn triển khai ứng dụng cú click Heroku cung cấp add-on miễn phí trả phí, chúng giúp bạn tiết kiệm đáng kể thời gian triển khai dự án - Hỗ trợ kết nối với salesforce + Với phiên Heroku Connect, Heroku kết nối với salesforce, cho phép ứng dụng bạn đồng hai chiều với salesforce Từ đó, bạn dễ dàng mở rộng quy mơ ln có nhìn tổng qt khách hàng 5 Các phiên Heroku Heroku Postgres Heroku Postgres dịch vụ sở liệu đám mây dựa PostgreQuery Heroku Postgres có khả bảo vệ liên tục, khơi phục có tính sẵn sàng cao Heroku Redis Heroku Redis tùy chỉnh từ Heroku, cung cấp trải nghiệm tốt cho người dùng Heroku Redis giúp quản lý phiên với CLI, liên kết liệu với Postgres để hiểu rõ doanh nghiệp công cụ SQL Heroku Teams Heroku Teams cơng cụ quản lý nhóm, kết hợp nhiều nhà phát triển lại với để xây dựng phần mềm tốt Các nhóm tự tổ chức, kiểm soát, thêm thành viên sử dụng công cụ cộng tác Heroku Pipelines Heroku Enterprise Heroku Enterprise dành riêng cho công ty lớn, giúp họ cải thiện hợp tác nhóm khác Nó cung cấp tập hợp tính kiểm soát truy cập chi tiết, liên kết danh tính khơng gian riêng để quản lý quy trình phát triển ứng dụng doanh nghiệp, tài nguyên người dùng họ Heroku Connect Heroku Connect cho phép người dùng sở hữu ứng dụng Heroku dễ dàng tích hợp với Salesforce linh hoạt, nhờ đồng hóa liệu liền mạch sở liệu Heroku Postgres tổ chức Salesforce Heroku Elements Heroku Elements cung cấp Add-ons dịch vụ để phát triển, mở rộng vận hành ứng dụng, tự động hóa quy trình xây dựng cho ngơn ngữ frameworks phổ biến Đồng thời cung cấp tính One-Click, cấu hình triển khai thành phần bên thứ ba, thư viện ứng dụng mẫu 6.Triển khai website tĩnh Heroku (bằng GitHub) B1.Đăng kí tài khoản Github Nhấn sign up for github Sau đăng kí github gửi cho bạn tin nhắn vào email, nhấn verify email address Giao diện github sau đăng kí: Tạo repo GitHub: Bạn ấn vào button màu xanh để tạo repo server –Bạn đánh tên repo vào: tên ngắn gọn đơn giản – Thêm mô tả cho repo để biết repo chứa project loại – Chọn private muốn bảo mật mã code => bạn phải trả phí – Nếu bạn làm nghiên cứu chọn public, sau đổi từ public sang private – Chọn tạo file readme hay không, file readme.txt thường file thông tin cho sản phẩm, tùy bạn – Chọn loại cho file *.gitignore File *.gitignore file chứa thông tin cho loại file, folder mà git không quan tâm _ Project tạo có tên thaoproject để them code vào nhấn Add file chọn Create new file code github, chọn uploads file/choose your file để tải file lên từ máy tính B2.Sau có file github chuyển sang đăng kí tài khoản Heroku - Giao diện đăng kí tài khoản: - Sau bạn nhận email từ Heroku đến email mà bạn đăng kí tài khoản: - Nhấn vào đường link email để xác nhận tài khoản Heroku bạn - Sau ấn vào new góc phải chọn create new app -Sau đặt tên cho web phần App name -Nếu chữ bên app name hiển thị màu đỏ tức có người sử dụng tên bạn phải đổi tên khác -Sau ấn vào Create app -nhấn vào connect to GitHub -Nhập tên project tạo github vào ấn search thư mục hiển thị -nhấn connect -Kéo xuống chọn Deploy Brach: -Giao diện sau deploy thành cơng, chọn View để xem web bạn ... 5.Vậy lại sử dụng Heroku có AWS? Tại Heroku thu hút người dùng? Các phiên Heroku Heroku Postgres Heroku Redis Heroku Teams ... Heroku Teams .9 Heroku Enterprise Heroku Connect Heroku Elements 6.Triển khai website tĩnh Heroku (bằng GitHub) 10... đám mây Heroku 2 .Heroku hoạt động nào? 3.Ưu nhược điểm .4 Các tính Heroku cung cấp cho người dùng Heroku Runtime Heroku Postgres