1. Giới thiệu.
Hướng dẫn này mô tả cách nâng cấp Graylog trên Ubuntu 20.04 LTS và 22.04, theo cách được khuyến nghị. Tất cả các liên kết và gói phần mềm đều tồn tại vào thời điểm viết hướng dẫn này.
2. Cảnh báo.
Hướng dẫn này không bao gồm cài đặt bảo mật! Quản trị viên máy chủ phải đảm bảo rằng máy chủ Graylog không tiếp xúc trực tiếp với internet và tuân thủ các phương pháp bảo mật tốt nhất.
Các điều kiện tiên quyết trước khi tiến hành nâng cấp máy chủ Graylog, bạn phải hoàn thành các nhiệm vụ sau. Nếu không thực hiện, có thể gây ra vấn đề. Sau khi các điều kiện tiên quyết được đáp ứng, bạn có thể tiến hành quá trình nâng cấp.
- Xem xét các ghi chú phát hành của phiên bản Graylog mà bạn định nâng cấp đến. Bạn có thể tìm thấy tất cả các phiên bản ổn định trong phần “Upgrading Graylog”.
- Không nên bỏ qua một phiên bản chính khi nâng cấp Graylog. Ví dụ, để nâng cấp từ phiên bản 3.3.x lên 4.3.x, bạn cần trước tiên nâng cấp lên phiên bản chính 4.0.x và sau đó mới nâng cấp lên 4.3.x. Để nâng cấp từ phiên bản 3.3.x lên phiên bản 5.x.x, bạn cũng phải tuân thủ cùng quy tắc, tức là nâng cấp từ phiên bản chính này lên phiên bản chính khác (3.1 > 4.0 > 5.0 > 5.1.6).
- Bạn có thể cần thực hiện các chỉnh sửa thủ công vào tệp cấu hình của Graylog server.conf trước khi khởi động lại máy chủ Graylog. Thông tin về các công việc thủ công cần thiết cho phiên bản cụ thể của Graylog có thể được tìm thấy trong hồ sơ thay đổi (changelogs) và trang “Upgrading Graylog” trong tài liệu hướng dẫn.
- Đảm bảo bạn đã sao lưu cả cơ sở dữ liệu MongoDB và Elasticsearch/OpenSearch trước khi nâng cấp bất kỳ thành phần nào của Graylog để tạo một tùy chọn hoàn trả nếu cần.
3. Xác định phiên bản hiện tại.
Nếu bạn vào System -> Overview bạn sẽ nhìn thấy thông báo You are running an outdated Graylog version, thông báo này cho biết Graylog đã có phiên bản mới là 5.1.4.
Để xác minh rằng bạn đang chạy phiên bản mong muốn của một trong các phần mềm phụ thuộc được đề cập ở trên, bạn có thể sử dụng lệnh sau. Hãy thay thế tên của từng ứng dụng bạn muốn kiểm tra:
Bạn cũng có thể thấy phiên bản hiện tại đang cài đặt là 5.0.10-1 thấp hơn phiên bản 5.1.4.
$ sudo apt list --installed | grep 'mongo\|elasticsearch\|opensearch\|graylog'
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
graylog-5.0-repository/stable,now 1-2 all [installed]
graylog-server/stable,now 5.0.10-1 amd64 [installed]
mongodb-database-tools/focal,now 100.7.4 amd64 [installed,upgradable to: 100.8.0]
mongodb-mongosh/focal,now 1.10.3 amd64 [installed,upgradable to: 1.10.6]
mongodb-org-database-tools-extra/focal,now 6.0.8 amd64 [installed,upgradable to: 6.0.9]
mongodb-org-database/focal,now 6.0.8 amd64 [installed,upgradable to: 6.0.9]
mongodb-org-mongos/focal,now 6.0.8 amd64 [installed,upgradable to: 6.0.9]
mongodb-org-server/focal,now 6.0.8 amd64 [installed,upgradable to: 6.0.9]
mongodb-org-shell/focal,now 6.0.8 amd64 [installed,upgradable to: 6.0.9]
mongodb-org-tools/focal,now 6.0.8 amd64 [installed,upgradable to: 6.0.9]
mongodb-org/focal,now 6.0.8 amd64 [installed,upgradable to: 6.0.9]
opensearch/stable,now 2.5.0 amd64 [installed,upgradable to: 2.9.0]
Hoặc bạn có thể sử dụng lệnh.
$ dpkg -l | grep -E ".(elasticsearch|opensearch|graylog|mongo)."
ii graylog-5.0-repository 1-2 all Package to install Graylog 5.0 GPG key and repository
ii graylog-server 5.0.10-1 amd64 Graylog server
ii mongodb-database-tools 100.7.4 amd64 mongodb-database-tools package provides tools for working with the MongoDB server:
hi mongodb-mongosh 1.10.3 amd64 MongoDB Shell CLI REPL Package
hi mongodb-org 6.0.8 amd64 MongoDB open source document-oriented database system (metapackage)
hi mongodb-org-database 6.0.8 amd64 MongoDB open source document-oriented database system (metapackage)
ii mongodb-org-database-tools-extra 6.0.8 amd64 Extra MongoDB database tools
hi mongodb-org-mongos 6.0.8 amd64 MongoDB sharded cluster query router
hi mongodb-org-server 6.0.8 amd64 MongoDB database server
ii mongodb-org-shell 6.0.8 amd64 MongoDB shell client
hi mongodb-org-tools 6.0.8 amd64 MongoDB tools
ii opensearch 2.5.0 amd64 An open source distributed and RESTful search engine
Các lệnh trên sẽ hiển thị danh sách các gói phần mềm đã cài đặt trên hệ thống của bạn và tìm kiếm các gói có tên liên quan đến MongoDB, Elasticsearch/OpenSearch, hoặc Graylog.
Nếu sau khi kiểm tra MongoDB bạn nhận được một lỗi cho biết “gnupg” chưa được cài đặt, bạn có thể sử dụng các lệnh sau để cài đặt nó:
sudo apt-get install gnupg
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
Lệnh đầu tiên cài đặt gói “gnupg,” một công cụ quản lý mã hóa và chữ ký số. Lệnh thứ hai sử dụng “wget” để tải xuống một file chứa chữ ký của MongoDB, sau đó sử dụng “apt-key add” để thêm chữ ký này vào hệ thống của bạn. Điều này cần thiết để đảm bảo tính toàn vẹn của gói MongoDB khi cài đặt.
Trong quá trình chuẩn bị để nâng cấp Graylog, bạn cần đảm bảo rằng các yêu cầu về phần mềm đã được đáp ứng. MongoDB và Elasticsearch/OpenSearch phải đang chạy ít nhất phiên bản tối thiểu được yêu cầu cho phiên bản Graylog mà bạn muốn nâng cấp. Xin vui lòng tham khảo bảng sau để xác định yêu cầu tương thích về phiên bản của bạn:
Phiên bản Graylog | Phiên bản MongoDB Tối Thiểu | Phiên bản MongoDB Tối Đa | Phiên bản Elasticsearch Tối Thiểu | Phiên bản Elasticsearch Tối Đa | Phiên bản OpenSearch Tối Thiểu | Phiên bản OpenSearch Tối Đa |
---|---|---|---|---|---|---|
4.0.x | 3.6 | 4.2 | 6.8 hoặc 7.0 | 7.1 | Không hỗ trợ | Không hỗ trợ |
4.1.x | 3.6 | 4.4 | 6.8 hoặc 7.0 | 7.1 | Không hỗ trợ | Không hỗ trợ |
4.2.x | 3.6 | 4.4 | 6.8 hoặc 7.0 | 7.10.2 | Không hỗ trợ | Không hỗ trợ |
4.3.x | 3.6 | 5.0 | 6.8 hoặc 7.0 | 7.10.2 | 1.1.x (hoặc 1.3.x cho Graylog Security) | 1.3.x |
5.0.x | 5.0 | 6.x | 7.10.2 | 7.10.2 | 1.1.x (hoặc 1.3.x cho Graylog Security) | 2.5.x |
5.1.x | 5.0 | 6.x | 7.10.2 | 7.10.2 | 1.1.x (hoặc 1.3.x cho Graylog Security) | 2.5.x |
Bảng này cho biết rằng để nâng cấp lên một phiên bản cụ thể của Graylog, bạn phải đảm bảo rằng MongoDB và Elasticsearch/OpenSearch đang chạy phiên bản tương thích tối thiểu và không vượt quá phiên bản tối đa được chỉ định. Nếu bạn muốn sử dụng Graylog Security, bạn cần tuân thủ phiên bản OpenSearch tối thiểu và tối đa đã nêu trong bảng.
Cập nhật Graylog trên Ubuntu
Thực hiện các bước sau để nâng cấp phiên bản Graylog của bạn bằng cách tạm dừng Graylog. Lệnh trên sẽ dừng dịch vụ Graylog trên máy chủ.
sudo systemctl stop graylog-server
Theo dõi trạng thái của máy chủ Graylog. Lệnh này giúp bạn kiểm tra xem máy chủ Graylog đã dừng hoàn toàn chưa.
ps -aefww | grep graylog
Sao lưu file cấu hình hiện có của máy chủ Graylog.
cp /etc/graylog/server/server.conf /home/
Bạn nên sao lưu file cấu hình này để tránh mất cài đặt cấu hình trong quá trình nâng cấp.
https://downloads.graylog.org/packages
Do mình sử dụng Ubuntu nên mình chọn gói có đuôi là *.deb.
Hãy dùng wget để download gói đó về server và tiến hành các bước tiếp theo để cài đặt phiên bản Graylog mới.
sudo wget https://downloads.graylog.org/repo/packages/graylog-5.1-repository_1-2_all.deb
sudo dpkg -i graylog-5.1-repository_1-2_all.deb
sudo apt-get update
sudo apt-get install graylog-server -y
Dưới đây là đầu ra của quá trình cài đặt.
$ sudo apt-get install graylog-server -y
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libfwupdplugin1 libxmlb1
Use 'sudo apt autoremove' to remove them.
The following packages will be upgraded:
graylog-server
1 upgraded, 0 newly installed, 0 to remove and 25 not upgraded.
Need to get 311 MB of archives.
After this operation, 11.5 MB of additional disk space will be used.
Get:1 https://packages.graylog2.org/repo/debian stable/5.1 amd64 graylog-server amd64 5.1.4-1 [311 MB]
Fetched 311 MB in 1min 52s (2775 kB/s)
(Reading database ... 116976 files and directories currently installed.)
Preparing to unpack .../graylog-server_5.1.4-1_amd64.deb ...
Unpacking graylog-server (5.1.4-1) over (5.0.10-1) ...
Setting up graylog-server (5.1.4-1) ...
Installing new version of config file /etc/graylog/server/log4j2.xml ...
Configuration file '/etc/graylog/server/server.conf'
==> Modified (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : start a shell to examine the situation
The default action is to keep your current version.
*** server.conf (Y/I/N/O/D/Z) [default=N] ?
Processing triggers for systemd (245.4-4ubuntu3.22) ...
Đoạn cuối bạn sẽ thấy thông báo The default action is to keep your current version
ý muốn hỏi bạn có đồng ý backup lại file /etc/graylog/server/server.conf không, nhưng ở trên mình đã thực hiện backup thủ công file này ra /home rồi nên mình sẽ bỏ qua nó.
Configuration file '/etc/graylog/server/server.conf'
==> Modified (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : start a shell to examine the situation
The default action is to keep your current version.
*** server.conf (Y/I/N/O/D/Z) [default=N] ?
Nếu bạn sử dụng Graylog Enterprise, hãy sử dụng lệnh dưới để cài đặt.
sudo apt-get install graylog-enterprise -y
Ngoài ra, để hiển thị các gói có tiền tố ‘graylog-‘ đã cài đặt:
$ sudo apt list --installed | grep graylog
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
graylog-5.1-repository/stable,now 1-2 all [installed]
graylog-server/stable,now 5.1.4-1 amd64 [installed
Tại điểm này, được khuyến nghị bạn nên khóa phiên bản của gói Graylog.
Đối với Graylog Opensource:
sudo apt-mark hold graylog-server
sudo apt-mark showhold | grep graylog-server
Đối với Graylog Enterprise:
sudo apt-mark hold graylog-enterprise
sudo apt-mark showhold | grep graylog-enterprise
Điều này giúp đảm bảo rằng phiên bản Graylog hiện tại sẽ không bị thay đổi ngẫu nhiên trong tương lai.
Thực hiện bất kỳ thay đổi cấu hình Graylog cần thiết theo hướng dẫn phiên bản.
Cuối cùng, khởi động lại máy chủ Graylog.
sudo systemctl start graylog-server
Lệnh này sẽ khởi động lại dịch vụ Graylog để áp dụng các thay đổi nâng cấp và cập nhật cấu hình mới (nếu có).
Giờ hãy xác nhận lại phiên bản mới bằng lệnh dưới.
$ dpkg -l | grep -E ".(elasticsearch|opensearch|graylog|mongo)."
ic graylog-5.0-repository 1-2 all Package to install Graylog 5.0 GPG key and repository
ii graylog-5.1-repository 1-2 all Package to install Graylog 5.1 GPG key and repository
hi graylog-server 5.1.4-1 amd64 Graylog server
ii mongodb-database-tools 100.7.4 amd64 mongodb-database-tools package provides tools for working with the MongoDB server:
hi mongodb-mongosh 1.10.3 amd64 MongoDB Shell CLI REPL Package
hi mongodb-org 6.0.8 amd64 MongoDB open source document-oriented database system (metapackage)
hi mongodb-org-database 6.0.8 amd64 MongoDB open source document-oriented database system (metapackage)
ii mongodb-org-database-tools-extra 6.0.8 amd64 Extra MongoDB database tools
hi mongodb-org-mongos 6.0.8 amd64 MongoDB sharded cluster query router
hi mongodb-org-server 6.0.8 amd64 MongoDB database server
ii mongodb-org-shell 6.0.8 amd64 MongoDB shell client
hi mongodb-org-tools 6.0.8 amd64 MongoDB tools
ii opensearch 2.5.0 amd64 An open source distributed and RESTful search engine
Và đây là màn hình login mới của version 5.1.4 nhé.
Kết quả login thành công với phiên bản mới.
Chúc bạn thành công.