Cách cài đặt Graylog2 và Elasticsearch trên Ubuntu 15.10

theanh

Administrator
Nhân viên
Elasticsearch là một máy chủ tìm kiếm phân tán dựa trên Lucene có sẵn dưới dạng phần mềm Nguồn mở. Đây là một công cụ tìm kiếm toàn văn, được viết bằng Java, với giao diện web HTTP và hỗ trợ các tài liệu JSON gốc. Elasticsearch có thể được sử dụng để tìm kiếm mọi loại tài liệu và cung cấp giải pháp tìm kiếm có thể mở rộng và tìm kiếm theo thời gian thực. Elasticsearch được nhiều tổ chức lớn như Mozilla, Netflix, Stack Exchange, v.v. sử dụng.

Graylog2 là một khuôn khổ quản lý nhật ký và phân tích nhật ký tập trung dựa trên Elasticsearch và MongoDB. Nó có khả năng phân tích và tích lũy các thông báo nhật ký từ nhiều nguồn khác nhau.

Trong hướng dẫn này, tôi sẽ hướng dẫn bạn cài đặt Graylog2, Elasticsearch và MongoDB. Tôi sẽ sử dụng Ubuntu 15.10 cho cài đặt này.

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

  • Ubuntu 15.10 - 64bit
  • RAM 4 GB
  • Quyền root

Bước 1 - Cài đặt MongoDB​

MongoDB là cơ sở dữ liệu NoSQL hướng tài liệu. Lược đồ tài liệu MongoDB tương tự như JSON, được gọi là BSON. Chúng tôi sẽ cài đặt MongoDB 3 từ kho lưu trữ MongoDB Debian.

Thêm kho lưu trữ, cập nhật và cài đặt:
Mã:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main" > /etc/apt/sources.list.d/mongodb-org-3.0.list
apt-get update
Cài đặt MongoDB bằng lệnh apt sau:
Mã:
apt-get install mongodb-org
Tiếp theo, khởi động mongodb và cho phép nó khởi động khi khởi động:
Mã:
systemctl start mongod
systemctl enable mongod

Bước 2 - Cài đặt Java​

Tất cả các ứng dụng mà chúng ta sẽ sử dụng trong hướng dẫn này đều dựa trên Java, vì vậy chúng ta phải cài đặt nó ngay bây giờ :). Chúng ta cần Java 7 trở lên để cài đặt Graylog. Java 7 có sẵn trong kho lưu trữ Ubuntu, vì vậy hãy cài đặt nó bằng lệnh apt này:
Mã:
apt-get install openjdk-7-jre
Bây giờ hãy kiểm tra phiên bản Java:
Mã:
java -version
Và bạn sẽ nhận được phiên bản Java:
Mã:
java version "1.7.0_91"
Môi trường chạy thời gian OpenJDK (IcedTea 2.6.3) (7u91-2.6.3-0ubuntu0.15.10.1)
Máy ảo máy chủ OpenJDK 64-Bit (bản dựng 24.91-b01, chế độ hỗn hợp)

Bước 3 - Cài đặt Elasticsearch​

Chúng tôi sẽ cài đặt elasticsearch phiên bản 1.7 trong hướng dẫn này.

Tải xuống và thêm khóa GPG vào hệ thống:
Mã:
sudo wget -qO - https://packages.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Bây giờ hãy thêm kho lưu trữ elasticsearch vào thư mục sources.list.d và chạy apt-get update:
Mã:
echo "deb http://packages.elastic.co/elasticsearch/1.7/debian stable main" > /etc/apt/sources.list.d/elasticsearch.list
apt-get update
Bây giờ hãy cài đặt elasticsearch:
Mã:
sudo apt-get install elasticsearch
Khi quá trình cài đặt hoàn tất, hãy khởi động Elastcisearchdaemon và cho phép nó khởi động khi khởi động:
Mã:
sudo systemctl start elasticsearch
sudo systemctl enable elasticsearch
Quá trình cài đặt Elastisearch đã hoàn tất và daemon đã được khởi động. Bây giờ là lúc cấu hình nó.

Chỉnh sửa tệp cấu hình trong thư mục "/etc/elasticsearch/" bằng vim:
Mã:
vim /etc/elasticsearch/elasticsearch.yml
Bỏ chú thích dòng "cluster.name" và thay đổi giá trị thành "graylog2".
Mã:
cluster.name = graylog2
Thêm cấu hình bên dưới cho máy chủ sản xuất để vô hiệu hóa các tập lệnh động và tránh thực thi từ xa:
Mã:
script.disable_dynamic: true
Lưu tệp và thoát.

Sau đó khởi động lại Elasticsearch và kiểm tra bằng lệnh curl:
Mã:
systemctl restart elasticsearch
Tôi đang kiểm tra Elasticsearch bằng kết nối curl tới cổng 9200:
Mã:
curl -XGET 'http://localhost:9200/'
curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'



Bước 4 - Cài đặt Máy chủ Graylog2​

Bước tiếp theo là cài đặt máy chủ Graylog2. Tôi sẽ sử dụng Graylog 1.3.2 cho quá trình cài đặt này. Tải graylog2 bằng lệnh wget, giải nén và sau đó cấu hình.

Trước khi bắt đầu cài đặt pwgen, chúng ta cần pwgen để tạo mật khẩu ngẫu nhiên.

Cài đặt pwgen:
Mã:
apt-get install pwgen
Bây giờ hãy tạo mật khẩu mới bằng lệnh:
Mã:
pwgen -N 1 -s 96
Mã bí mật của tôi:
Mã:
GYXOjHVNjTv7EdDxUOYEvW9MFJHzqzJarjuar7bszkXr41xTA9Gb8ig8j9MbclWYdzVdis2BfggLbxGaMoxLw1FCZuPNo3Ua
và tạo một hàm băm sha256 mới bằng lệnh bên dưới:
Mã:
echo -n mypassword | sha256sum
Đây là mật khẩu của tôi:
Mã:
9235b36556923005015a6c2c18bf6f08a61daf54bfad653bde0ce6404000f0b1
Tiếp theo, hãy đến thư mục /opt/ và tải xuống graylog-server bằng lệnh wget:
Mã:
cd /opt/
wget https://packages.graylog2.org/releases/graylog2-server/graylog-1.3.2.tgz
Giải nén graylog-server và đổi tên thư mục thành graylog2:
Mã:
tar -xzvf graylog-1.3.2.tgz
mv graylog-1.3.2/ graylog/
Graylog-server đã được tải xuống và chúng tôi sử dụng thư mục /opt/ để cài đặt.

Để cấu hình graylog-server, hãy tạo một thư mục graylog mới và sao chép tệp cấu hình mẫu graylog-server vào "server.conf".
Mã:
mkdir -p /etc/graylog/server/
cp /opt/graylog/graylog.conf.example /etc/graylog/server/server.conf
Chỉnh sửa cấu hình:
Mã:
vim /etc/graylog/server/server.conf
Dán mật khẩu được tạo bằng pwgen vào dòng password_secret:
Mã:
password_secret = GYXOjHVNjTv7EdDxUOYEvW9MFJHzqzJarjuar7bszkXr41xTA9Gb8ig8j9MbclWYdzVdis2BfggLbxGaMoxLw1FCZuPNo3Ua
Dán mật khẩu sha256 đã tạo, mật khẩu này được sử dụng để đăng nhập vào bảng điều khiển quản trị graylog:
Mã:
root_password_sha2 = 9235b36556923005015a6c2c18bf6f08a61daf54bfad653bde0ce6404000f0b1
Tắt tìm kiếm đa hướng elasticsearch và thêm máy chủ đơn hướng.
Mã:
elasticsearch_discovery_zen_ping_multicast_enabled = false 
elasticsearch_discovery_zen_ping_unicast_hosts = 127.0.0.1:9300
Thay đổi các phân đoạn elasticsearch thành 1, vì chúng ta cài đặt mọi thứ trên máy chủ duy nhất này.
Mã:
elasticsearch_shards = 1
elasticsearch_replicas = 0
Lưu và thoát tệp.

Bây giờ hãy khởi động graylog-server bằng cách thực thi tệp bin trong thư mục graylog:
Mã:
cd /opt/graylog/bin/
./graylogctl start
Bây giờ bạn có thể thấy tệp nhật ký của graylog-server trong thư mục nhật ký, hãy theo dõi tệp đó bằng lệnh tail:
Mã:
tail -f /opt/graylog/log/
Nếu bạn thấy điều này trong tệp nhật ký:
Mã:
Đã khởi động REST API tại 
Graylog2 đang hoạt động.
Điều này có nghĩa là graylog-server đã được khởi động đúng cách.


Bước 5 - Cài đặt Graylog-Web​

Tải xuống giao diện web graylog bằng lệnh wget vào thư mục /opt/:
Mã:
cd /opt/
wget https://packages.graylog2.org/releases/graylog2-web-interface/graylog-web-interface-1.3.2.tgz
Giải nén giao diện web graylog và đổi tên thành "graylog-web".
Mã:
tar -xzvf graylog-web-interface-1.3.2.tgz
mv graylog-web-interface-1.3.2/ graylog-web/
Sau đó tạo mã bí mật ứng dụng mới cho graylog-web bằng pwgen:
Mã:
pwgen -N 1 -s 96
Đây là bí mật của tôi:
Mã:
zHg966Be4cBBLmasLiQm4mA0ziR5HziHq6RnfmgKIsjNtLCyHUvmxBMhzRkBclaE2IWyzJPJtPaQGEiLek0iJ3CaWh6kCDAE
Vào thư mục graylog-web và chỉnh sửa tệp cấu hình:
Mã:
cd graylog-web/
vim graylog
Trên dòng graylog2-server.uris, thêm địa chỉ graylog2-server:
Mã:
graylog2-server.uris="http://127.0.0.1:12900/"
Trong dòng application.secret, dán mã bí mật được tạo trước đó:
Mã:
application.secret="zHg966Be4cBBLmasLiQm4mA0ziR5HziHq6RnfmgKIsjNtLCyHUvmxBMhzRkBclaE2IWyzJPJtPaQGEiLek0iJ3CaWh6kCDAE"
Lưu tệp và thoát.

Bây giờ hãy khởi động graylog-web:
Mã:
cd /opt/graylog-web/bin/
./graylog-web-interface -Dhttp.port=8080
Graylog-web sẽ chạy trên cổng 8080.

Truy cập máy chủ của bạn - http://myipaddress:8080/



Bây giờ hãy đăng nhập bằng tên người dùng "admin" và mật khẩu sha256 của bạn.



Máy chủ Graylog2 với Elasticsearch và giao diện web Graylog đã được cài đặt.


Kết luận​

Elasticsearch là một công cụ tìm kiếm máy chủ phân tán với giao diện HTTP và hỗ trợ JSON. Chúng ta có thể sử dụng nó để tìm kiếm trong tất cả các tệp nhật ký của máy chủ khi sử dụng cùng với Graylog. Graylog là phần mềm quản lý và phân tích nhật ký dựa trên Elasticsearch và mongoDB. Chúng ta có thể sử dụng Elasticsearch, Graylog và MongoDB để xây dựng một máy chủ nhật ký phân tán.
 
Back
Bên trên