Ôn thi google cloud architect (phần 2)

 



Thiết kế và lên kế giải pháp triển khai kiến trúc trên google cloud 

1.2 Thiết kế giải pháp kĩ thuật với cơ sở hạ tầng (infrastructure) đáp ứng được yêu cầu từ phía khách hàng.Bạn cần phải cân nhắc các vấn đề sau đây:

    a. Thiết kế hệ thống đáp ứng được tính High availabilityfailover 
Nếu bạn chưa bao giờ nghe đến 2 khái niệm HA và failover thì clickk vào link mình chèn bên trên để tham khảo hoặc 1 cách đơn giản hơn là hỏi thằng cha google nhé :v 

Cũng như thiết kế các hệ thống dưới local sử dụng 1 hoặc nhiều máy chủ server để đám bảo tính HA và không may sử cố có xảy ra thì còn server để backup xử lý failover.

Với tư tưởng và logic xây dựng như trên thì khi xây dựng hệ thống trên cloud chúng ta vẫn sẽ phải xây dựng hệ thống đáp ứng được 2 yếu tố trên (mặc dù các service của google đã cực kì tốt đã tích hợp sẵn HA và failover nhưng bản thân mỗi kiến trúc sư vẫn cần phải tính toán các bài toán xấu nhất.)

Để thiết kế hệ thống đáp ứng 2 yếu tố trên các bạn tham khảo chi tiết các giải pháp loadblancing (tóm tắt là cân bằng tải chia lượng truy cập sang nhiều server khác nhau)




Tài liệu tham khảo
Chi tiết: 
Load balancing: https://cloud.google.com/compute/docs/load-balancing/ 
HTTP(S) load balancing: https://cloud.google.com/compute/docs/load-balancing/http 
SSL Proxy load balancing: https://cloud.google.com/compute/docs/load-balancing/tcp-ssl/ 
TCP Proxy load balancing: https://cloud.google.com/compute/docs/load-balancing/tcp-ssl/tcp-proxy 
Network load balancing: https://cloud.google.com/compute/docs/load-balancing/network 
Internal load balancing: https://cloud.google.com/compute/docs/load-balancing/internal/ 

    b. Sự đàn hồi của cloud (Elasticity of cloud resources)
Về sự đàn hồi trên google cloud, người thiết kế có thể tham khảo nhiều option mà google cung cấp để có thể đáp ứng với nhiều nhu cầu khác nhau. Lấy vị dụ về sử dụng Google cloud compute (VMs) chúng ta có rất nhiều sự lựa chọn về số nhân CPU, ram:


Ngoài ra có thể thay đổi dễ dàng các cấu hình lên cao hoặc giảm xuống sau một thời gian sử dụng. Đó chính là tính đàn hồi của resource trên google cloud.


Bạn có thể tham khảo thêm google đã chia ra rất nhiều service phù hợp với nhiều loại dữ liệu khác nhau trên google cloud.
    
c. Khả năng mở rộng để đáp ứng yêu cầu tăng trưởng (Scalability)
Trên google cloud thường sẽ sử dụng 2 giải pháp để giải quyết vấn đề auto scale đó là sử dụng manager instance groups và kubernetes để tự động nhân bản các container mà nó quản lý. Mình sẽ giải thích qua về cơ chế hoạt động của MIGs (manager instance groups) còn về kubernetes cái này mọi người tìm hiểu thêm nha.



Cơ chế bạn sẽ phải cấu hình 1 template bao gồm OS và các phần mềm cần, template này sẽ được lưu trữ trong google cloud storage (1 service để lưu trữ file tương tự s3 của aws). Sau đó bạn sẽ tạo ra 1 group và setup các tham số như tổng CPU hoặc ram vượt quá bao nhiêu hệ thống sẽ tự động tạo ra server ảo khác dựa trên template bạn đã tạo ra ban đầu
Cơ chế nhân bản các VM của instance group

    d. Hiệu suất và độ trễ (Performance and latency)

Hiệu suất thường được đề cập tới vấn đề đọc ghi của database bao nhiêu bản ghi trên giây, có xử lý được khối lượng dữ liệu input hoặc output lớn được không?. Trong vấn đề này mình sẽ đưa ra 2 concept sử dụng Bigtable để lưu trữ dữ liệu time series data, đây là 1 ví dụ điển hình thường được hỏi trong bộ đề thi.

Còn về vấn đề về đỗ trễ thường người thiết kế sẽ phải lưu ý tới việc chọn zone và region, sử dụng google cloud DNS hoặc các kĩ thuật khác để đảm bảo độ trễ là thấp nhất

Thử sức với câu hỏi dưới này nhé:
For this question, refer to the Mountkirk Games case study. 
Mountkirk Games wants you to design a way to test the analytics platform’s resilience to changes in mobile network latency. 
What should you do?
A. Deploy failure injection software to the game analytics platform that can inject additional latency to mobile
client analytics traffic. 
B. Build a test client that can be run from a mobile phone emulator on a Compute Engine virtual machine, and
run multiple copies in Google Cloud Platform regions all over the world to generate realistic traffic. 
C. Add the ability to introduce a random amount of delay before beginning to process analytics files uploaded
from mobile devices. 
D. Create an opt-in beta of the game that runs on players’ mobile devices and 
collects response times from analytics endpoints running in Google Cloud Platform regions all over the world.

Các yếu tố khác mọi người hãy dựa vào 3 case study để tự đưa ra những đánh giá của riêng mình. Lúc mình thi thì các câu hỏi liên quan đến 3 case study chiếm khoảng 30% đến 40% nên việc nắm vững yêu cầu của 3 case này rất quan trọng 

Các nguồn tham khảo khác để mọi người học tập: 

Bài viết được xây dựng trên exam guide của google về việc ôn thi chứng chỉ:

Đăng nhận xét

0 Nhận xét