1. Hardware Requirements
- Khi tạo kiến trúc cho cụm, bạn sẽ cần phân bổ các vai trò Cloudera manager và Runtime giữa các máy chủ trong cụm để tối đa hóa việc sử dụng tài mguyên.
- Khi nhiều vai trò được gán cho máy chủ, hãy cộng yêu cầu tài nguyên (memory, CPU, disk) cho từng vai trò trên máy chủ để xác định nhu cầu cần thiết
1.1. Runtime Cluster Host
- Cluster hosst có thể được mô tả là master host, utility host, gateway host hoặc worker host
+ Master host: chạy các quy trình chính của Hadoop như HDFS NameNode và YARN Resource Manager
+ Utility host: chạy các quy trình cụm khác không phải là quy trình chính như Cloudera Manager và một hoặc nhiều Hive Metastores.
+ Gateway host: là các điểm truy cập của khách hàng để khởi chạy các công việc trong cụm
+ Worker host: chủ yếu chạy DataNodes và các quy trình phân tán khác như Impalad.
1.1.1. Cách phân bổ vai trò được đề xuất
3 - 10 Worker Hosts không High Availability
3 - 20 Worker Hosts with High Availability
Tham khảo thêm tại Runtime Cluster Hosts and Role Assignments (Installing CDP Private Cloud Base)
1.2. Cloudera Manager
- Cloudera Manager là một ứng dụng đầu cuối để quản lý các cụm. Với Cloudera Manager, bạn có thể dễ dàng triển khai và vận hành tập trung toàn bộ Cloudera Runtime stack và các dịch vụ được quản lý khác
- Một Cloudera Manager có thể quản lý nhiều cụm, bao gồm các phiên bản cũ hơn của Cloudera Runtime và CDH.
1.2.1. Kiến trúc của Cloudera Manager
Máy chủ Cloudera Manager hoạt động cùng với một số thành phần khác:
+ Agent: Được cài đặt trên mỗi máy chủ. Agent chịu trách nhiệm khởi động và dừng các tiến trình, giải nén cấu hình, kích hoạt cài đặt và giám sát máy chủ.
+ Management Service: Một dịch vụ bao gồm một tập hợp các vai trò thực hiện các chức năng giám sát, cảnh báo và báo cáo khác nhau.
+ Database: Lưu trữ thông tin cấu hình và giám sát. Thông thường, nhiều cơ sở dữ liệu logic chạy trên một hoặc nhiều máy chủ cơ sở dữ liệu. Ví dụ: Máy chủ Cloudera Manager và các vai trò giám sát sử dụng các cơ sở dữ liệu logic khác nhau.
+ Cloudera Repository: Kho lưu trữ phần mềm để phân phối bởi Cloudera Manager.
+ Client: Là các giao diện để tương tác với máy chủ:
+ Cloudera Manager Admin Console: Giao diện người dùng dựa trên web mà quản trị viên sử dụng để quản lý các cụm và Cloudera Manager.
+ Cloudera Manager API: API mà nhà phát triển sử dụng để tạo các ứng dụng Cloudera Manager tùy chỉnh.
- Cơ chế giao tiếp trong Cloudera Manager gọi là heartbeats. Theo mặc định Agent sẽ heartbeat 15 giây một lần đến máy chủ Cloudera Manager. Tuy nhiên để giảm độ trễ của người dùng tần suất sẽ tăng lên khi trạng thái thay đổi
- Trong quá trình trao đổi heartbeat, Agent sẽ thông báo cho Cloudera manager về các hoạt động của mình. Cloudera manager sẽ sẽ phản hồi bằng các hành động mà Agent sẽ thực hiện. Cả Cloudera Manager và agent đều thực hiện một số điều chỉnh. Ví dụ: nếu bạn khởi động một dịch vụ, agent sẽ cố gắng khởi động các quy trình liên quan; nếu một quá trình không khởi động được, Máy chủ Cloudera Manager sẽ đánh dấu lệnh bắt đầu là không thành công
1.2.2. Yêu cầu lưu trữ cho Cloudera Manager Server
1.2.3. Yêu cầu đối với Cloudera Manager Server dựa trên số lượng máy chủ
2. Operating System Requiments
- Tất cả máy chủ Runtime phải chạy cùng một bản phát hành hệ điều hành
- Cấu hình hỗ hợp hệ điều hành chỉ được hỗ trơc trong dự án nâng cấp
- Cloudera Manager phải chạy trên cùng một bản phát hành hệ điều hành với các cụm mà nó quản lý
- Cloudera không hỗ trợ triển khai Runtime Cluster trong container docker
- Các hệ điều hành được hỗ trợ trên nền tảng CDP:
3. Database Requirements
- Các database được hỗ trợ:
4. Java Requirements
- Tất cả các máy chủ phải chạt cùng một phiên bản JDK
- Các phiên bản JDK được hỗ trợ
5. Các yêu cầu bổ sung
- Hệ thống tập tin: ext3, ext4, XFS, S3
- Cấu hình mạng - TLS
- CDP yêu cầu IPv4
- IPv6 không được hỗ trợ và phải bị tắt
- Tất cả các máy chủ phải có hệ thống phân giải tên mạng đang hoạt động
- Python 2.7 trở lên, Python 3 không được hỗ trợ
- Perl được yêu cầu bởi Cloudera Manager
- Cần có gói iproute cho CDP Private Cloud Base
- Khi tạo kiến trúc cho cụm, bạn sẽ cần phân bổ các vai trò Cloudera manager và Runtime giữa các máy chủ trong cụm để tối đa hóa việc sử dụng tài mguyên.
- Khi nhiều vai trò được gán cho máy chủ, hãy cộng yêu cầu tài nguyên (memory, CPU, disk) cho từng vai trò trên máy chủ để xác định nhu cầu cần thiết
1.1. Runtime Cluster Host
- Cluster hosst có thể được mô tả là master host, utility host, gateway host hoặc worker host
+ Master host: chạy các quy trình chính của Hadoop như HDFS NameNode và YARN Resource Manager
+ Utility host: chạy các quy trình cụm khác không phải là quy trình chính như Cloudera Manager và một hoặc nhiều Hive Metastores.
+ Gateway host: là các điểm truy cập của khách hàng để khởi chạy các công việc trong cụm
+ Worker host: chủ yếu chạy DataNodes và các quy trình phân tán khác như Impalad.
1.1.1. Cách phân bổ vai trò được đề xuất
3 - 10 Worker Hosts không High Availability
3 - 20 Worker Hosts with High Availability
Tham khảo thêm tại Runtime Cluster Hosts and Role Assignments (Installing CDP Private Cloud Base)
1.2. Cloudera Manager
- Cloudera Manager là một ứng dụng đầu cuối để quản lý các cụm. Với Cloudera Manager, bạn có thể dễ dàng triển khai và vận hành tập trung toàn bộ Cloudera Runtime stack và các dịch vụ được quản lý khác
- Một Cloudera Manager có thể quản lý nhiều cụm, bao gồm các phiên bản cũ hơn của Cloudera Runtime và CDH.
1.2.1. Kiến trúc của Cloudera Manager
Máy chủ Cloudera Manager hoạt động cùng với một số thành phần khác:
+ Agent: Được cài đặt trên mỗi máy chủ. Agent chịu trách nhiệm khởi động và dừng các tiến trình, giải nén cấu hình, kích hoạt cài đặt và giám sát máy chủ.
+ Management Service: Một dịch vụ bao gồm một tập hợp các vai trò thực hiện các chức năng giám sát, cảnh báo và báo cáo khác nhau.
+ Database: Lưu trữ thông tin cấu hình và giám sát. Thông thường, nhiều cơ sở dữ liệu logic chạy trên một hoặc nhiều máy chủ cơ sở dữ liệu. Ví dụ: Máy chủ Cloudera Manager và các vai trò giám sát sử dụng các cơ sở dữ liệu logic khác nhau.
+ Cloudera Repository: Kho lưu trữ phần mềm để phân phối bởi Cloudera Manager.
+ Client: Là các giao diện để tương tác với máy chủ:
+ Cloudera Manager Admin Console: Giao diện người dùng dựa trên web mà quản trị viên sử dụng để quản lý các cụm và Cloudera Manager.
+ Cloudera Manager API: API mà nhà phát triển sử dụng để tạo các ứng dụng Cloudera Manager tùy chỉnh.
- Cơ chế giao tiếp trong Cloudera Manager gọi là heartbeats. Theo mặc định Agent sẽ heartbeat 15 giây một lần đến máy chủ Cloudera Manager. Tuy nhiên để giảm độ trễ của người dùng tần suất sẽ tăng lên khi trạng thái thay đổi
- Trong quá trình trao đổi heartbeat, Agent sẽ thông báo cho Cloudera manager về các hoạt động của mình. Cloudera manager sẽ sẽ phản hồi bằng các hành động mà Agent sẽ thực hiện. Cả Cloudera Manager và agent đều thực hiện một số điều chỉnh. Ví dụ: nếu bạn khởi động một dịch vụ, agent sẽ cố gắng khởi động các quy trình liên quan; nếu một quá trình không khởi động được, Máy chủ Cloudera Manager sẽ đánh dấu lệnh bắt đầu là không thành công
1.2.2. Yêu cầu lưu trữ cho Cloudera Manager Server
Thành phần | | Ghi chú |
Phân vùng chứa /usr | 1 GB | |
Phân vùng chứa /var | 100 GB đến 5 TB | Quy mô tăng theo số lượng node được quản lý |
Phân vùng chứa /opt | Tối thiểu 25 GB | Dung lượng sử dụng tăng khi số lượng parcels tải về tăng lên. Dự trù 8 GB cho mỗi CDH parcel thêm, và 1 GB cho mỗi non-CDH parcel thêm. |
Cơ sở dữ liệu Cloudera Manager Server | < 500 hosts: 5 GB > 500 hosts: 10 GB | Yêu cầu tối thiểu về bộ nhớ và bộ xử lý phải hỗ trợ số lượng kết nối cơ sở dữ liệu song song sau:
|
Cơ sở dữ liệu Reports Manager | Tối thiểu 1 GB | Sự tăng trưởng của Reports Manager phụ thuộc vào số lượng người dùng HDFS và các thư mục được giám sát. |
1.2.3. Yêu cầu đối với Cloudera Manager Server dựa trên số lượng máy chủ
Số lượng máy chủ trong cụm | Cấu hình máy chủ cơ sở dữ liệu và chia sẻ máy chủ HMON+SMON | Kích thước Heap của Cloudera Manager Server | Logical Processors | Thư mục /var của Cloudera Manager Server | Thư mục /var của SMON và HMON |
Rất nhỏ (≤10) | Shared | 8 GB | 4 | 50 GB | 50 GB |
Nhỏ (≤20) | Shared | 10 GB | 6 | 100 GB | 100 GB |
Trung bình (≤200) | Dedicated | 16 GB | 8 | 1 TB | 1 TB |
Lớn (≤500) | Dedicated | 32 GB | 12 | 2.5 TB | 2.5 TB |
Rất lớn (>500) | Dedicated | 48 GB | 16 | > 2.5 TB | > 2.5 TB |
2. Operating System Requiments
- Tất cả máy chủ Runtime phải chạy cùng một bản phát hành hệ điều hành
- Cấu hình hỗ hợp hệ điều hành chỉ được hỗ trơc trong dự án nâng cấp
- Cloudera Manager phải chạy trên cùng một bản phát hành hệ điều hành với các cụm mà nó quản lý
- Cloudera không hỗ trợ triển khai Runtime Cluster trong container docker
- Các hệ điều hành được hỗ trợ trên nền tảng CDP:
3. Database Requirements
- Các database được hỗ trợ:
4. Java Requirements
- Tất cả các máy chủ phải chạt cùng một phiên bản JDK
- Các phiên bản JDK được hỗ trợ
5. Các yêu cầu bổ sung
- Hệ thống tập tin: ext3, ext4, XFS, S3
- Cấu hình mạng - TLS
- CDP yêu cầu IPv4
- IPv6 không được hỗ trợ và phải bị tắt
- Tất cả các máy chủ phải có hệ thống phân giải tên mạng đang hoạt động
- Python 2.7 trở lên, Python 3 không được hỗ trợ
- Perl được yêu cầu bởi Cloudera Manager
- Cần có gói iproute cho CDP Private Cloud Base