Sunday, September 29, 2024

Triển khai Ceph trong Proxmox

-

1. Ceph storage là gì?

Ceph là một hệ thống lưu trữ phân tán mã nguồn mở được thiết kế để cung cấp khả năng lưu trữ phân tán, tin cậy và hiệu suất cao. Nó cung cấp các tính năng như lưu trữ đối tượng, hệ thống tệp phân tán và block storage phân tán, cho phép lưu trữ và quản lý dữ liệu quy mô lớn trên một cụm máy chủ.

Ceph trong Proxmox là việc tích hợp hệ thống lưu trữ Ceph vào nền tảng ảo hóa Proxmox VE. Nó cho phép người dùng triển khai và quản lý cụm Ceph trực tiếp từ giao diện Proxmox, cung cấp khả năng lưu trữ phân tán cho các máy ảo và container.

2. Các lợi ích của Ceph.

Một số lợi ích của việc sử dụng Ceph trong Proxmox bao gồm:

  • Tích hợp dễ dàng: Ceph được tích hợp sẵn trong Proxmox, cho phép người dùng triển khai và quản lý Ceph từ cùng một giao diện quản lý.
  • Khả năng mở rộng: Ceph cho phép mở rộng linh hoạt bằng cách thêm các node OSD và monitor vào cụm, giúp tăng khả năng lưu trữ và hiệu suất theo nhu cầu.
  • Tính tin cậy: Ceph sử dụng cơ chế sao lưu phân tán và kiểm tra lỗi để đảm bảo tính toàn vẹn và khả năng khôi phục dữ liệu trong trường hợp lỗi phần cứng hoặc mạng.

3. Nhược điểm.

Tuy nhiên, việc triển khai Ceph cũng có một số nhược điểm và lưu ý cần lưu ý:

  • Phức tạp: Ceph là một hệ thống phức tạp, yêu cầu kiến thức và kỹ năng phù hợp để triển khai và quản lý.
  • Yêu cầu tài nguyên: Ceph yêu cầu tài nguyên phần cứng đáng kể để xây dựng cụm, bao gồm lưu trữ, mạng và xử lý.
  • Hiệu suất: Một triển khai không chính xác hoặc cấu hình không đúng có thể ảnh hưởng đến hiệu suất của cụm Ceph và hiệu suất lưu trữ.
  • Quản lý: Quản lý một cụm Ceph đòi hỏi sự quan tâm đến việc cấu hình, giám sát và duy trì hệ thống.

4. Các lưu ý quan trọng khi triển khai Ceph.

Khi triển khai Ceph trong Proxmox, một số lưu ý quan trọng bao gồm:

  • Kiến thức và kỹ năng: Hãy đảm bảo bạn có đủ kiến thức và kỹ năng để triển khai và quản lý Ceph. Nếu không, hãy tìm hiểu hoặc nhờ sự trợ giúp của chuyên gia.
  • Cấu hình phần cứng: Chọn phần cứng phù hợp và cấu hình đúng cho Ceph OSDs và các thành phần khác để đảm bảo hiệu suất và độ tin cậy.
  • Kết nối mạng: Đảm bảo kết nối mạng ổn định và băng thông đủ để hỗ trợ lưu lượng dữ liệu giữa các node Ceph.
  • Sao lưu và khôi phục: Đảm bảo bạn có quy trình sao lưu và khôi phục dữ liệu trong trường hợp xảy ra sự cố.
  • Giám sát: Cung cấp giải pháp giám sát hệ thống Ceph để theo dõi trạng thái và hiệu suất của cụm.
  • Kiểm tra và tối ưu hóa: Thực hiện kiểm tra và tối ưu hóa hệ thống Ceph để đảm bảo hiệu suất và tin cậy tốt nhất.

5. Thực hành.

Đây là sơ đồ vậy lý.

Và đây là sơ đồ logic.

Đầu tiên bạn hãy lựa chọn 1 Node bất kỳ, ví dụ của mình là Node 01 (1), Lựa chọn Ceph (2) và bấm vào Install Ceph (3).

Ở phần này chúng ta có phần lựa chọn phiên bản Ceph cho Proxmox. Khi chọn phiên bản của Ceph cho Proxmox VE, cần xem xét các yếu tố sau:

  • Hỗ trợ và tương thích: Đảm bảo rằng phiên bản Ceph bạn chọn được hỗ trợ và tương thích tốt với phiên bản Proxmox VE hiện tại. Kiểm tra tài liệu và thông tin hỗ trợ từ cả hai nhóm phát triển để đảm bảo tính tương thích.
  • Tính ổn định và tính năng: Các phiên bản mới thường đi kèm với các cải tiến, tính năng mới và sửa lỗi, nhưng cũng có thể gặp phải các vấn đề không ổn định hoặc lỗi chưa được khắc phục. Hãy xem xét tính ổn định và tính năng mà bạn cần cho môi trường của mình.
  • Hỗ trợ dài hạn: Kiểm tra xem phiên bản Ceph bạn chọn có hỗ trợ dài hạn (long-term support) hay không. Hỗ trợ dài hạn cung cấp bảo mật và cập nhật ổn định trong một khoảng thời gian kéo dài, giúp giảm thiểu rủi ro và công việc cần thiết để duy trì và nâng cấp hệ thống.

Dựa trên thông tin hiện tại, phiên bản “Pacific (16.2)” có thể là một lựa chọn tốt cho Proxmox VE, vì đó là phiên bản mới nhất và có thể mang lại nhiều tính năng và cải tiến mới nhất. Tuy nhiên, hãy xem xét các yếu tố khác như hỗ trợ và tương thích với phiên bản Proxmox VE của bạn trước khi quyết định chọn phiên bản nào.

Sau khi lựa chọn phiên bản và bấm Start pacific installation, bạn được dẫn tới màn hình terminal xác nhận việc cài đặt các gói liên quan đến ceph. Hãy gõ vào Y và bấm Enter để quá trình tải và cài đặt các gói tin được tiến hành.

Sau khi cài đặt xong, nút Next sẽ hết màu xám chuyển sang xanh đậm, bạn bấm vào nó để chuyển sang Configuration.

Trong Ceph Cluster Configuration, các trường Public Network IP/CIDR, Cluster Network IP/CIDR, Number of replicas và Minimum replicas đóng vai trò quan trọng trong việc đảm bảo an toàn dữ liệu và tối ưu hóa hệ thống. Dưới đây là giải thích cho từng trường:

  • Public Network IP/CIDR: Đây là địa chỉ IP và CIDR mạng được sử dụng để truyền thông giữa các node trong cụm Ceph. Nó cũng được sử dụng để truy cập và quản lý cụm Ceph từ bên ngoài. Bạn nên chọn một phạm vi IP không trùng lặp và phù hợp với mạng của bạn.
  • Cluster Network IP/CIDR: Đây là địa chỉ IP và CIDR mạng được sử dụng để truyền thông giữa các OSD (Object Storage Device) trong cụm Ceph. Địa chỉ IP này thường thuộc vào một mạng riêng biệt và không được sử dụng bởi các thiết bị khác trong hệ thống.
  • Number of replicas: Đây là số lượng bản sao dữ liệu được tạo ra và phân phối trên các OSD trong cụm Ceph. Số lượng bản sao này đảm bảo sự an toàn và độ tin cậy của dữ liệu. Thông thường, bạn nên có ít nhất 2 bản sao (replicas) để đảm bảo dữ liệu vẫn sẽ tồn tại khi có lỗi xảy ra trên một OSD. Số lượng replicas cũng có thể được tăng lên để đáp ứng yêu cầu hiệu suất và độ tin cậy cao hơn.
  • Minimum replicas: Đây là số lượng bản sao tối thiểu mà mỗi đối tượng (object) trong cụm Ceph phải có trước khi được coi là đủ. Nếu số lượng bản sao hiện tại của một đối tượng ít hơn số lượng này, hệ thống sẽ tự động tạo thêm các bản sao để đảm bảo tuân thủ số lượng replicas tối thiểu. Giá trị này thường được thiết lập nhỏ hơn hoặc bằng số replicas đã chọn.

Trong trường hợp của bạn với cụm 3 node, để đảm bảo an toàn dữ liệu và tối ưu hóa hệ thống, bạn có thể cân nhắc lựa chọn các giá trị như sau:

  • Public Network IP/CIDR: 192.168.13.0/23 (sử dụng phạm vi mạng hiện có)
  • Cluster Network IP/CIDR: 10.0.0.0/24 (sử dụng phạm vi mạng hiện có)

Trong Ceph, bạn cần xác định hai loại mạng IP/CIDR: Public Network và Cluster Network. Mục đích của từng loại mạng là khác nhau và tùy thuộc vào nhu cầu cụ thể của bạn.

  • Public Network IP/CIDR:
    • Mạng này dùng để kết nối với máy chủ Ceph Cluster từ mạng ngoài (ví dụ: internet hoặc mạng nội bộ).
    • Nếu bạn muốn đạt được tốc độ cao cho kết nối từ mạng ngoài đến Ceph Cluster, thì bạn nên cân nhắc sử dụng mạng 10Gbps hoặc tốc độ cao hơn để đảm bảo hiệu suất tốt.
  • Cluster Network IP/CIDR:
    • Mạng này được sử dụng cho giao tiếp nội bộ giữa các thành phần của Ceph Cluster (OSD, MON, MGR, RADOS Gateway, …).
    • Tốc độ của mạng Cluster Network nên phụ thuộc vào yêu cầu của cụm Ceph của bạn và kết nối giữa các thành phần. Nếu bạn sử dụng Ceph cho lưu trữ tốc độ cao, thì tốc độ mạng Cluster Network cũng nên cao hơn để đảm bảo hiệu suất ổn định.

Nói chung, mạng Public Network thường cần tốc độ cao khi bạn cần truy cập Ceph Cluster từ bên ngoài và đảm bảo hiệu suất tốt cho ứng dụng hoặc dịch vụ sử dụng Ceph. Trong khi đó, mạng Cluster Network cần phù hợp với hiệu suất và yêu cầu nội bộ của Ceph Cluster, và cần cân nhắc dựa trên kích thước và mục đích cụm Ceph.

Nếu bạn đã lỡ chọn mạng tốc độ cao (ví dụ: mạng 10Gbps) cho mạng Public Network trong cụm Ceph, bạn vẫn có thể kết nối từ internet vào cụm Ceph. Tuy nhiên, việc này đòi hỏi một số xử lý bổ sung để đảm bảo tính bảo mật và khả năng kết nối từ bên ngoài.

Dưới đây là một số bước bạn có thể thực hiện:

  • Firewall Rules: Đảm bảo rằng bạn đã cấu hình tường lửa (firewall) cho mạng Public Network sao cho các dịch vụ và cổng mà bạn muốn truy cập từ internet đã được mở.
  • NAT (Network Address Translation): Nếu máy chủ Ceph Cluster không có địa chỉ IP công cộng trực tiếp trên mạng Public Network, bạn có thể cần cấu hình NAT để chuyển tiếp các yêu cầu từ internet đến máy chủ trong Cluster.
  • Bảo mật: Sử dụng một phương pháp bảo mật mạng, ví dụ như VPN (Virtual Private Network), để giảm thiểu rủi ro từ việc mở các cổng trực tiếp lên internet. VPN có thể giúp bảo vệ tính bảo mật của dữ liệu và máy chủ Ceph.
  • Tối ưu hóa hiệu suất: Đảm bảo rằng mạng Public Network được cấu hình đúng cách để đảm bảo hiệu suất tốt khi truy cập từ internet.

Ngoài ra, cần lưu ý rằng việc mở cổng từ internet vào cụm Ceph đưa ra ngoài mạng có thể làm tăng rủi ro về bảo mật. Vì vậy, bạn nên áp dụng các biện pháp bảo mật tốt như cập nhật hệ thống thường xuyên, sử dụng chứng chỉ SSL/TLS, và quản lý quyền truy cập một cách cẩn thận.

  • Number of replicas: 3 (tối thiểu 3 bản sao cho độ tin cậy)
  • Minimum replicas: 2 (ít nhất 2 bản sao trước khi tạo thêm)

Số lượng Number of replicas và Minimum replicas ảnh hưởng đến độ tin cậy và hiệu suất của cụm Ceph. Tuy nhiên, tăng số lượng replicas có thể làm giảm hiệu suất IO storage do tăng thời gian ghi và đọc dữ liệu. Việc có nhiều bản sao dữ liệu đồng nghĩa với việc dữ liệu phải được sao chép và phân phối trên nhiều OSD, làm tăng tải cho hệ thống.

Do đó, khi lựa chọn số lượng replicas, bạn cần cân nhắc giữa độ tin cậy và hiệu suất. Nếu bạn đặt số lượng replicas cao, độ tin cậy của dữ liệu sẽ được đảm bảo, nhưng hiệu suất IO storage có thể bị ảnh hưởng. Ngược lại, nếu bạn giảm số lượng replicas, hiệu suất IO storage có thể được cải thiện, nhưng độ tin cậy của dữ liệu có thể giảm.

Trước khi quyết định số lượng replicas và minimum replicas, bạn nên xác định rõ yêu cầu của ứng dụng và dữ liệu trong cụm Ceph của mình. Bạn có thể thử nghiệm và đánh giá hiệu suất và độ tin cậy của hệ thống với các giá trị replicas khác nhau để tìm ra sự cân nhắc phù hợp nhất cho môi trường của bạn. Và dưới đây là thiết lập của mình.

Phần Success sẽ hướng dẫn bạn quy trình triển khai sau khi khởi tạo xong Ceph Cluster. Nội dung của nó như hình dưới.

Mình tạm dịch ra như sau:

Sau khi hoàn thành quá trình cài đặt và cấu hình cơ bản, bạn cần thực hiện các bước tiếp theo để sử dụng Ceph:

1. Cài đặt Ceph trên các node khác (Install Ceph on other nodes): Bước này đòi hỏi bạn cài đặt và cấu hình Ceph trên các node khác trong cụm của mình. Điều này có thể bao gồm cài đặt gói ceph-deploy và thực hiện quy trình cài đặt tương tự như trên node ban đầu.

2. Tạo thêm Ceph Monitors (Create additional Ceph Monitors): Ceph Monitor là một thành phần quan trọng trong cụm Ceph, giúp quản lý metadata và tạo ra bản đồ Ceph cluster. Bạn cần tạo thêm Ceph Monitors trên các node khác để tăng tính sẵn sàng và độ tin cậy cho hệ thống.

3. Tạo Ceph OSDs (Create Ceph OSDs): OSD (Object Storage Daemon) là thành phần lưu trữ dữ liệu thực tế trong Ceph cluster. Bạn cần tạo Ceph OSDs trên các node trong cụm để cung cấp dung lượng lưu trữ và hiệu suất cho hệ thống.

4. Tạo Ceph Pools (Create Ceph Pools): Ceph Pool là một nhóm các OSDs dùng để lưu trữ dữ liệu. Bạn cần tạo Ceph Pools để quản lý việc lưu trữ và phân phối dữ liệu trong cụm Ceph.

Thông qua các bước trên, bạn sẽ có một cụm Ceph hoạt động và sẵn sàng để sử dụng. Để biết thêm chi tiết về các bước cài đặt và cấu hình, bạn có thể nhấp vào nút "Help" hoặc "Trợ giúp" để có thông tin chi tiết hơn.

Sau khi bạn bấm Finish, bạn sẽ thấy được 1 dashboard đơn giản như vậy.

Tiếp theo chúng ta bấm vào phần Monitor, chúng ta sẽ thấy có 2 thành phần quan trọng ở đây đó là Monitor và Manager.

  • Ceph Monitor (Ceph Mon) là một thành phần quan trọng trong hệ thống Ceph. Nhiệm vụ chính của Ceph Monitor là theo dõi trạng thái của Ceph cluster, quản lý metadata và phân phối thông tin cho các thành phần khác trong hệ thống. Mỗi Ceph Monitor lưu trữ một bản sao của bản đồ Ceph cluster (Ceph cluster map), đảm bảo tính sẵn sàng và độ tin cậy của hệ thống.
  • Ceph Manager (Ceph Mgr) là một dịch vụ quản lý trong Ceph, cung cấp các tính năng quản lý hệ thống, theo dõi hiệu suất, cung cấp dịch vụ địa chỉ IP và các tính năng khác. Ceph Manager giúp quản lý và giám sát Ceph cluster một cách hiệu quả, cho phép người quản trị tương tác với hệ thống Ceph thông qua giao diện dòng lệnh hoặc giao diện đồ họa.

Hãy bấm vào Create để mở hộp thoại thêm Node Monitor, mình lựa chọn thêm Node 2 làm Monitor để đảm bảo tính sẵn sàng cao.

Nếu bạn gặp lỗi binary not installed: /usr/bin/ceph-mon (500) tức là bạn chưa cài Ceph-mon vào Node 02.

Hãy lựa chọn Node 02 (1) và chọn Ceph (2), bấm Install Ceph (2).

Hãy lựa chọn đúng version pacific (16.2) mà lúc trước bạn đã cài cho Node 1 (1), sau đó bấm Start pacific installation để quá trình cài đặt bắt đầu.

Xác nhận Y và bấm Enter để cài đặt.

Khác với lúc cài đặt ở Node 1, ở các Node 2 trở đi thì khi cài đặt xong bạn sẽ nhận được thông báo “Connection to 192.168.13.227 closed.”, tức là tiến trình cài đặt đã hoàn thành và đóng kết nối terminal, mục đích là không cho phép bạn tạo cụm Ceph mới nữa (vì đã có 1 cụm Ceph đã tồn tại trong Cluster). Hãy bấm Next để tiếp tục.

Như tôi đã nói, bước này không cho phép bạn tạo cụm Ceph thứ 2 ở trong cụm Proxmox nữa. Bấm Next để tiếp tục.

Vẫn là dòng nhắc nhở như trên, mình đã giải thích ở trên luôn rồi. Giờ hãy bấm Finish để kết thúc cài đặt.

Sau khi cài đặt xong Ceph trên Node 2, bạn chọn Node 2 bạn cũng sẽ thấy các thông tin mà Node 1 đã tạo ra.

Giờ bạn hãy tiến hành thêm Ceph Monitor nhé.

Kết quả thêm Ceph Monitor cho Node 2 thành công, mình sẽ làm tương tự cho Node 3 và dưới đây là kết quả.

Tiếp theo để đảm bảo tính sẵn sàng cao cho Ceph Manager, mình sẽ tạo thêm nó bằng cách bấm vào Create tại phần Manager.

Mình lựa chọn Node 2 (1) và bấm Create (2).

Áp dụng cho Node 3 và mình có kết quả.

Tạo các OSDs.

Trong Ceph, OSD (Object Storage Daemon) là một phần quan trọng trong hệ thống. OSD có nhiệm vụ quản lý và lưu trữ dữ liệu trên các ổ đĩa vật lý hoặc phân vùng ổ đĩa trên các node trong cụm Ceph. OSD chịu trách nhiệm xử lý việc ghi và đọc dữ liệu, sao lưu và phục hồi dữ liệu, cũng như phân phối và điều phối dữ liệu trên các OSD trong cụm.

Trên Proxmox VE, khi triển khai Ceph, các OSD sẽ được tạo và quản lý bởi Proxmox VE trên các node trong cụm. Các OSD sẽ được gắn kết với các ổ đĩa hoặc phân vùng ổ đĩa đã được cấu hình trên các node và sẽ chịu trách nhiệm lưu trữ và xử lý dữ liệu trong Ceph cluster.

Bạn có thể để ý thấy nếu bây giờ chúng ta bấm vào Ceph và xem Status của nó thì đang ở trạng thái Warning như dưới, bạn hãy xem dòng thông báo "OSD count 0 < osd pool default size 3", nó có nghĩa là số lượng OSD (Object Storage Daemon) hiện tại trong cụm Ceph là 0, trong khi kích thước mặc định của các pool OSD là 3.

Trong Ceph, pool OSD được sử dụng để lưu trữ dữ liệu và chịu trách nhiệm sao lưu và phục hồi dữ liệu. Mỗi pool OSD có một kích thước mặc định, xác định số lượng bản sao (replica) của dữ liệu được lưu trữ trên các OSD khác nhau. Trong trường hợp này, kích thước mặc định của pool OSD là 3, có nghĩa là mỗi đối tượng dữ liệu sẽ có 3 bản sao được lưu trữ trên 3 OSD khác nhau.

Tuy nhiên, do hiện tại số lượng OSD trong cụm Ceph là 0, không có OSD nào có sẵn để lưu trữ dữ liệu, việc đạt được kích thước mặc định của pool OSD là không thể. Để giải quyết vấn đề này, bạn cần tạo và cấu hình OSD trên các node trong cụm Ceph để đảm bảo số lượng OSD đủ để đáp ứng kích thước mặc định của pool OSD.

Tôi sẽ cho các bạn view qua về các disk chưa sử dụng của tôi. Để xem danh sách các disk của Node 1, bạn hãy chọn Node 1 (1) -> Disks (2), hệ thống sẽ liệt kê danh sách các disks có sẵn trên hệ thống. Ở mục số (3) chính là các danh sách disks chưa sử dụng, tôi sẽ sử dụng chúng để join vào osd của cụm Ceph.

Như bạn đã thấy khi tôi chọn Node 1 (1), tại phần Ceph -> OSD (2) bạn sẽ không thấy một OSD nào tồn tại. Tôi sẽ tạo OSD đầu tiên cho cụm bằng cách bấm vào Create OSD (3).

Ở phần cài đặt Create: Ceph OSD, nếu bạn tích vào Advanced bạn sẽ có thêm một số cài đặt nâng cao như sau:

  • Encrypt OSD: Đây là tính năng trong Ceph cho phép mã hóa dữ liệu được lưu trữ trên OSD (Object Storage Daemon). Khi OSD được mã hóa, dữ liệu sẽ được mã hóa trước khi được lưu trữ trên ổ đĩa và chỉ được giải mã khi được truy xuất. Điều này giúp bảo vệ dữ liệu khỏi việc truy cập trái phép trong trường hợp ổ đĩa bị mất hoặc đánh cắp.
  • Device Class (HDD, SSD và NVMe): Trong Ceph, Device Class đề cập đến loại thiết bị lưu trữ được sử dụng cho OSD. Ceph hỗ trợ sử dụng các loại thiết bị lưu trữ khác nhau như ổ cứng (HDD), ổ đĩa rắn (SSD) và ổ đĩa NVMe (Non-Volatile Memory Express). Mỗi loại thiết bị có hiệu năng và đặc tính khác nhau và việc chọn loại thiết bị phù hợp phụ thuộc vào yêu cầu và hiệu suất của hệ thống.
  • DB Disk và WAL Disk: Trong Ceph, OSD sử dụng RocksDB làm cơ sở dữ liệu để lưu trữ các metadata và thông tin quản lý. Để cải thiện hiệu suất của OSD, có thể sử dụng DB Disk (đĩa cơ sở dữ liệu) và WAL Disk (Write-Ahead Log Disk).
    • DB Disk: Đây là một ổ đĩa được sử dụng để lưu trữ RocksDB, nơi lưu trữ các metadata và thông tin quản lý. Việc sử dụng DB Disk riêng biệt cho OSD giúp cải thiện hiệu suất truy vấn metadata và tăng tốc độ xử lý của OSD.
    • WAL Disk: Write-Ahead Log (WAL) là một kỹ thuật được sử dụng để đảm bảo tính nhất quán dữ liệu trong trường hợp mất mát điện hoặc sự cố khác. WAL Disk là một ổ đĩa riêng biệt được sử dụng để ghi log trước khi dữ liệu thực sự được ghi vào OSD. Điều này giúp đảm bảo tính toàn vẹn của dữ liệu và khôi phục lại trạng thái trước khi xảy ra sự cố.

Các ổ đĩa đã được lựa chọn cho DB Disk và WAL Disk cũng có thể được sử dụng để tham gia vào việc làm OSD. Trên mỗi OSD, bạn có thể cấu hình sử dụng một hoặc nhiều ổ đĩa để lưu trữ dữ liệu.

Khi sử dụng các ổ đĩa đã được chỉ định cho DB Disk và WAL Disk làm OSD, bạn có thể tiết kiệm tài nguyên vật lý và tối ưu hóa sử dụng không gian đĩa. Tuy nhiên, điều này có thể ảnh hưởng đến hiệu suất và độ tin cậy của hệ thống. Vì vậy, bạn cần xem xét cân nhắc và kiểm tra hiệu suất của OSD khi sử dụng các ổ đĩa chung cho DB Disk, WAL Disk và dữ liệu OSD.

Nếu hiệu suất và độ tin cậy là ưu tiên hàng đầu, bạn nên xem xét sử dụng các ổ đĩa riêng biệt cho DB Disk, WAL Disk và dữ liệu OSD để đảm bảo tính riêng tư, tách biệt và tối ưu hóa hiệu suất của mỗi thành phần.

Nếu bạn không lựa chọn DB Disk và WAL Disk, thì trong trường hợp cài đặt mặc định, Ceph OSD sẽ sử dụng thư mục /var/lib/ceph/osd trên mỗi node để lưu trữ các file OSD, bao gồm cả dữ liệu OSD, DB (leveldb) và WAL (write-ahead log).

Thư mục /var/lib/ceph/osd sẽ chứa các thư mục con tương ứng với từng OSD, được đặt theo định dạng ceph-<OSD ID>. Trong mỗi thư mục OSD, bạn sẽ tìm thấy các file và thư mục liên quan đến dữ liệu OSD.

Tuy nhiên, việc sử dụng DB Disk và WAL Disk được khuyến nghị để tối ưu hóa hiệu suất của hệ thống Ceph. Bằng cách sử dụng các ổ đĩa riêng biệt cho DB Disk và WAL Disk, bạn có thể cải thiện hiệu suất ghi và đọc dữ liệu, đồng thời giảm tải cho OSD.

Và đây là OSD đầu tiên được thêm vào ở Node 01.

Tôi tiếp tục thực hiện cho các disks còn lại trên Node 1. Nếu bạn nhận được thông báo “No Disks unused” tại phần Disk thì tức là các disk trống của bạn đã hết, bạn có thể bổ sung disk vào để tiếp tục hoặc nếu bạn muốn dùng nhiêu đó disk thì chúng ta có thể dừng lại.

Và đây là kết quả khi tôi thêm các OSD của Node 1 vào Ceph Cluster.

Lưu ý là các disks muốn tham gia vào OSD phải là các disks chưa được sử dụng. Các bạn có thể vào phần disk để xem thông tin này. Theo thông tin hình chụp ở dưới thì danh sách này chỉ có duy nhất ổ đĩa /dev/sdb đủ điều kiện join vào OSD, vì ở phần Usage nó đang ở trạng thái No.

Bằng chứng là khi bạn vào thiết lập OSD, trong danh sách disk bạn chỉ thấy duy nhất mỗi ổ đĩa /dev/sdb hiện lên.

Trường hợp này tôi sẽ chọn ổ đĩa đang có trạng thái khác No và chọn tính năng Wipe Disk.

Bấm Yes để đồng ý xoá toàn bộ dữ liệu của ổ đĩa này.

Sau khi Wipe Disk xong, bạn sẽ nhận được kết quả Usage là No như dưới.

Tiếp tục thao tác như vậy cho các ổ đĩa có trạng thái Usage khác No và tôi có kết quả như dưới.

Bây giờ bạn có thể dùng các disk này ở Node 2 để làm OSD cho cụm bình thường.

Kết quả khi tạo các OSD trên Node 2 thành công.

Áp dụng luôn cho Node thứ 3, tôi có kết quả như hình dưới.

Bạn sẽ nhận biết một cách dễ dàng ổ đĩa nào đang sử dụng làm OSD khi nhìn vào cột Usage, nó sẽ có dòng thông báo “LVM, Ceph (OSD.<osd_number>) như hình dưới.

Và đây là kết quả khi bạn triển khai thành công 1 cụm Ceph trong Proxmox.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

4,956FansLike
256FollowersFollow
223SubscribersSubscribe
spot_img

Related Stories