CHI TIẾT BÀI VIẾT

Giới thiệu Google Cloud Fundamentals

04/12/2021 12:05:08 PM | Xem: lần

Giới thiệu Google Cloud

--------------------------------------------------------------------
Google Cloud Fundamentals: Core Infrastructure
Google Cloud Fundamentals gồm 9 Module (trong đó 1 Module Review), Quiz, Lab và tài khoản Google Cloud với các mục tiêu và nội dung như sau:
  • Xác định mục tiêu và giá trị từ dịch vụ & sản phẩm Google Cloud mang lại
  • Tương tác các dịch vụ của Google Cloud
  • Môi trường triển khai ứng dụng trên Google Cloud
  • Các tham khảo sử dụng Google Cloud Storage
  • Triển khai tự động, giám sát và phân tích dữ liệu trên Google Cloud
  • Tham khảo Slide Google Cloud Fundamentals

1. Introducing Google Cloud
  • Sự phát triển của công nghệ và các trung tâm dữ liệu mang đến các khái niệm IaaS (Cơ sở hạ tầng như dịch vụ) và PaaS (Nền tảng như dịch vụ). Các dịch vụ IaaS cung cấp tính toán thô, lưu trữ và mạng, được tổ chức theo những cách quen thuộc từ các trung tâm dữ liệu vật lý và ảo hóa. Mặt khác, các dịch vụ PaaS liên kết mã code của bạn với các thư viện (libraries) cung cấp quyền truy cập vào cơ sở hạ tầng mà ứng dụng cần, do đó cho phép tập trung vào ứng dụng của mình hợp lý.
  • Trong mô hình IaaS, bạn trả tiền cho những gì bạn phân bổ. Trong mô hình PaaS, bạn trả tiền cho những gì bạn sử dụng. Khi Cloud computing phát triển, đã định hướng chuyển sang quản lý cơ sở hạ tầng và quản lý các dịch vụ.
  • Các sản phẩm và dịch vụ của Google Cloud được phân loại bao gồm Compute, Storage, Big Data, and Machine Learning. Compute bao gồm ảo máy thông qua Compute Engine, chạy các Docker Container được quản lý chạy trên nền tảng sử dụng Google Kubernetes Engine, triển khai các ứng dụng trong một nền tảng được quản lý như App Engine, chạy mã không máy chủ dựa trên sự kiện (event-based serverless code) sử dụng Cloud Functions hoặc đang chạy các Container không trạng thái với dịch vụ được quản lý như Cloud Run.



Các dịch vụ và tài nguyên của Google Cloud thuộc zonal, Regional hoặc được quản lý trên Multi-Region.
  • Zonal Resources: hoạt động trong một vùng duy nhất, nếu một zone trở nên không khả dụng, tất cả tài nguyên trong zone đó không khả dụng cho đến khi dịch vụ được khôi phục, ví dụ Compute Engine VM instance nằm trong một zone cụ thể.
  • Regional Resources: Các tài nguyên Region được triển khai với khả năng dự phòng trong một khu vực mang lại tính sẵn có cao hơn so với tài nguyên vùng.
  • Multi-regional Resources: Một số dịch vụ của Google Cloud được quản lý dư phòng và được phân phối trong và giữa các khu vực. Các dịch vụ này tối ưu hóa tính khả dụng, hiệu suất và hiệu quả tài nguyên như App Engine, Firestore, Cloud Storage, BigQuery.



* RESOURCES:
Why Google Cloud? https://cloud.google.com/why-google/

Google Cloud product overview http://cloud.google.com/products/

Google Cloud solutions http://cloud.google.com/solutions/


2. Getting Started with Google Cloud
  • Tất cả tài nguyên Google Cloud đều thuộc về Google Cloud Project. Các Project là cơ sở để bắt đầu và sử dụng các dịch vụ của Google Cloud, ví dụ như quản lý API, cho phép thanh toán, thêm và xóa cộng tác viên cũng như bật các dịch vụ khác của Google. Mỗi Project là một ngăn riêng biệt và mỗi tài nguyên thuộc về, có chủ sở hữu và người dùng khác nhau, được lập hóa đơn riêng và được quản lý riêng biệt.


Ví dụ của phân cấp IAM Resource
 
  • Người dùng của Google Cloud bắt đầu đăng nhập Cloud Console sử dụng tài khoản Gmail và cộng tác Team với cùng vai trò (role) thông qua Google Groups. Cách tiếp cận này rất dễ bắt đầu nhưng nhược điểm là các danh tính của Team không được quản lý tập trung. Vì ví dụ, nếu ai đó rời khỏi tổ chức của bạn, không có cách tập trung nào để xóa quyền truy cập của họ vào Cloud Resource ngay lập tức.
  • Người dùng Google Cloud cũng là người dùng của Workspace có thể xác định chính sách Google Cloud về người dùng và nhóm Workspace. Theo cách này, khi ai đó rời khỏi tổ chức của bạn, quản trị viên có thể vô hiệu hóa tài khoản của họ ngay lập tức và xóa họ khỏi các nhóm qua giao diện Google Admin Console.


Có 4 cách tương tác với Google Cloud: Cloud Console, Cloud SDK and Cloud Shell, Mobile app, APIs.

* RESOURCES:

Google Cloud security https://cloud.google.com/security/

Cloud Identity and Access Management (Cloud IAM) https://cloud.google.com/iam/

Cloud SDK installation and quick start https://cloud.google.com/sdk/#Quick_Start


3. Virtual Machines in the Cloud
  • Các mạng VPC (Virtual Private Cloud Networking) kết nối các tài nguyên Google Cloud với nhau và với Internet. Bạn có thể phân đoạn mạng của mình, sử dụng các quy tắc tường lửa để hạn chế quyền truy cập vào và tạo các định tuyến tĩnh (static route) chuyển tiếp lưu lượng truy cập đến các điểm đến cụ thể.
  • Người dùng bắt đầu với Google Cloud bằng cách khai báo VPC trong dự án Google Cloud hoặc chọn VPC mặc định và bắt đầu sử dụng
  • Google Cloud VPC networks có phạm vi toàn cầu, subnets có thể trải dài với các khu vực Region


* RESOURCES:

4. Storage in the Cloud
  • Google Cloud hỗ trợ nhiều chức năng Storage đáp ứng từng Use case của người dùng, một số chức năng như: Cloud Storage, Cloud SQL, Cloud Spanner, Firestore, Cloud Bigtable.



  • Google Cloud Storage có bốn lớp [Tham khảo Storage Classes] lưu trữ chính, với các đặc điểm khác nhau, các trường hợp sử dụng và giá cả cho nhu cầu của người dùng.



Những cách để mang dữ liệu lên Cloud Storage: Online transfer, Storage Transfer Service, Transfer Appliance


  • Cloud Bigtable: là dịch vụ cơ sở dữ liệu lớn NoSQL của Google, cung cấp nhiều dịch vụ cốt lõi của Google, bao gồm Tìm kiếm, Phân tích, Bản đồ và Gmail.
  • Cloud SQL: là một dịch vụ dễ sử dụng cung cấp cơ sở dữ liệu quan hệ được quản lý đầy đủ, bao gồm MySQL, PostgreSQL và SQL Server. Cloud SQL cho phép đơn giản hóa những công việc cần thiết và thường tốn thời gian như áp dụng các bản vá, cập nhật, quản lý các bản sao lưu và định cấu hình các bản sao để bạn có thể tập trung vào việc xây dựng các ứng dụng tuyệt vời.
  • Firestore: là một NoSQL linh hoạt, có thể mở rộng cơ sở dữ liệu để lưu trữ và đồng bộ dữ liệu
* RESOURCES:

Overview of Cloud Storage https://cloud.google.com/storage/

Getting started with Cloud SQL https://cloud.google.com/sql/docs/quickstart

Firestore https://firebase.google.com/docs/firestore

5. Containers in the Cloud
  • Nếu như Compute Engine là cơ sở hạ tầng của Google Cloud như cung cấp dịch vụ, với quyền truy cập vào máy chủ, hệ thống file và mạng. App Engine là dịch vụ cung cấp PaaS của Google Cloud thì Container và Google Kubernetes Engine, là một sự kết hợp về mặt khái niệm nằm giữa cả hai và được hưởng lợi từ cả hai.
  • Kubernetes giúp dễ dàng sắp xếp nhiều Container trên nhiều máy chủ Host, mở rộng scale như microservices, và được triển khai rollouts và rollbacks

* RESOURCES:


6. Applications in the Cloud
  • App Engine là một nền tảng để xây dựng các ứng dụng web có thể mở rộng và các phần mềm phụ trợ cho thiết bị di động, cho phép tập trung vào việc đổi mới các ứng dụng bằng cách quản lý cơ sở hạ tầng ứng dụng. Ví dụ: App Engine quản lý phần cứng và cơ sở hạ tầng mạng cần thiết để chạy mã của bạn.
  • App Engine cung cấp các dịch vụ và API tích hợp sẵn, chẳng hạn như kho dữ liệu NoSQL, memcache, cân bằng tải, kiểm tra tình trạng, ghi nhật ký ứng dụng và người dùng API xác thực, chung cho hầu hết các ứng dụng.
  • App Engine sẽ tự động mở rộng quy mô ứng dụng để đáp ứng với số lượng lưu lượng truy cập mà nó nhận được, do đó chỉ trả tiền cho các tài nguyên bạn sử dụng. Chỉ cần tải lên mã code và Google sẽ quản lý tính khả dụng của ứng dụng.

Example App Engine standard workflow: Web apps

* RESOURCES:

App Engine flexible environment https://cloud.google.com/appengine/docs/flexible/

App Engine standard environment https://cloud.google.com/appengine/docs/standard/



7. Developing, Deploying and Monitoring in the Cloud
  • Cloud Source Repositories: cung cấp quyền kiểm soát phiên bản Git để hỗ trợ cộng tác phát triển các ứng dụng hoặc dịch vụ, bao gồm cả những ứng dụng hoặc dịch vụ chạy trên App Engine và Compute Engine. Nếu đang sử dụng Cloud Debugger, bạn có thể sử dụng Cloud Source Repositories và các công cụ liên quan để xem thông tin gỡ lỗi cùng với mã của bạn trong thời gian chạy ứng dụng. Cloud Source Repositories cũng cung cấp trình xem nguồn có thể sử dụng để duyệt và xem các repository files từ Cloud Console.
  • Cloud Deployment Manager: dịch vụ quản lý cơ sở hạ tầng tự động hóa việc tạo và quản lý các tài nguyên Google Cloud
  • Google Cloud's operations suite: cung cấp khả năng giám sát, ghi nhật ký và chẩn đoán các ứng dụng trên Google Cloud, trang bị cái nhìn sâu sắc về trạng thái, health, hiệu suất và tính khả dụng của các ứng dụng hỗ trợ Cloud, cho phép bạn tìm và sửa lỗi vấn đề nhanh hơn.


  
* RESOURCES:

Deployment Manager https://cloud.google.com/deployment-manager/docs/

Google Cloud operations suite https://cloud.google.com/stackdriver/docs/


8. Big Data and Machine Learning in the Cloud
Các giải pháp Google Cloud Big Data được thiết kế để giúp chuyển đổi số doanh nghiệp và trải nghiệm người dùng với thông tin chi tiết về dữ liệu có ý nghĩa. Nó tích hợp và chạy nền tảng ''Serverless'', có nghĩa là không cần cung cấp các compute instances để chạy các jobs. Các dịch vụ được quản lý hoàn toàn và chỉ trả tiền cho những tài nguyên tiêu thụ. Nền tảng này được "tích hợp” để các dịch vụ dữ liệu Google Cloud hoạt động cùng nhau để giúp người dùng tạo các giải pháp tùy chỉnh.



Nếu người dùng muốn kiểm soát nhiều hơn việc xây dựng và đào tạo các mô hình Học máy (Machine Learning), sẽ sử dụng các công cụ cung cấp mức độ linh hoạt mà họ đang tìm kiếm. Điều này sẽ liên quan đến phát triển các mô hình tùy chỉnh thông qua thư viện ML như TensorFlow, được hỗ trợ trên Nền tảng AI. Tùy chọn này phù hợp với các nhà khoa học dữ liệu có kỹ năng và nhu cầu tạo mô hình TensorFlow.


The Google Cloud machine leaning spectrum

* RESOURCES:
Smart Analytics https://cloud.google.com/solutions/smart-analytics