CockroachDB là một cơ sở dữ liệu SQL phân tán và có thể mở rộng nguồn mở cho các ứng dụng đám mây. CockroachDB cung cấp tính nhất quán ở cấp độ tiếp theo, cơ sở dữ liệu SQL được sao chép và kho lưu trữ dữ liệu giao dịch. CockroachDB lưu trữ dữ liệu của bạn ở nhiều vị trí giúp việc phân phối dữ liệu nhanh hơn. Ngoài ra, CockroachDB dễ dàng mở rộng và cung cấp tính khả dụng cao cùng khả năng chịu lỗi cho các ứng dụng của bạn.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt cụm CockroachDB trên máy chủ Debian 11.
Tải xuống tệp nhị phân cockroachdb cho Linux bằng lệnh sau. Lệnh này sẽ tải xuống tệp nhị phân cockroachdb, giải nén tệp đã nén, sau đó di chuyển tệp nhị phân của cockroachdb đến thư mục /usr/local/bin.
Cockroachdb sử dụng thư viện GEOS tích hợp tùy chỉnh. Thư viện GEOS được bao gồm trong tệp nén của cockroachdb và phải được cài đặt trong thư mục lib.
Tạo một thư mục mới /usr/local/lib/cockroach bằng lệnh bên dưới.
Bây giờ hãy sao chép thư viện GEOS vào thư mục /usr/local/lib/cockroach.
Cài đặt cơ bản của cockroachdb được cài đặt trên máy chủ Debian.
Chạy lệnh sau để kiểm tra tệp nhị phân cockroachdb và phiên bản cockroachdb hiện tại mà bạn vừa cài đặt.
Bạn sẽ nhận được kết quả sau.
Cockroachdb đã sử dụng cổng 8080 cho cockroachdb quản trị dựa trên web và cổng 26257 cho các kết nối người dùng và cấu hình cụm.
Thêm các cổng 8080 và 25267 vào tường lửa UFW bằng lệnh sau.
Bây giờ hãy tải lại UFW quy tắc tường lửa và xác minh trạng thái hiện tại của các quy tắc tường lửa.
Dưới đây, bạn có thể thấy các cổng 8080 và 25267 được thêm vào tường lửa UFW.
Bạn sẽ cần thay đổi giá trị của các tùy chọn sau:
Bạn sẽ nhận được đầu ra sau.
Bây giờ hãy chuyển đến server2 và chạy lệnh sau để khởi động cockroachdb và tham gia cụm. Thay đổi địa chỉ IP trên --listen-addr và --http-addr thành địa chỉ IP của server2.
Bạn sẽ nhận được đầu ra sau từ server2.
Tiếp theo, di chuyển đến server3 và chạy lệnh sau để khởi động cockroachdb và tham gia cụm cockroachdb. Ngoài ra, hãy thay đổi địa chỉ IP của --listen-addr và --http-addr thành địa chỉ IP của server3.
Bạn sẽ nhận được đầu ra sau từ server3.
Sau khi hoàn tất, hãy quay lại server11 và chạy lệnh bên dưới để khởi tạo cụm cockroachdb.
Bạn sẽ nhận được thông báo đầu ra 'cluster successfully initialized', nghĩa là cụm cockroachdb đã được khởi tạo thành công.
Bạn có thể chạy lệnh grep bên dưới để kiểm tra nhật ký khởi tạo cockroachdb. Thay đổi thư mục server11 bằng thư mục cockroachdb --store của bạn.
Dưới đây, bạn có thể thấy nhật ký từ quá trình khởi tạo cụm cockroachdb server11.
Cuối cùng, hãy mở trình duyệt web và truy cập địa chỉ IP của máy chủ theo sau là cổng 8080.
Dưới đây, bạn có thể thấy có ba nút trên cụm cockroachdb.
Chạy lệnh cockroach trên server11 để kết nối với cụm cockroachdb.
Sau khi bạn đã kết nối với shell SQL, hãy chạy truy vấn bên dưới để tạo cơ sở dữ liệu mới.
Bây giờ hãy tạo một bảng mới trên cơ sở dữ liệu bằng truy vấn sau.
Tiếp theo, nhập dữ liệu mẫu vào bảng.
Xác minh dữ liệu trên cơ sở dữ liệu bằng truy vấn sau.
Bạn sẽ nhận kết quả sau.
Tiếp theo, di chuyển đến server2 hoặc server3 và đăng nhập vào shell cockroachdb SQL bằng lệnh sau.
Sau khi bạn đã kết nối với shell SQL trên server3, hãy chạy truy vấn sau để kiểm tra và xác minh bản sao cơ sở dữ liệu.
Bạn sẽ thấy cơ sở dữ liệu và dữ liệu từ server11 được tự động sao chép sang server2 và server3.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt cụm CockroachDB trên máy chủ Debian 11.
Điều kiện tiên quyết
- Hai hoặc nhiều máy chủ Debian 11.
- Mật khẩu gốc được cấu hình trên các máy chủ.
Cài đặt CockroachDB trên cả 3 máy chủ
Đối với quá trình cài đặt, cockroachdb rất dễ cài đặt. Đó là vì cockroachdb cung cấp một tệp nhị phân cho hệ thống Linux mà bạn có thể tải xuống hệ thống của mình.Tải xuống tệp nhị phân cockroachdb cho Linux bằng lệnh sau. Lệnh này sẽ tải xuống tệp nhị phân cockroachdb, giải nén tệp đã nén, sau đó di chuyển tệp nhị phân của cockroachdb đến thư mục /usr/local/bin.
Mã:
curl https://binaries.cockroachdb.com/cockroach-v21.2.8.linux-amd64.tgz | tar -xz && sudo cp -i cockroach-v21.2.8.linux-amd64/cockroach /usr/local/bin/
Tạo một thư mục mới /usr/local/lib/cockroach bằng lệnh bên dưới.
Mã:
mkdir -p /usr/local/lib/cockroach
Mã:
cp -i cockroach-v21.2.8.linux-amd64/lib/libgeos.so /usr/local/lib/cockroach/
cp -i cockroach-v21.2.8.linux-amd64/lib/libgeos_c.so /usr/local/lib/cockroach/
Chạy lệnh sau để kiểm tra tệp nhị phân cockroachdb và phiên bản cockroachdb hiện tại mà bạn vừa cài đặt.
Mã:
cockroach nào
phiên bản cockroach
Thiết lập Tường lửa
Nếu bạn đang chạy Tường lửa trên máy chủ Debian của mình, bạn sẽ cần thêm các cổng cockroachdb vào cấu hình tường lửa.Cockroachdb đã sử dụng cổng 8080 cho cockroachdb quản trị dựa trên web và cổng 26257 cho các kết nối người dùng và cấu hình cụm.
Thêm các cổng 8080 và 25267 vào tường lửa UFW bằng lệnh sau.
Mã:
sudo ufw allow 8080/tcp
sudo ufw allow 26257/tcp
Mã:
sudo ufw reload
sudo ufw status
Đang khởi tạo cụm CockroachDB
Để khởi tạo cụm cockroachdb, hãy chạy lệnh bên dưới trên server11.Bạn sẽ cần thay đổi giá trị của các tùy chọn sau:
- --store: để lưu trữ dữ liệu của cụm CockroachDB.
- --listen-addr: địa chỉ IP mà cockroachdb sẽ chạy trên máy chủ. Cổng mặc định cho cockroachdb là cổng 25267.
- --http-addr: địa chỉ IP mà quản trị viên web cockroachdb sẽ chạy trên đó. Quản trị cockroachdb dựa trên web mặc định là cổng 8080.
Mã:
cockroach start \
--insecure \
--store=server11 \
--listen-addr=192.168.10.11:26257 \
--http-addr=192.168.10.11:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background
Bây giờ hãy chuyển đến server2 và chạy lệnh sau để khởi động cockroachdb và tham gia cụm. Thay đổi địa chỉ IP trên --listen-addr và --http-addr thành địa chỉ IP của server2.
Mã:
cockroach start \
--insecure \
--store=server2 \
--listen-addr=192.168.10.13:26257 \
--http-addr=192.168.10.13:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background
Tiếp theo, di chuyển đến server3 và chạy lệnh sau để khởi động cockroachdb và tham gia cụm cockroachdb. Ngoài ra, hãy thay đổi địa chỉ IP của --listen-addr và --http-addr thành địa chỉ IP của server3.
Mã:
cockroach start \
--insecure \
--store=server3 \
--listen-addr=192.168.10.14:26257 \
--http-addr=192.168.10.14:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background
Sau khi hoàn tất, hãy quay lại server11 và chạy lệnh bên dưới để khởi tạo cụm cockroachdb.
Mã:
cockroach init --insecure --host=192.168.10.11:26257
Bạn có thể chạy lệnh grep bên dưới để kiểm tra nhật ký khởi tạo cockroachdb. Thay đổi thư mục server11 bằng thư mục cockroachdb --store của bạn.
Mã:
grep 'node starting' server11/logs/cockroach.log -A 11
Cuối cùng, hãy mở trình duyệt web và truy cập địa chỉ IP của máy chủ theo sau là cổng 8080.
Dưới đây, bạn có thể thấy có ba nút trên cụm cockroachdb.
Kiểm tra Tạo Cơ sở dữ liệu Mới trên CockroachDB
Bây giờ cụm cockroachdb đang chạy, bạn có thể sử dụng bất kỳ máy chủ nào làm cổng SQL để truy cập cockroachdb.Chạy lệnh cockroach trên server11 để kết nối với cụm cockroachdb.
Mã:
cockroach sql --insecure --host=192.168.10.11:26257
Sau khi bạn đã kết nối với shell SQL, hãy chạy truy vấn bên dưới để tạo cơ sở dữ liệu mới.
Mã:
CREATE DATABASE bank;
Mã:
CREATE TABLE bank.accounts (id INT PRIMARY KEY, balance DECIMAL);
Mã:
INSERT INTO bank.accounts (1, 1000.50);
Mã:
SELECT * FROM bank.accounts;
Tiếp theo, di chuyển đến server2 hoặc server3 và đăng nhập vào shell cockroachdb SQL bằng lệnh sau.
Mã:
cockroach sql --insecure --host=192.168.10.14:26257
Mã:
SELECT * FROM bank.accounts;