Cách cài đặt cơ sở dữ liệu Apache Cassandra NoSQL trên Debian 11

Tác giả NetworkEngineer, T.Một 27, 2022, 10:11:36 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách cài đặt cơ sở dữ liệu Apache Cassandra NoSQL trên Debian 11


Apache Cassandra là một cơ sở dữ liệu phân tán mã nguồn mở được phát triển cho điện toán đám mây. Nó cung cấp dịch vụ cơ sở dữ liệu khả dụng và có khả năng mở rộng cao mà không có điểm lỗi nào và không cần điều chỉnh thủ công.

Apache Cassandra là một trong những cơ sở dữ liệu phổ biến nhất được sử dụng trong trí tuệ nhân tạo để giúp tạo ra robot. Với khả năng mở rộng quy mô nhanh chóng bằng cách sử dụng phần cứng hàng hóa, Cassandra có thể trở thành một trong những hệ thống lưu trữ dữ liệu chính cung cấp năng lượng cho các thiết bị quản lý dữ liệu robot trong tương lai.

Apache Cassandra là một cơ sở dữ liệu NoSQL. Với việc bổ sung giao diện Apache Thrift, Cassandra có thể được sử dụng để lưu trữ và quản lý dữ liệu mà không cần sử dụng SQL, đồng thời cho phép các nhà phát triển sử dụng các giao thức phát triển ứng dụng quen thuộc như REST và Thrift.

Cassandra chủ yếu được phát triển bởi kỹ sư Facebook Prashant Malik. Cơ sở dữ liệu này được đặt theo tên vợ của người đồng sáng lập Facebook, người đã qua đời trong một vụ tai nạn xe hơi vào năm 2008. Nó được xây dựng trên kiến ​​trúc BigTable của Google, với hỗ trợ phân phối, nhân rộng, phát hiện lỗi và cân bằng tải bằng Apache ZooKeeper.

Trong Cassandra, dữ liệu được trải rộng trên một cụm máy chủ. Nó không có điểm lỗi duy nhất và có thể chịu được sự mất mát của bất kỳ số lượng máy nào mà không làm mất dữ liệu. Nếu cần, tổng công suất của hệ thống có thể được tăng lên đơn giản bằng cách thêm nhiều máy hơn. Cassandra được thiết kế để xử lý các lỗi thường xuyên và mất máy tùy ý rất tốt với chi phí ghi sẵn sàng trong khi việc sửa chữa đang diễn ra.

Có rất nhiều lợi ích khi sử dụng Apache Cassandra làm cơ sở dữ liệu NoSQL. Tuy nhiên, nó có thể khó cài đặt và bắt đầu. Trong hướng dẫn này, mình sẽ chỉ cho bạn cách bắt đầu với Cassandra trên máy chủ Debian 11 của riêng bạn và làm cho nó đơn giản nhất có thể.

Bạn sẽ học cách tạo một cụm Apache Cassandra trên máy tính của mình. Ngoài ra, bạn sẽ học cách sử dụng chương trình khách 'cqlsh' để tương tác với cơ sở dữ liệu Cassandra mà bạn đã cài đặt trên máy tính của mình.

Sau khi đọc hướng dẫn này, bạn sẽ có thể cài đặt và sử dụng Cassandra trên máy tính của mình một cách dễ dàng.

1. Điều kiện tiên quyết

Để hoàn thành hướng dẫn này, bạn sẽ cần một máy chủ Ubuntu 20.04 hoặc Debian 11 với các thông số kỹ thuật sau:

  • RAM tối thiểu 2GB, mỗi CPU 2 nhân tốc độ 2.0 GHz. Ổ cứng trống ít nhất 40 GB để cài đặt.
  • Một người dùng không phải root nhưng có đặc quyền sudo được thiết lập trên máy chủ của bạn.

2. Cập nhật hệ thống của bạn

Trước hết, hãy đảm bảo rằng bạn đã cập nhật bằng cách đưa ra lệnh sau trên máy chủ của mình.

Mã nguồn [Chọn]
$ sudo apt update -y && sudo apt upgrade -y
Tiếp theo, cài đặt các gói cần thiết cần thiết cho Cassandra.

Mã nguồn [Chọn]
$ sudo apt install build-essential binutils bsdmainutils gnupg2 curl -y
3. Cài đặt Java (JDK)

Tiếp theo, mình sẽ cài đặt Bộ công cụ phát triển Java (JDK) trên máy chủ của bạn.

Java Development Kit (JDK) chứa một trình biên dịch và các công cụ để phát triển các chương trình Java.

Cần phải chạy chương trình máy khách Cassandra cqlsh và do đó là máy chủ Cassandra. Theo mặc định, cqlsh tìm kiếm Môi trường thời gian chạy Java (JRE) được cài đặt trên máy tính của bạn. Nhưng đôi khi, có thể khó cài đặt JRE trên hệ thống dựa trên Ubuntu hoặc Debian vì chúng được cài đặt theo mặc định.

Trong bản demo này, mình sẽ cài đặt OpenJDK 11 JDK ổn định chính thức. OpenJDK là bản phát hành OpenJDK ổn định chính thức của Oracle và là giải pháp thay thế tốt nhất của JRE, sẽ không làm bạn thất vọng nếu bạn muốn sử dụng JDK để phát triển ứng dụng tuyệt vời tiếp theo của mình.

Chạy lệnh dưới đây để cài đặt openjdk-11-openjdk trên máy chủ của bạn.

Mã nguồn [Chọn]
$ sudo apt install openjdk-11-jre -y
Sau khi cài đặt, hãy chạy lệnh dưới đây để kiểm tra để đảm bảo rằng nó đã được cài đặt đúng cách.

Mã nguồn [Chọn]
$ java -version
Version là lệnh tích hợp sẵn của terminal hiển thị cho bạn phiên bản Java được cài đặt trên hệ thống của bạn. Nếu bạn thấy số phiên bản như hình bên dưới có nghĩa là bạn đã cài đặt thành công JDK này.


4. Cài đặt Apache Cassandra NoSQL DB trên Debian 11

Bây giờ mình đã cập nhật hệ thống của mình và cài đặt các gói cần thiết, mình đã sẵn sàng cài đặt Cassandra trên máy chủ của mình.

Theo mặc định, kho lưu trữ cơ sở của Debian 11 không bao gồm Cassandra. Để cài đặt Cassandra, mình sẽ phải thêm kho lưu trữ Cassandra chính thức từ nhà phát triển Cassandra.

Kho lưu trữ Cassandra chính thức chứa các bản phát hành ổn định mới nhất của Cassandra, các phụ thuộc và các tiện ích bổ sung của nó.

Chạy lệnh bên dưới để thêm khóa xác thực của kho lưu trữ Cassandra chính thức. Lệnh này thêm khóa xác thực của kho lưu trữ Cassandra chính thức vào khóa APT của hệ thống của bạn.

Việc thêm khóa xác thực ngăn các cá nhân trái phép thêm một kho lưu trữ độc hại có chứa phiên bản Cassandra được kiểm duyệt hoặc phần mềm độc hại. Nó cũng xác minh rằng bạn đang truy cập vào kho lưu trữ chính thức và không phải là một kho lưu trữ mạo danh.

Mã nguồn [Chọn]
$ curl https://downloads.apache.org/cassandra/KEYS | apt-key add -
Bạn sẽ nhận được thông báo OK nếu khóa xác thực đã được thêm thành công.


Bây giờ, hãy thêm kho lưu trữ Cassandra chính thức vào danh sách nguồn APT của hệ thống của bạn. Lệnh này sẽ thêm kho lưu trữ Cassandra chính thức vào danh sách nguồn APT của hệ thống của bạn. Thông tin khóa GPG được sử dụng để ký các gói được tự động truy xuất từ ​​mạng máy chủ khóa tại thời điểm này.

Mã nguồn [Chọn]
$ echo "deb https://downloads.apache.org/cassandra/debian 40x main" | tee -a /etc/apt/sources.list.d/cassandra.list
Sau khi thêm kho lưu trữ Cassandra chính thức vào hệ thống của bạn, hãy chạy lệnh bên dưới để cập nhật danh sách nguồn APT của bạn.

Mã nguồn [Chọn]
$ sudo apt update -y
Sau khi bạn đã cập nhật danh sách nguồn APT của mình, hãy chạy lệnh bên dưới để xác minh xem liệu kho lưu trữ Cassandra chính thức có được thêm đúng vào danh sách nguồn APT của hệ thống của bạn hay không.

Mã nguồn [Chọn]
$ apt-cache policy
Bạn sẽ nhận được một đầu ra tương tự như bên dưới. Bạn có thể thấy rằng kho lưu trữ đã được thêm đúng vào danh sách nguồn APT của hệ thống của bạn. Bạn nên đảm bảo rằng phiên bản của kho lưu trữ được hiển thị là 40x trong đầu ra trước khi bạn tiến hành bước tiếp theo.


Bây giờ, bạn có thể cài đặt Cassandra bằng lệnh bên dưới trong cửa sổ dòng lệnh Terminal hoặc dấu nhắc lệnh của mình.

Mã nguồn [Chọn]
$ sudo apt install cassandra -y
Sau khi cài đặt, hãy chạy lệnh sau để kiểm tra xem Cassandra đã được cài đặt đúng cách trên hệ thống của bạn chưa. Bạn sẽ nhận được trạng thái của Cassandra đã cài đặt của bạn.

Mã nguồn [Chọn]
$ sudo systemctl status cassandra

5. Thử nghiệm Apache Cassandra

Bây giờ bạn đã cài đặt thành công Cassandra, bạn đã sẵn sàng để kiểm tra nó. Vì vậy, mình sẽ bắt đầu với việc kiểm tra máy chủ Cassandra bằng cách sử dụng nodetool. Nodetool là một tiện ích được sử dụng để chẩn đoán sự cố với cài đặt Cassandra của bạn.

Nó đọc thông tin từ Cassandra về những nút nào đang hoạt động, cần có bao nhiêu bản sao cho mỗi họ cột, v.v. Sau đó, nó in ra thông tin nó nhận được từ Cassandra và so sánh điều này với những gì bạn mong đợi sẽ thấy, dựa trên lược đồ. Nó cố gắng bắt các vấn đề cấu hình cơ bản.

Chạy lệnh nodetool status để kiểm tra lỗi và cảnh báo về cài đặt của bạn.

Mã nguồn [Chọn]
$ nodetool status
Bạn sẽ nhận được một đầu ra tương tự như bên dưới. Nếu không có lỗi, bạn đã cài đặt thành công Cassandra trên máy chủ của mình.


Bạn cũng có thể sử dụng ứng dụng khách cqlsh để kiểm tra Cassandra. Cqlsh là chương trình máy khách Cassandra chính thức đi kèm với Cassandra. Trong bản demo này, mình sẽ tiếp tục thử nghiệm Cassandra trên máy chủ của bạn bằng cách sử dụng cqlsh để thay đổi tên mặc định của cụm trên hệ thống của bạn. Và sau đó kiểm tra lại tên của cụm.

Chạy lệnh cqlsh bên dưới để đăng nhập vào máy chủ Cassandra của bạn.

Mã nguồn [Chọn]
$ cqlsh
Bạn sẽ thấy một màn hình tương tự như bên dưới.


Để thay đổi tên của cụm trên hệ thống của bạn, hãy thêm truy vấn bên dưới tại lời nhắc và nhấn Enter.

Gõ exit và nhấn Enter để thoát khỏi cqlsh.

Mở tập tin /etc/cassandra/cassandra.yaml trong trình soạn thảo văn bản.

Mã nguồn [Chọn]
$ sudo nano /etc/cassandra/cassandra.yaml
Tìm dòng cluster_name: 'Test Cluster' và đổi tên thành VietNetwork. Lưu và thoát tập tin bằng cách gõ Ctrl + O, sau đó nhấn Enter, rồi Ctrl + X để thoát.

Trước


Sau


Bây giờ cụm của bạn được đặt tên là VietNetwork, hãy kiểm tra lại tên cụm trên máy chủ của bạn.

Mã nguồn [Chọn]
$ cqlsh
Nếu bạn có thể thấy rằng tên của cụm được thay đổi thành VietNetwork theo hệ thống của mình, điều đó có nghĩa là bạn đã thay đổi thành công tên của cụm của mình bằng cách sử dụng ứng dụng khách cqlsh của Cassandra trong cửa sổ dòng lệnh Terminal của bạn.


Trong bài viết này, mình đã hướng dẫn cách cài đặt Cassandra trên máy chủ Debian 11. Và cách thử nghiệm cài đặt bằng cách đăng nhập vào hệ thống bằng cqlsh và đổi tên cluster từ Test Cluster thành VietNetwork. Nếu bạn muốn tìm hiểu thêm về Cassandra, hãy truy cập trang web chính thức của nó https://cassandra.apache.org/doc/latest/