Nghiên cứu giải pháp tự động phát hiện sự cố hệ thống dựa trên công nghệ ELK (elasticsearch, logstash và kibana)

68 68 1
Nghiên cứu giải pháp tự động phát hiện sự cố hệ thống dựa trên công nghệ ELK (elasticsearch, logstash và kibana)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

IH QU GI H NỘI TRƢỜNG IH NG NGHỆ TRẦN VĂN LINH NGHIÊN ỨU GIẢI PHÁP TỰ ỘNG PHÁT HIỆN SỰ C HỆ TH NG DỰ TRÊN NG NGHỆ ELK (ELASTICSEARCH, LOGSTASH V KIBANA) LUẬN VĂN TH S NG NH HỆ TH NG TH NG TIN Hà Nội - 2019 IH QU GI H NỘI TRƢỜNG IH NG NGHỆ TRẦN VĂN LINH NGHIÊN ỨU GIẢI PHÁP TỰ ỘNG PHÁT HIỆN SỰ C HỆ TH NG DỰ TRÊN NG NGHỆ ELK (EL STI SE R H, LOGST SH V KIB N ) Ngành: Hệ thống thông tin Chuyên ngành: Hệ thống thông tin Mã số: 8480104.01 LUẬN VĂN TH S NG NH HỆ TH NG TH NG TIN GIẢNG VIÊN HƢỚNG N: PGS.TS Nguyễn Hà Nam Hà Nội - 2019 LỜI CẢM ƠN Để hồn thiện luận văn thạc sĩ mình, trước tiên, tơi xin bày tỏ lòng biết ơn sâu tới thầy – PGS.TS Nguyễn Hà Nam (bộ môn Các hệ thống thông tin – trường Đại học Công nghệ – Đại học Quốc gia Hà Nội) Sự gần gũi nhiệt tình hướng dẫn thầy nguồn động lực lớn suốt thời gian thực luận văn Tôi xin gửi lời cảm ơn chân thành tới tất thầy, cô môn Các hệ thống thông tin, thầy, cô khoa Công nghệ thông tin – trường Đại học Công nghệ – Đại học Quốc gia Hà Nội nhiệt tình giảng dạy, cung cấp cho kiến thức, kinh nghiệm không học tập mà sống hàng ngày Đồng thời xin gửi lời cảm ơn đến cha mẹ, người thân gia đình, bạn học viên, đồng nghiệp giúp đỡ, động viên, tạo điều kiện tốt cho tơi suốt khóa học Trường Đại học Công nghệ – Đại học Quốc gia Hà Nội để tơi hồn thiện tốt luận văn thạc sĩ Hà Nội, tháng năm Học viên Trần Văn Linh LỜI M O N Tôi xin cam đoan luận văn tốt nghiẹp “Nghiên cứu giải pháp tự động phát cố hệ thống dựa công nghệ ELK (ElasticSearch, Logstash Kibana) cơng trình nghiên cứu thực thân, đuợc thực hiẹn co sở nghiên cứu l thuyết, kiến thức chuyên ngành, nghiên cứu khảo sát tình hình thực tiễn duới huớng dẫn khoa học PGS.TS Nguyễn Hà Nam Các kết viết chung với tác giả khác đồng tác giả trước đưa vào luận văn Những phần tham chiếu, trích dẫn luận văn nêu r phần tài liẹu tham khảo Các số liẹu, kết trình bày luận văn hồn tồn trung thực Nếu sai tơi xin ch u hồn tồn trách nhiẹm ch u k luạt khoa nhà truờng đề Hà Nội, tháng năm 201 Học viên Trần Văn Linh MỤC LỤC LỜI CẢM ƠN M O N LỜI MỤC LỤC .4 DANH MỤ Á TỪ VIẾT TẮT .6 DANH MỤ HÌNH VẼ MỞ ẦU HƢƠNG I: GIỚI THIỆU B I TOÁN V LỰA CH N NG NGHỆ 12 1.1 Một số khái niệm 12 1.2 Giới thiệu toán 12 1.3 Lựa chọn công nghệ .13 1.4 Tìm hiểu tảng công nghệ ELK 21 1.4.1 Giới thiệu ELK .21 1.4.2 ElasticSearch 21 1.4.3 Logstash 33 1.4.4 Kibana 41 1.5 Kết luận 41 HƢƠNG II: PHÂN TÍ H, THIẾT KẾ, XÂY ỰNG HỆ TH NG QUẢN LÝ LOG TẬP TRUNG CHO TẬP O N BẢO VIỆT .42 2.1 Hiện trạng hạ tầng CNTT Bảo Việt 42 2.1.1 Hiện trạng d ch vụ 42 2.1.2 Hiện trạng hạ tầng máy chủ 43 2.1.3 Hiện trạng tảng hệ điều hành phần mềm 43 2.1.4 Hiện trạng mơ hình hạ tầng hệ thống CNTT 44 2.1.5 Hiện trạng quản l , giám sát hệ thống 45 2.2 Kiến trúc giải pháp 45 2.2.1 Mơ hình tổng thể giải pháp 46 2.2.2 Mô hình luồng liệu 49 2.2.3 Mơ hình trao đổi liệu với hệ thống khác .50 2.3 Kết luận 50 HƢƠNG III: XÂY ỰNG THỬ NGHIỆM HỆ TH NG QUẢN LÝ LOG T I BẢO VIỆT 51 3.1 Môi trường thử nghiệm 51 3.2 Mơ hình cấu hình thử nghiệm 53 3.3 Kết đạt 59 3.4 Đánh giá kết 62 3.5 Các vấn đề tồn hướng phát triển 63 3.5.1 Vấn đề sử dụng nhiều tài nguyên máy chủ 63 3.5.2 Vấn đề thất lạc liệu log 63 3.5.3 Hướng phát triển giải vấn đề 63 3.6 Kết luận 64 KẾT LUẬN 65 T I LIỆU THAM KHẢO 67 DANH MỤ Á TỪ VIẾT TẮT CSDL Cơ sở liệu ELK ElasticSearch, Logstash, Kibana ETL Extract, Transform, Load ESB Enterprise Service Bus EAI Enterprise application integration EDR Enterprise data replication VSM Vector Space Model CNTT Công nghệ thông tin BI Business Inteligence DANH MỤ HÌNH VẼ Hình 1.1 : Một số tảng cơng nghệ sử dụng để quản lý log .14 Hình 1.2 : Mơ hình Massive Parallel Processing 23 Hình 1.3 : Mơ hình cụm Cluster ElasticSearch .23 Hình 1.4 : So sánh thành phần ElasticSearch với Cơ sở liệu quan hệ 24 Hình 1.5 : Biểu đồ Tearm Frequency mơ hình BM25 TF/IDF 29 Hình 1.6 : Tiến trình phân tích từ tố (Analysis) ElasticSearch 32 Hình 1.7 : Giới thiệu logstash 33 Hình 1.8 : Tiến trình ETL .35 Hình 1.9 : Các tiến trình hoạt động Logstash 35 Hình 1.10 : Cơ chế hoạt động Pull Push Logstash 35 Hình 1.11 : Giới thiệu Kibana .41 Hình 2.1 : Cơ cấu tổ chức mơ hình dịch vụ Tập đoàn Bảo Việt 42 Hình 2.2 : Hiện trạng mơ hình hạ tầng CNTT Bảo Việt 44 Hình 2.3 : Mơ hình tổng thể giải pháp 46 Hình 2.4 : Mơ hình hoạt động Logstash 47 Hình 2.5 : Mơ hình luồng liệu giải pháp 49 Hình 2.6 : Mơ hình trao đổi liệu với hệ thống khác 50 Hình 3.1: Mơ hình hệ thống dịch vụ BVCare 52 Hình 3.2 : Mơ hình cấu hình thử nghiệm giải pháp ELK cho dịch vụ BVCare .53 Hình 3.3 : Sơ đồ khối luồng xử lý liệu log với Logstash 54 Hình 3.4 : Sơ đồ khối bước “Lọc chuẩn hóa liệu log” thực Logstash .55 Hình 3.5 : Email cảnh báo hết dung lượng lưu trữ 60 Hình 3.6 : Biểu đồ thống kê mã lỗi gặp phải với hệ thống BVCare .61 Hình 3.7 : Email cảnh báo địa lạ kết nối tới sở liệu hệ thống BVCare 61 Hình 3.8 : Biểu đồ thống kê địa người dùng kết nối tới sở liệu BVCare 62 Hình 3.9 : Mơ hình hướng phát triển giải pháp 64 MỞ ẦU Trong thời đại công nghệ số, d ch vụ mua bán, trao đổi truyền thống dần thay thương mại điện tử Đặc biệt với giao d ch tài chuyển tiền ngân hàng, mua bán hợp đồng bảo hiểm, chứng khốn thực internet thơng qua d ch vụ công nghệ thông tin mà tổ chức tài chính, ngân hàng, bảo hiểm xây dựng để cung cấp cho khách hàng Chất lượng d ch vụ công nghệ thông tin tổ chức, doanh nghiệp mang nghĩa sống lợi cạnh tranh không nhỏ cho doanh nghiệp thương trường; đặc biệt doanh nghiệp hoạt động lĩnh vực tài chính, bảo hiểm, ngân hàng, mà hệ thống phải hoạt động liên tục 24/7 để đáp ứng nhu cầu sử dụng d ch vụ khách hàng Khi chất lượng d ch vụ công nghệ thông tin nâng cao, trải nghiệm người dùng tốt thu hút giữ khách hàng ngược lại Trong trình hoạt động, hệ thống cơng nghệ thơng tin doanh nghiệp gặp cố lúc Các tổ chức phải đối mặt với cố ngừng hoạt động d ch vụ mối đe dọa bảo mật khác nhau, việc giám sát toàn tảng ứng dụng điều cần thiết để hiểu r nguồn gốc mối đe dọa nguyên nhân xảy cố, để xác minh kiện, log dấu vết để hiểu hành vi hệ thống thời điểm dự đốn có hành động khắc phục k p thời Giám sát phân tích liệu log quan trọng tổ chức hoạt động CNTT để xác đ nh nỗ lực xâm nhập trái phép, theo d i hiệu suất ứng dụng, cải thiện hài lòng khách hàng, tăng cường bảo mật chống lại cơng mạng, thực phân tích ngun nhân gốc phân tích hành vi, hiệu suất, đo lường số liệu dựa phân tích liệu log Việc phát xử l sớm lỗi dẫn tới nguy xảy cố hệ thống có nghĩa quan trọng chất lượng d ch vụ mà doanh nghiệp cung cấp Nhiều doanh nghiệp thực công việc cách thủ công – nhóm cán phụ trách trực hạ tầng thực đọc log hệ thống riêng lẻ tìm kiếm theo từ khóa lỗi xảy ra, từ khóa tìm thấy, cán trực hạ tầng thực gửi thư điện tử (email) thông báo tới cán quản tr d ch vụ để khắc phục lỗi Việc tìm kiếm lỗi gửi email thông báo theo cách thủ công dẫn tới việc chậm trễ thiếu sót trình phát xử l lỗi, ảnh hưởng trực tiếp đến hoạt động kinh doanh doanh nghiệp Bài tốn đặt cần phải tự động hóa cơng việc để phát thông báo lỗi tới cán quản tr cách nhanh để giảm thiểu tối đa thời gian ảnh hưởng đến khả cung cấp d ch vụ doanh nghiệp Mục tiêu đề tài tập trung vào nghiên cứu, xây dựng giải pháp cơng nghệ để giải tốn cho doanh nghiệp Giải toán mang nghĩa to lớn cho doanh nghiệp, phục vụ cho hoạt động kinh doanh doanh nghiệp mà tăng v thế, uy tín doanh nghiệp chất lượng d ch vụ mà doanh nghiệp cung cấp nâng cao Có nhiều tảng công nghệ đáp ứng cho tốn quản l log, kể số tảng trội Splunk, Graylog, Loggly, Solarwind thân nội hệ thống hệ điều hành Window, Linux, Database,… có phần quản l logs riêng Tuy nhiên điểm yếu tảng công nghệ kể không hỗ trợ quản l tập trung, khơng có tảng tìm kiếm đủ mạnh, không hỗ trợ mở rộng, không hỗ trợ phân tích logs sử dụng phải trả khoản chi phí cao (phần mềm thương mại) Đề tài tập trung nghiên cứu giải pháp công nghệ ELK cơng nghệ hài hòa chi phí đầu tư khả đáp ứng tiêu chí mã nguồn mở, hỗ trợ mở rộng theo chiều ngang (Clusters), có tảng tìm kiếm mạnh mẽ (ElasticSearch), hỗ trợ phân tích số liệu thu thập (Analytic), quản l logs tập trung, tìm kiếm thơng báo lỗi cách tự động Tính cấp thiết đề tài Tại Việt Nam, d ch vụ Công nghệ thông tin phục vụ nghiệp vụ kinh doanh trở thành xương sống doanh nghiệp Nền kinh tế hội nhập đòi hỏi doanh nghiệp cần phải cung cấp d ch vụ với chất lượng cao để cạnh tranh với đối thủ nước Một hệ thống d ch vụ Công nghệ thông tin phục vụ nghiệp vụ kinh doanh đòi hỏi d ch vụ phải có tốc độ xử l nhanh, phục vụ nhiều người dùng đồng thời phải sẵn sàng 24/7 Bất kỳ hệ thống d ch vụ Công nghệ thông tin tiềm ẩn nhiều rủi ro gây gián đoạn hoạt động kinh doanh Tổ chức, Doanh nghiệp Để cung cấp d ch vụ Cơng nghệ thơng tin với chất lượng cao nhất, ngồi đội ngũ cán có trình độ chun mơn tốt để phát triển vận hành d ch vụ công nghệ thơng tin doanh nghiệp cần phải có giải pháp để giúp giảm thiểu cố, rủi ro gây gián đoạn d ch vụ Tại Tập đoàn Bảo Việt, Trung tâm Công nghệ thông tin cung cấp hàng trăm d ch vụ Công nghệ thông tin cho đơn v thành viên phục vụ nghiệp vụ kinh doanh Số lượng máy chủ phần mềm lên tới số hàng nghìn Kiểm sốt diễn biến, thay đổi hệ thống phút, giúp đội ngũ kỹ thuật phát sớm rủi ro tiềm ẩn gây cố gián đoạn d ch vụ, ảnh hưởng tới kết kinh doanh cơng ty thành viên tồn Tập đồn Do việc nghiên cứu xây dựng hệ thống quản l log tập trung cho hệ thống Tập đồn nhằm mục đích phát sớm rủi ro tiềm ẩn vấn đề cần thiết cấp bách mà theo tác giả không cần thiết cho riêng Tập đoàn Bảo Việt mà cho doanh nghiệp sử dụng d ch vụ Công nghệ thông tin vào phục vụ sản xuất kinh doanh 53 ngày lớn, ElasticSearch với kiến trúc Cluster mở rộng theo chiều ngang (thêm node) giúp tăng sức mạnh tính tốn phân tán, hồn tồn xử l lượng liệu log sinh hệ thống phần mềm Tập đoàn Bảo Việt D ch vụ BVCare phần mềm quản l bảo hiểm bảo lãnh Y tế, cung cấp cho Tổng công ty Bảo hiểm Bảo Việt, công ty sở Y tế đối tác với Bảo hiểm Bảo Việt sử dụng 24/7 Với đặc thù d ch vụ cần hoạt động liên tục khơng có thời gian dừng, nên cơng việc giám sát phát k p thời lỗi gặp phải với hệ thống cách nhanh xác giúp giảm thiểu cố xảy với hệ thống Mơ hình cấu hình thử nghiệm Từ mơ hình hệ thống trình bày mục 3.1 ta có mơ hình cấu hình thử nghiệm triển khai giải pháp ELK sau: 3.2 Hình 3.2 : Mơ hình cấu hình thử nghiệm giải pháp ELK cho dịch vụ BVCare Mơ hình thử nghiệm hệ thống BVCare hình 3.2 bao gồm luồng liệu: (I) : Luồng trích xuất, tích hợp, giám sát, cảnh báo lỗi liệu log máy chủ Apache Http (II) : Luồng trích xuất, tích hợp, giám sát, cảnh báo lỗi liệu log máy chủ ứng dụng (III) : Luồng trích xuất, tích hợp, giám sát, cảnh báo lỗi liệu log máy chủ sở liệu Dữ liệu log Logstash trích xuất tổng hợp theo công nghệ ETL, liệu từ Logstash đưa vào đầu ElasticSearch để đánh mục Email Server để gửi email cảnh báo tự động lỗi phát liệu log Sau liệu 54 sau đánh mục ElasticSearch sử dụng Kibana để người dùng, nhà phân tích liệu xây dựng biểu đồ, trừu tượng hóa liệu để phân tích chúng Với thành phần hệ thống (Http, ứng dụng, sở liệu) có liệu log với cấu trúc khác nhau, nhiên để cấu hình Logstash trích xuất tích hợp liệu log vào ElasticSearch gửi email cảnh báo tự động phát mã lỗi ta phải thực cấu hình cho thành phần: Input, Filter Output tương ứng với tiến trình cơng nghệ ETL Extract, Transform Load Chúng xây dựng sơ đồ khối chung để xử l cho nhiều loại liệu log sau: File input Plugin: input { file { path => "/u01/app/oracle/diag/ rdbms/bvcaredb/bvcaredb1/trace/ alert_ bvcaredb1.log" } } Kiểm tra có liệu thay đổi hay khơng? Khơng thay đổi Có thay đổi Filter Plugin: filter { # Kết hợp nhiều dòng lưu ký mốc thời gian thành kiện multiline { pattern => "%{DAY} %{MONTH} %{MONTHDAY} %{TIME} %{YEAR}" negate => true what => "previous" } …… Đọc tệp liệu lưu ký Lọc, chuẩn hóa liệu lưu ký (1) Kiểm tra mã lỗi Đưa liệu vào ElasticSearch đánh mục Không có lỗi Có mã lỗi ElasticSearch output Plugin: # đưa liệu vào đánh mục ElasticSearch elasticsearch { hosts => ["elk:9200"] index => "oracle-%{+YYYY.MM.dd}" } …… Gửi email cảnh báo Email output Plugin: if "ORA-" in [message] { email { port => 587 address => "smtp.gmail.com" username => "linh****@gmail.com" password => "*****" authentication => "plain" use_tls => true from => " linh****@gmail.com" subject => "Cảnh Báo: Có lỗi tìm thấy liệu lưu ký sở liệu hệ thống BVCare" to => "tranvan.linh@baoviet.com.vn" via => "smtp" body => "%{message}" debug => true } Hình 3.3 : Sơ đồ khối luồng xử lý liệu log với Logstash Trong đó: Bước (1): “Lọc chuẩn hóa liệu log thực theo lưu đồ sau: 55 Filter Plugin: if [message] =~ /Starting ORACLE instance/ { mutate { add_field => [ "oradb_status", "starting" ] } } else if [message] =~ /Instance shutdown complete/ { mutate { add_field => [ "oradb_status", "shutdown" ] } } else { mutate { add_field => [ "oradb_status", "running" ] } Filter Plugin: multiline { pattern => "%{DAY} %{MONTH} %{MONTHDAY} %{TIME} %{YEAR}" negate => true what => "previous" } Nhóm dòng liệu theo thời gian Filter Plugin: Kiểm tra trạng thái bật/ tắt sở liệu Trích xuất mã lỗi có if [message] =~ /ORA-/ { grok { match => [ "message","(?ORA-[0-9]*)" ] } } Filter Plugin: # Trích xuất thơng tin message mutate { replace => [ "message", "%{log_message}" ] } mutate { remove_field => [ "time" ,"month","monthday","year","timesta mp","day","log_message"] } } Trích xuất thơng tin liệu lưu ký Hình 3.4 : Sơ đồ khối bước “Lọc chuẩn hóa liệu log” thực Logstash Để cụ thể việc áp dụng sơ đồ khối vào việc trích xuất, tích hợp cảnh báo lỗi tự động cho liệu log nào, chúng tơi trình bày chi tiết cấu hình cho phân hệ sở liệu hệ thống BVCare Dữ liệu log thử nghiệm sở liệu BVCare có dạng sau: 56 … Mon Jan 28 15:42:41 2019 db_recovery_file_dest_size of 3882 MB is 0.00% used This is a user-specified limit on the amount of space that will be used by this database for recovery-related files, and does not reflect the amount of space available in the underlying filesystem or ASM diskgroup Mon Jan 28 15:49:37 2019 alter database open Errors in file /u01/app/oracle/diag/rdbms/dr1/DR1/trace/DR1_ora_11881.trc: ORA-01113: file needs media recovery ORA-01110: data file 1: '/u02/oradata/DR1/system01.dbf' ORA-1113 signalled during: alter database open Mon Jan 28 15:49:38 2019 Checker run found new persistent data failures … Chi tiết cấu hình cho thành phần input, filter output Logstash để trích xuất, tích hợp liệu log đưa vào ElasticSearch, gửi email cảnh báo tự động mã lỗi “ORA-“ phát liệu log sau: # Cấu hình File input Plugin input { file { path => "/u01/app/oracle/diag/rdbms/bvcaredb/bvcaredb1/trace/alert_ bvcaredb1.log" } } # Cấu hình Filter Plugin filter { # Kết hợp nhiều dòng log mốc thời gian thành kiện 57 multiline { pattern => "%{DAY} %{MONTH} %{MONTHDAY} %{TIME} %{YEAR}" negate => true what => "previous" } # Tạo thêm trường để mô tả trạng thái database: # oradb_status: starting, running, shutdown if [message] =~ /Starting ORACLE instance/ { mutate { add_field => [ "bvcaredb_status", "starting" ] } } else if [message] =~ /Instance shutdown complete/ { mutate { add_field => [ " bvcaredb_status", "shutdown" ] } } else { mutate { add_field => [ " bvcaredb_status", "running" ] } } # Tìm kiếm mã lỗi ORA- tạo trường lưu mã lỗi tìm thấy if [message] =~ /ORA-/ { grok { match => [ "message","(?ORA-[0-9]*)" ] } } # Trích xuất liệu thời gian chi tiết thông điệp 58 grok { match => [ "message","%{DAY:day} %{MONTH:month} %{MONTHDAY:monthday} %{TIME:time} %{YEAR:year}(?.*$)" ] } mutate { add_field => { "timestamp" => "%{year} %{month} %{monthday} %{time}" } } date { locale => "en" match => [ "timestamp" , "yyyy MMM dd HH:mm:ss" ] } # Trích xuất thơng tin thơng điệp mutate { replace => [ "message", "%{log_message}" ] } mutate { remove_field => [ "time" ,"month","monthday","year","timestamp","day","log_message"] } } # Cấu hình ElasticSearch Output Plugin output { # đưa liệu vào đánh mục ElasticSearch elasticsearch { hosts => ["elk:9200"] index => "bvcare" } 59 # gửi email cảnh báo mã lỗi “ORA- tìm thấy if "ORA-" in [message] { email { port address => 587 => "smtp.gmail.com" username => "linh****@gmail.com" password => "*****" authentication => use_tls => from => "plain" true " linh****@gmail.com" subject => "Cảnh Báo: Có lỗi tìm thấy liệu log sở liệu hệ thống BVCare" to => "tranvan.linh@baoviet.com.vn" via => "smtp" body => "%{message}" debug => true } } Kết đạt đƣợc Sau triển khai thử nghiệm giải pháp, chúng tơi nhận biết lỗi phát sinh hệ thống theo thời gian thực, so với việc giám sát liệu log thủ công trước kết bước tiến giúp cán quản l hệ thống khắc phục k p thời lỗi trước cố xảy với hệ thống, nâng cao tốt chất lượng d ch vụ Với thông tin log đánh mục ElasticSearch chúng tơi giám sát tình trạng hoạt động hệ thống thơng qua hình điều khiển mà chúng tơi xây dựng Kibana, ngồi chúng tơi sử dụng liệu log để phân tích hành vi người dùng vấn đề an ninh, bảo mật hệ thống 3.3 Để đánh giá hiệu hệ thống quản l log chúng tơi xây dựng tình giả đ nh phân vùng lưu trữ liệu sở liệu hết phát sinh liệu nhiều đột ngột, mà không bổ sung thêm dung lượng lưu trữ k p thời 60 hệ thống b ngừng hoạt động, liệu log sở liệu có cảnh báo “warning mã lỗi kèm theo Theo cách thức giám sát kiểm tra hệ thống thủ công tại, cán trực hạ tầng kiểm tra liệu log đ nh kỳ ngày từ đến lần tùy theo hệ thống khó để phát xử l k p thời lỗi lỗi xảy thời điểm ngày, chưa kể đến việc tìm kiếm mã lỗi cách thủ cơng gây thiếu sót bỏ qua lỗi, cố chắn xảy hệ thống, việc khắc phục muộn, ảnh hưởng đến hoạt động kinh doanh Tuy nhiên, đưa giải pháp ELK vào xây dựng hệ thống quản l log, liệu log tổng hợp theo thời gian thực (real-time) Ngay sau liệu log xuất mã lỗi liên quan đến dung lượng lưu trữ b hết, hệ thống tự động gửi email cảnh báo đến cán quản tr hệ thống để thực bổ sung thêm dung lượng lập tức, trước cố xảy ra: Hình 3.5 : Email cảnh báo hết dung lượng lưu trữ Việc đưa liệu log vào lưu trữ đánh mục ElasticSearch giúp cho cán quản tr cán phòng ban liên quan tìm kiếm thơng tin liệu log cách nhanh chóng tiện lợi tồn liệu log lưu trữ tập trung đánh mục, khác với việc lưu trữ phân tán trước Ngồi ra, với thơng tin lưu trữ tập trung ElasticSearch nên cán quản tr sử dụng để tổng hợp, thống kê tình hình hoạt động vấn đề xảy tuần, tháng, qu ,… việc thực với cách thức quản l liệu log thủ cơng truyền thống Bảo Việt Ví dụ sau, từ liệu log đánh mục ElasticSeach chúng tơi dễ dàng xây dựng biểu đồ thống kê tình trạng lỗi gặp phải sở liệu theo thời gian thực: 61 Hình 3.6 : Biểu đồ thống kê mã lỗi gặp phải với hệ thống BVCare Trường hợp thử nghiệm thứ 2, chúng tơi thực giám sát phân tích liệu log kết nối vào sở liệu để k p thời phát bất thường xảy sở liệu Chúng giả đ nh trường hợp sở liệu có kết nối bất thường từ đ a lạ, điều dẫn đến việc mát liệu mà khơng thể kiểm sốt khơng có hệ thống quản l liệu log Kết có thơng tin log ghi nhận có đ a lạ kết nối tới sở liệu, hệ thống quản l log thực gửi email cảnh báo tới cán quản tr : Hình 3.7 : Email cảnh báo địa lạ kết nối tới sở liệu hệ thống BVCare Đồng thời, liệu log đánh mục ElasticSearch cách thời gian thực (real-time) giúp chúng tơi dễ dàng xây dựng hình thống kê, biểu đồ để phân tích số liệu Kibana, tìm xác vấn đề thời điểm hệ thống ghi nhận thông tin bất thường vào liệu log, với sức mạnh hệ truy hồi thông tin ElasticSearch kết hợp với phần mềm Kibana chúng tơi thực cơng việc cách dễ dàng nhanh chóng, điều mà thực sử dụng phương pháp quản l liệu log thủ công truyền thống Ví dụ đây, chúng tơi thống kê danh sách đ a có kết nối tới sở liệu vòng ngày trở lại, user sử dụng để đăng nhập vào hệ thống: 62 Hình 3.8 : Biểu đồ thống kê địa người dùng kết nối tới sở liệu BVCare Từ biểu đồ chúng tơi dễ dàng nhận xuất phát từ đâu có nhiều kết nối tới sở liệu nhất, đ a bất thường, đ a không thuộc diện phép truy cập vào hệ thống cách cố thực kết nối vào hệ thống hay biết người dùng truy cập bất hợp pháp vào sở liệu hệ thống,… ánh giá kết Sau thực cấu hình thử nghiệm dựa mơ hình thử nghiệm trình bày trên, đánh giá kết đạt giải vấn đề toán quản l liệu log Bảo Việt đề cập Chương – mục 1.2: “Giới thiệu tốn , là: 3.4  Quản l liệu log tập trung ElasticSearch giúp dễ dàng tra cứu với hiệu cao, làm nguồn liệu cho tốn phân tích, xây dựng hình giám sát Kibana theo thời gian thực  Phát gửi thư điện tử cảnh báo lỗi, bất thường xảy với hệ thống cách tự động đến cán quản tr mang tính xác cao tức thời, giúp cán k p thời phát khắc phục lỗi trước xảy cố với hệ thống So với công việc trước phải kiểm tra tìm mã lỗi cách thủ cơng kết bước tiến dài phục vụ hữu ích cho doanh nghiệp, giải phóng nguồn nhân lực thực cơng việc thủ công Việc giải vấn đề đồng nghĩa với việc giải hạn chế sử dụng cách thức quản l giám sát liệu log truyền thống Bảo 63 Việt đề cập đến Chương – mục 2.1.5: “Hiện trạng quản l , giám sát hệ thống Ngoài ra, với liệu log lưu trữ tập trung ElasticSearch phần mềm Kibana mạnh mẽ, chúng tơi xây dựng biểu đồ, trừu tượng hóa liệu theo nhiều chiều để phân tích phát bất thường xảy với hệ thống thời gian thực, từ giúp nâng cao hiệu giám sát hệ thống chất lượng d ch vụ mà cung cấp Các vấn đề tồn hƣớng phát triển Qua q trình thử nghiệm giải pháp trên, chúng tơi nhận thấy tồn số vấn đề mơ hình kiến trúc giải pháp chúng tơi trình bày mục 2.3 Chương II, là: 3.5 3.5.1 Vấn đề sử dụng nhiều tài nguyên máy chủ Do Logstash viết tảng ngôn ngữ Java, nên Logstash chạy cần cấp phát máy chủ ảo Java (JVM), máy chủ ảo chiếm lượng nhớ đ nh, có nhiều tệp liệu log cần giám sát số lượng máy chủ JVM tăng theo chiếm phần lớn dung lượng nhớ máy chủ d ch vụ, điều gây nên ảnh hưởng đến hiệu d ch vụ 3.5.2 Vấn đề thất lạc liệu log Với mơ hình thử nghiệm, trình đẩy liệu log từ Logstash đến ElasticSearch tới mail server (máy chủ thư điện tử) qua giao thức mạng, đó, l đó, thời điểm liệu log truyền mà đường mạng có vấn đề kết nối phần liệu log b thất lạc không truyền Đây rủi ro cần kiểm soát để đảm bảo hệ thống giám sát cảnh báo lỗi liệu log hoạt động cách đắn đầy đủ nhất, khơng bỏ sót kiện liệu log 3.5.3 Hƣớng phát triển giải vấn đề Qua q trình nghiên cứu, chúng tơi nhận thấy vấn đề gặp phải trình bày mục 3.5.1 3.5.2 khắc phục, hướng phát triển cho hệ thống quản l liệu log mà xây dựng  Với vấn đề Logstash sử dụng nhiều tài nguyên nhớ máy chủ chứa liệu log giải theo phương án sau: - Sử dụng Filebeat để tổng hợp liệu log thay Logstash - Logstash sử dụng với vai trò lọc, chế biến đẩy liệu log nhận từ Filebeat vào lưu trữ ElasticSearch Filebeat phát triển tảng Go API, nên Filebeat nhẹ, chạy tiết kiệm tài nguyên hỗ trợ nhiều loại liệu log tảng khác Kết hợp sử dụng Filebeat Logstash giải tốt vấn đề sử 64 dụng nhiều tài nguyên gây ảnh hưởng đến hoạt động d ch vụ Logstash  Với vấn đề thất lạc liệu log giải cách sử dụng thêm thành phần đệm hàng đợi (queue) để lưu giữ liệu log chờ xử l Có thể kể đến số tảng đệm hàng đợi trội Redis, Kafka hay RabbitMQ Mơ hình tổng thể hướng phát triển giải pháp sau: Tổng hợp liệu Bộ đệm hàng đợi Lọc, biến đổi liệu Lưu trữ, đánh mục Trừu tượng hóa, phân tích Hình 3.9 : Mơ hình hướng phát triển giải pháp 3.6 Kết luận Trong Chương III, luận văn trình bày chi tiết công việc triển khai thử nghiệm hệ thống Tập đoàn Bảo Việt, giải pháp quản l log tập trung giúp người quản tr hệ thống tiếp nhận thông tin lỗi hệ thống từ liệu log cách tức thời thông qua việc gửi thư điện tử cảnh báo tự động, từ người quản tr hệ thống khắc phục lỗi k p thời trước hệ thống gặp cố, gây gián đoạn d ch vụ Từ nguồn liệu log tổng hợp tập trung vào hệ truy hồi thơng tin mạnh mẽ ElasticSearch nguồn liệu phục vụ để xây dựng hình giám sát hệ thống, phân tích liệu log để phân tích hành vi người dùng, vấn đề liên quan đến an ninh bảo mật hệ thống 65 KẾT LUẬN Quản l tốt liệu log có chế cảnh báo tự động giúp cán quản tr hệ thống sớm biết vấn đề xảy với hệ thống theo thời gian thực để thực biện pháp khắc phục k p thời trước cố hệ thống thực xảy Luận văn có số đóng góp sau: Thứ nhất: phân tích điểm yếu tồn cách thức quản l giám sát liệu log Tập đoàn Bảo Việt: - Cán phải truy xuất liệu thủ công phân tán máy chủ để đọc tìm mã lỗi - Việc tìm kiếm thủ cơng chậm gây nhầm lẫn thiếu sót q trình kiểm tra liệu log, gây rủi ro xảy cố cho hệ thống mà người quản tr k p thời - Dữ liệu log không tận dụng để xây dựng báo cáo phân tích để tìm thơng tin hữu ích - Mất nhiều nguồn lực người để thực cơng việc đọc tìm kiếm lỗi thủ cơng Thứ hai: xác đ nh vấn đề cần giải cho toán quản l liệu log Bảo Việt để giải điểm yếu, hạn chế trên, là: - Quản l liệu log tập trung giúp dễ dàng tra cứu với hiệu cao, làm nguồn liệu cho tốn phân tích, xây dựng hình thống kê, giám sát hệ thống theo thời gian thực - Phát gửi thư điện tử cảnh báo lỗi, bất thường xảy với hệ thống cách tự động đến cán quản tr mang tính xác cao tức thời, giúp cán k p thời phát khắc phục lỗi trước xảy cố với hệ thống Thứ ba: phân tích, thiết kế đưa vào thử nghiệm thành công giải pháp quản l liệu log sử dụng công nghệ ELK giúp giải vấn đề phân tích trên, kết đạt hỗ trợ phát sớm vấn đề phát sinh bên hệ thống giúp cán quản tr khắc phục k p thời lỗi gây xảy cố cho hệ thống, giải pháp ELK giúp: - Quản l liệu log tập trung hệ truy hồi thông tin ElasticSearch - Thu thập phân tích liệu log thời gian thực với Logstash - Gửi email cảnh báo thời gian thực log ghi nhận vấn đề - Xây dựng hình thống kê, giám sát thời gian thực với Kibana giúp cán theo d i trạng hoạt động hệ thống - Giải phóng nguồn nhân lực thu thập tìm kiếm mã lỗi, kiểm tra hệ thống thủ công trước 66 Vấn đề tồn Bên cạnh kết đạt được, Luận văn số hạn chế cần khắc phục thiết kế giải pháp như: - Vấn đề Logstash sử dụng tốn dung lượng nhớ máy chủ, ảnh hưởng đến hiệu ứng dụng - Vấn đề rủi ro thất lạc liệu log xảy lỗi đường truyền từ Logstash tới hệ truy hồi thông tin ElasticSearch - Vấn đề bảo mật với Kibana, giao diện Kibana mã nguồn mở không hỗ trợ phân quyền người dùng đăng nhập hệ thống Đây vấn đề liên quan đến bảo mật liệu log hệ thống cần giải Hƣớng phát triển Với hạn chế phân tích trên, chúng tơi tiếp tục thực nghiên cứu hồn thiện mơ hình giải pháp, bước đầu chúng tơi tìm hiểu giải pháp sử dụng để khắc phục vấn đề tồn tại: - Vấn đề Logstash sử dụng tốn dung lượng nhớ máy chủ: Sử dụng Filebeat để thu thập liệu log - Vấn đề rủi ro thất lạc liệu log: Sử dụng đệm hàng đợi Redis - Vấn đề bảo mật với Kibana: Sử dụng Ngnix làm lớp phân quyền người dùng đăng nhập vào hệ thống 67 T I LIỆU THAM KHẢO Tài liệu tiếng việt [1] PGS TS Nguyễn Trí Thành, Bài giảng môn học hệ truy hồi thông tin, Đại học Công Nghệ Tài liệu tiếng anh [2] Mounia Lalmas (2011), Introduction to Information Retrieval [3] Djoerd Hiemstra, Information Retrieval Models [4] Clinton Gormley and Zachary Tong (2015), Elasticsearch: The Definitive Guide [5] Patrick Ziegler and Klaus R Dittrich (2007), “Data Integration-Problems, Approaches, and Perspectives”, Database Technology Research Group [6] Colin White, data integration IBM BI Research(2006), A roadmap to enterprise ác trang Web [7] https://en.wikipedia.org/wiki/Information_retrieval [8] https://en.wikipedia.org/wiki/Vector_space_model [9] https://www.elastic.co/guide/en/logstash/current/index.html [10] http://www.oaktable.net/content/auditing-oracle-database-stopping-andstarting-using-elk-stack [11] https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html [12] https://www.elastic.co/guide/en/kibana/current/index.html [13] https://en.wikipedia.org/wiki/Boolean_model_of_information_retrieval ... văn tốt nghiẹp Nghiên cứu giải pháp tự động phát cố hệ thống dựa cơng nghệ ELK (ElasticSearch, Logstash Kibana) cơng trình nghiên cứu thực thân, đuợc thực hiẹn co sở nghiên cứu l thuyết, kiến... IH NG NGHỆ TRẦN VĂN LINH NGHIÊN ỨU GIẢI PHÁP TỰ ỘNG PHÁT HIỆN SỰ C HỆ TH NG DỰ TRÊN NG NGHỆ ELK (EL STI SE R H, LOGST SH V KIB N ) Ngành: Hệ thống thông tin Chuyên ngành: Hệ thống. .. hồi thông tin Một số tảng cơng nghệ bật sử dụng tốn quản l log tập trung, sâu vào nghiên cứu công nghệ mã nguồn mở ELK (ElasticSearch, LogStash Kibana) để đưa vào áp dụng Tập đoàn Bảo Việt Để

Ngày đăng: 16/02/2020, 14:46

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan