Xu hướng sử dụng server hiện nay Đối với xu hướng sử dụng hiện tại thì những loại máy chủ trước đây chúng đều có một giới hạn dung lượng nhất định và việc nâng cấp thêm dung lượng cho má
Trang 1Giảng viên hướng dẫn :TS Nguyễn Văn Thuỷ
Sinh viên thục hiện :Nguyễn Hoàng Hà
Hà Nội, tháng 12 năm 202
Trang 2KHOA CONG NGHE THONG TIN I
DO AN TOT NGHIEP DAI HOC
Dé tai:
XAY DUNG WEB SERVER QUAN LY TAINGUYEN
MAY CHU LINUX Giảng viên hướng dẫn : TS NGUYÊN VĂN THUỶ
Sinh viên thực hiện : NGUYÊN HOÀNG HÀ
Khoa : 2017-2022
Trang 3Kết quả của dỗ án tốt nghiệp đại học là quá trình tích lũy kiển thức sau 5
năm học tại Học Viện Công Nghệ Bưu Chính Viễn Thông, Để có dược những,
kiến thức quý giá thỉ em xin gửi lời cảm ơn chân thành và sâu sắc nhất tới tất cả
các thầy cô giáo, các cán bộ giảng viên đã và đang dạy tại trường Học viện Công
nghệ Bưu chỉnh Viễn Thông, đặc biệt lả các thay, cô trong khoa Công nghệ
thông tin, cảm ơn tất cả các thầy cô trong những nấm qua đã din dat, day dé để
em có được ngày báo cáo tốt nghiệp hôm nay
Xin được cám ơn gia dình, bạn bẻ đã thường xuyên quan tâm, giúp đã,
chia sé kinh nghiệm, trong thời gian học tập, nghiên cúu cũng như trong suốt
quá trình em thực hiện làm đã án tắt nghiệp
Hà Nội, ngày 01 tháng 12 Năm 2021
Sinh viên thực hiện
Nguyễn Hoàng Hà
Trang 4Điểm: (Bằng chữ )
Ngày tháng năm 2021
Giáo viên hướng dẫn
Trang 5
Ngày tháng năm 2021 Giáo viên phân biên
Trang 6Với sự phát triển của công nghệ, lượng người dùng sử dụng giải pháp lưu trữ trên máy chú điện toán đám mây - Clond tăng đáng kể đặc biệt trong những
nam gan day Suphat triển của điện toán đám mây đã thu hút được nhiều sự tia
tưởng đối với nhà cũng cấp dịch vụ công nghệ này Lưu trữtrên nền táng điện toán
dám mây — Claud vừa giúp người đùng giâm chi phí dầu tư phải bỏ ra để lưu trữ
cũng như triển khai dịch vụ của minh lại vừa giúp họ tiết kiệm diện tích cho các trạm máy chủ
Tên nay, trên thị trường đã tồn tại những công cụ, dịch vụ cho phép người dùng có thé theo dé: quan ly tài nguyên sử dụng của scrvcr cũng rửtư cho phép
người dùng có thể xử lý các vẫn đẻ liên quan đến tài nguyên hệ thông từxa nhằm
đảm bảo hệ thống hoạt động, én dinh va tron tru Trong qua trinh tim hiển về các
công cụ nảy, cm đã xây dựng một wcb scrvcr nhằm quân lý tải nguyên của máy
chủ server Tnux sứ đụng Prometheus và Œrafana
Bé cục của đỗ án bao 26m 4 chương
Chương 1: Giới thiệu bài Loán
Chương2: Tìm hiểu giải pháp quản lý tài nguyên máy chú
Chương 3: Phân tích chức năng và thiết kế hệ thông
Chương 4: Cài đặt hệ thẳng
Bằngsựcô gắng và nỗ lực em đã hoàn thành xong đỏ á án tốtnghiệp của mình
Do có sự hạn chế về mặt thời gian và mức độ hiểu biết của bản thân nên không thể
tránh khỏi những thiếu sót trong quả trình nghiên cứu Vì thể, em rất mong nhận được những lời góp ý và sự chỉ bảo thêm của các thầy cô và các bạn để em có thém
những kiến thức phục vụ cho học Lập cũng như công việc sau này
eee ener
Nguyễn Hoàng Hà_— EITONHU1-E i
Trang 7LOI NOI DAT:
MỤC LỤC
DANII MUC LENT Vii
THUAT NGU VIRT TAT
CHƯƠNG T: GIỚI THIỆU BÀI TOÁN
11 NITU CAU SU DUNG SERVER TIEN NAY,
111 Server là gì?
112 Các loại server phố biển hiện nay:
113 Xu hixing att dung server hién nay
12 QUẢN1Ý HIỆU SUÁT KHI SỨ DỤNG SERVER
21 TONG QUAN VE GLAI PHAP QUAN LY TAL NGUYEN MAY CHỮ
211 Khai niêm vé quan ly server
22 CAC GIAI PHAP QUAN LY MAY, cH PHO BIỂN HIỆN NAY
22.2 Solarwinds Network Performance Monitor (NPM)
223 Prometheus & Grafana Monitoring:
Trang 9Hinh 1.1: Kién trac Client - Server 2
Hình 1.2: Mô hình kiến trúc Cloud compuling 4
Tĩnh 1.3: Công thức tính server uptime 7
'Hình 1.4: Tỉ lệ doanh thu điện toán đám mây Q1 2021 8
Hình 1.5: Khỗi lưu trữtrên Linux (Directofy, inode và file) 10 Hình 2.I: Giao diện của công cụ OpÌManagơr 13 Hinh 2.2: Giao dién xitly workflow cia Op Manager 14 Hinh 2.3: Dashboard cia phan mém Solarwinds Network Performance
Tĩïnh 2.5: Ví đụ về tíme-series data 17 Tlinh 2.6: M6 hinh JoT str dung Time-series database 17
Hinh 2.7: Kién trac Prometheus va Grafana quan ly server MySQL 18
Hinh 3.1: Promethcus — The monitoring toolkit 19 Tĩïnh 3.2: Ví đụ về prometheus metric 20
Tlinh 3.3: Các thanh phan cia Prometheus 21
Hinh 3.4: Grafana— Analytics & Monitoring 22
Hinh 3.5: Giao diện đashboard của Gra [ana 23
Tlinh 3.6 Kién tric xay dung hé thong 24
eee ener
Nguyễn Hoàng Hà_— EITONHU1-E iv
Trang 10CPU Central Processing Unit Bộ phận xử lý trung lãm
RAM Random Access Memory Bộ nhớ doc ghi ngẫu nhiên
VPS Virtual Private Server May 4o c4 nhan
ERP Enterprise Resource Planning Phan mém hoạch định doanhnghiệp
CRM Customer Relationship Management Quan ly quan hé khach hang
TSDB Time-series database Cơ sử đữ liệu dạng chuỗi thời gian loT Internet ofthing Internet van vat
HTTP Hypertext transfer protocol Giao thức truyén tai sigu van ban
HITPS | Hypertexttransferproiocolsecnre {iiao thức truyêntải siêu văn bản an
loan
SELinux | Security-Enhanced Linux Module bao mat cia Linux kernel
TEO Total cost of ownership Tông chí phí sở hữu
YUM Ycllowdog Updatcr Modiicd Tool dé quan lý package trên
Trang 11CHUONG I: GIOI THIEU BAITOAN
11 Nhucầu sử dụng server hiện nay
1.1.1 Server là gì?
Server hay còn gọi là máy chủ là một hệ thông (phan mémva phan cứng máy
tính phù hợp) đáp ứng yêu cầu trên một mạng máy tính để cung cấp, hoặc hỗ trợ cung
cấp một dịch vụ mạng Các serVer có thể chạy trên một máy tính chuyên dụng, mà
cũng thường được gọi là "máy chủ", hoặc nhiều máy tính nối mạng có khả năng máy chủ lưu trữ Trong nhiều trường hợp, một máy tính có thể cung cấp nhiều dịch vụ và
dịch vụ chạy đa dạng
Các máy chủ thường hoạt động trong một mô hình client-server, server (máy chủ) là các chương trình máy tính đang chạy đề phục vụ yêu cầu của các chương trình khác, các client (khách hàng) Do đó, các máy chủ thực hiện một số nhiệm vụ
thay mặt cho khách hàng Các khách hàng thường kết nối với máy chủ thông qua
mạng nhưng có thể chạy trên cùng một máy tính Trong hệ thống hạ tầng của mạng Internet Protocol (IP), một máy chủ là một chương trình hoạt động như một sockct
listener (giao thức nghe)
Các máy chủ thường cung cấp các địch vụ thiết yếu qua mạng, hoặc là để
người dùng cá nhân trong một tổ chức lớn hoặc cho người dùng nào thông qua
Internet Các máy chủ máy tính điền hình là máy chủ cơ sở dữ liệu (database server), máy chủ tập tin (file server), máy chủ mail (mail server), máy chủ in (print server),
máy chủ web (web server), máy chủ game (game server), máy chủ ứng dụng
(application server), hoặc một số loại khác của máy chủ Nhiềuhệ thống sử dụng mô hình client/server mạng này bao gồm các trang web và các dịch vụ email Một mô
hình thay thế, mạng peer-to-peer cho phép tất cả các máy tính để hoạt động như một
trong hai (client hoặc server) khi cân thiết
Trang 12'Ví dụ: trong một văn phòng có 10 máy tính, nếu mỗi máy tính độc lập muốn
in ấn một cái gì đấy thì mỗi máy đó phải tự kết nói đến máy in hay phải cài driver
cho 10 máy, chưa kể còn phải rút ra rút vào dây cáp kết nối giữa máy in và máy tính
nhiều lần Nhưng sử dụng server thì chúng ta không cần phải làm thế, chỉ cần kết nói máy in với máy chủ rồi nói mạng tất cả các máy còn lại với máy chủ là các máy cá nhân kia không cần phải in độc lập nữa
Các loại server điển hình được phân chia theo nhu cầu sử dụng:
+ Database server: máy chủ cơ sở dữ liệu + File servers (máy chủ file, là máy chủ lưu trữ file ví dụ như Dropbox,
Google Drive, Microsoft One Drive)
+ Mail servers (máy chủ mail ví dụ như gmail, yahoo mail, yandex, amazon
Trang 13+ Game servers (máy chủ trò chơi ví đụ máy chủ phục vụ game Võ Lâm,
Warcraft, Tru tiên .VV)
+ Application servers (may chủ ứng dụng ví dụ để chạy các phần mềm quản
lý ERP, phan mém CRM trong doanhnghiép, nhung Application Server cing cé thé được hiểu chung là máy chủ cung cấp dich vy web, mail, file server, database vv)
1.1.2 Các loại server phố biến hiện nay:
Cơ sở đề phân loại các loại máy chủ là dựa theo phương pháp chế tạo ra máy chủ, ta có 3 loại máy chủ thường gặp sau:
+ Máy chủ riêng (Dedicated): là máy chủ chạy trên phần cứng và các thiết bị
hỗ trợ riêng biệt gồm: HDD, CPU, RAM, Card mang, hay con gọi với cái tên khác
là Máy chủ vật lý Việc nâng cấp hoặc thay đổi cầu hình của máy chủ riêng đòi hỏi
phải thay đổi phan cứng của máy chủ, việc này cần những người có kiến thức chuyên
sâu về phần cứng và máy chủ mới có thê đảm bảo được những linh kiện tạo ra máy
chủ
+ Máy chủ ảo (Virtual Private Server — VPS): là loại máy chủ được tách từ máy chủ vật lý kể trên ra bằng phương pháp sử dụng công nghệ ảo hóa Từ một máy chủ riêng, có thể tách được thành nhiều máy chủ ảo khác nhau có chức năng như máy chủ vật lý và chia sẻ tài nguyên trên máy chủ vật lý góc
+ Máy chủ đám mây (Cloud Server): là cơ sở hạ tầng ảo được xây dựng để
thực hiện việc lưu trữ xử lý thông tin và ứng dụng Cloud Server là một sản hầm
máy chủ tương tự như một chiếc máy chủ ảo (máy chủ VPS) nhưng được thiết lập
thêm công nghệ Cloud Computing (công nghệ điện toán đám mây) Công nghệ Cloud Computing hay công nghệ điện toán đám mây cung cấp các dịch vụ cho người dùng hoàn toàn thông quanên tảng của internet Các dịch vụ của Cloud Computing có thé
là máy chủ, lưu trữ, phần mềm cũng như các tiện ích khác Bằng việc cung cap dich
vụ nhưvậy, người dùng có thể truy cập tài nguyên từ xa mọi lúc mọi nơi thông qua
Trang 141.1.3 Xu hướng sử dụng server hiện nay
Đối với xu hướng sử dụng hiện tại thì những loại máy chủ trước đây chúng đều có một giới hạn dung lượng nhất định và việc nâng cấp thêm dung lượng cho
máy chủ là việc khá khó và mat nhiều thời gian để thực hiện, những lúc nhưthế máy
chủ buộc phải tạm dùng hoạt động, gây ảnh hưởng nhiều cho doanh nghiệp cũng như người sử dụng Tuy nhiên hiện tại Cloud Server rat linh hoat cho van đẻ này, vì hoạt
động trong mạng lưới kết nồi nhiều dedicated server trên công nghệ điện toán đám
mây 'Khi tiến hành nâng cấp máy chủ server, downtime của Cloud Server và VPSlà
gần như không có, điều này ngược lại hoàn toàn với Dedicated Server
Bên cạnh đó, khi bạn có dự án triển khai thiết lập một ứng dụng gì đó mà
phải có máy chủ thì mới có thể thực hiện, khi đó bạn buộc phải mua, thuê một hay
nhiều máy chủ mới chứ không thể dùng chung với những máy chủ đang chạy những
ứng dụng hay dựán khác nâng cấp tài nguyên của Cloud Sever hết sức đơn giản
và nhanh gọn, việc nâng cấp tài nguyên chỉ điễn ra tròng vài phút, và trong thời gian nâng cấp cũng không cần bảo trì máy chủ Tất cả những dự án có thể triển khai trên cùng một loại máy chủ, không đủ tài nguyên thì có thể nâng cấp thêm, gần như không
{eg Web Frontend)|
Trang 15~ Với công nghệ Cloud Computing, Cloud Server nôi bật với các ưu điểm
sau:
+ Cost Savings (Tinh tiết k ệm): Cloud Server cho phép người dùng tối ưu
số tiền bỏ ra đề sử dụng các tính năng cũng như không gian bộ nhớ lưu trữ dựa trên
số dịch vụ mà người dùng thực sự sử dung mà không cần phải thực sự đầu tư xây
+ Scalability (Tinh mở rộng): Nếu người dung cần thêm tải nguyên đề thực
hiện các công việc, dịch vụ thì chỉ cần nâng cấp gói dịch vụ mà hiện tại đang sử dụng
của Cloud Server mà không mắt công đầu tưthêm cũng như thuê thêm máy chủ khác
+ Multi OS Support (Hỗ trợ nhiều hệ điều hành): Phụ thuộc vào các công
việc khác nhau mà người dung có thể tuỳ ý cài đặt các OS khác nhau trên Cloud Server
cá nhân (PC), các ứng dụng văn phòng hay chương trình đồ hoạ và game là thước đo
hoàn hảo để tính hiệu suất Đối với các máy chủ được sử dụng trong các công ty,
doanh nghiệp hay tổ chức thì không có quá nhiều công cụ để đo benmark do việc đó tốn nhiều công sức và phức tạp hơn nhiều lần so với PC
lệu suất khi sử dụng server
Phần cứng và các dịch vụ được triển khai trên server có công suất cao hơn,
chuyên dụng hơn chính vì thế yêu cầu cho môi trường đo benmark đòi hỏi nhiều
Trang 16
máy móc hơn: hub hay switch và các máy tính client để tạo môi trường mạng, Bên
cạnh đó, đo hiệu năng của server cần thực hiện nhiều việc cài đặt phức tạp tốn nhiều
ngày đến nhiều tuần
Nhiều ứng dụng trên server yêu cầu những cấu hình đặc biệt hay nhạy cảm với hệ thống là nguyên nhân khiến việc đo benmark của hệ thống là vô cùng cần
thiết Điểm só benmark sẽ giúp người dùng theo dõi và cải thiện hệ thống giúp cho
các dịch vụ và tiện tích họ cung cấp ử dụng có thêhoạt động trơntru Hiệu suất của
server chiu anh hưởng bởi các yếu tổ chính sau: Throughput (Thông lượng), CPU Usage ( Mức độ sử dụng CPU), Utilization (Sựtối ưu), Uptime (Thời gian hoạt động
liên tục), Response time (Thời gian phản hồi), Error/ Failure Rate (Tỉ lề lỗi/ thất bại)
a Thoughput (Thông lượng):
"Thông lượng là số lượng request mà server xửlý trong một đơn vị thời gian Thời gian được sử dụng dé đo thông lượng thường là giây (second) nhưng đơn vị
này có thể thay đổi tuỳ theo từng trường hợp Ví dụ, nếu một server tiếp nhận 1000
yêu cầu trong 10 giây thỉ thông lượng của server là 100 yêu cầu/s Nhưng trong một
số trường hợp, nếu không thể tính toán được số yêu cầu/s thỉ có thể tính thông lượng dựa trên mức độ trung bình Quản trị hệ thống có thể tối ưu được thông lượng bằng
cách giảm độ trễ Nguyên nhân phô biến dẫn tới độ trễ là độ trễ mạng tuy nhiên để
có thể có nhiều nguyên nhân khác dẫn tới độ trễ liên quan đến phần cứng, bộ nhớ, Bằng cách sửa những vấn đề đó thì thông lượng của server sẽ tăng
b CPU Usage (Mức độ sử dụng CPU):
CPU Usage là thời gian mà CPU được sử dụng đề hoàn thành các tác vụ của
hệ thống và mức độ sử dụng CPU được tính bằng phần trăm (%) Lí do chính dẫn tới mức độ sử dụng CPU cao do các tiến trình chạy nền, các dịch vụ và ứng dụng yêu cầu tài nguyên của CPU và malware Và để giảm CPU usage thì quản trị hệ thống cần theo đõi mức độ sử dụng của các tiến trình và tắt các tiến trình không cần thiết
cũng nhưsử dụng các phần mềm bảo vệ khỏi malware để tránh thất thoát tài nguyên
c Utilization- Sựtôi ưu:
Sự tối ưu của server là số phần trăm của tài nguyên server được sử dụng dé
xử lý các yêu cầu Sự tối ưu của server ảnh hưởng chính do phân cứng của server và các dịch vụ, ứng dụng được triển khai chưa thực sự tối ưu code cũng như cấu hình
Trang 17
Việc loại bỏ các địch vụ cũng như tác vụ chạy nên không cần thiết và tối ưu cođe của
các ứng dụng sẽ giúp tăng cường sự tối ưu của server
đ Uptime - Thời gian hoạt động liên tục:
Thời gian hoạt động liên tục của server — Server uptime được tính bằng tổng thời gian server thực sự hoạt động và cung cấp những dịch vụ cần thiết cho Việc sử
dụng Thời gian hoạt động liên tục của server có thể tính bằng công thức:
Server uptime = (Amount of time the server is running and providing service / The total amount
of time it is expected to run and provide service) x 100
Hinh 1.3: Céng thite tinh server uptime
Trong d6:
+ Server uptime: thời gian thực server hoạt động được
+ Amount of time server running and providing service: Tổng thời gian
server chay va cung cấp dịch vụ
+ The total amount of time its expected to run and provide: Téng thoi gian
server chay va cung cap dịch vụ dự kiến
Để tăng thời gian sử dụng của server thì quản trị viên cần phải liên tục giám sát cũng để kịp thời xử lý và đưa ra các hành động kịp thời để có thể đối phó với các tình huống gây trễ, làm chậm và đình trệ server Việc duy trì Uptime của server giúp
cho các dịch vụ sử dụng được chạy liên tục và tăng trải nghiệm của người dùng đối
với sản phẩm
Ví dụ, uptime của AWS là 99,999% một năm có nghĩa là trong một năm thời
gian mà server được phép dừng để update sửa chữa, nâng cấp là 0.0019 của 365 ngày ~ 365 x 24x 60 x 0,001 = 52,56 (phút) Chính vì lí đo đó mà thị phần người
ding sit dung AWS (32%) rất cao so sánh với những đôi thủ khác: Azure (20%),
Google Cloud (9%) hay Alibab Cloud (6%) tính dén Q1 2021
Trang 18
me
Hình 1.4: Tỉ lệ doanh thu điện toán đảm mây Q1 2021
e, Error/ Failure Rate — Tỉ lệ lỗi/ thất bại
Tỉ lỗi/ thất bại là số phần trăm (%) yêu cầu được gửi đến server mà không
thể được xử lý và trả về dù cho những yêu cầu đó đã được tiếp nhận và khởi chạy
Những lý do chính dẫn đến việc thực thi không thành công/ thực thi lỗi khi tiếp nhận
và xử lý các yêu câu từ phía client gửi đến server :
+ Vấn đề về mạng: Cầu trúc mạng va hé tang mang chưa đáp ứng
+ Thiếu tài nguyên để xử lý các yêu cầu của + Cấu hình phần cứng chưa đáp ứng được mức độ xử lý
Để giam thiểu tỉ lệ thất bại/ tỉ lệ lỗi khi xử lý các yêu cầu để phân hỏi về phía
client thì server cần có sự điều chỉnh cũng như giám sát kịp thời về mặt tài nguyên cũng nhưgỡ rồi các sự có hạ tầng mạng
Trang 191.2.2 Nguyên nhân dẫn đến sự giảm hiệu suất của server Hiệu suất của server ảnh hưởng bởi hai yếu tô chính là hệ điều hành và tài
nguyên của hệ thông Hệ điều hành đóng là một tác nhân dẫn đến sự hụt giảm của
hiệu suất server do mặc dù hệ điều hành là điều kiện cần để tạo môi trường cho các
dich vụ được triển khai có thể chạy được nhưng đối với mỗi hệ điều hành khác nhau, việc tiêu tốn tài nguyên lại khác nhau
Lay vi du khi so sánh hệ điều hành Linux với Window Linux được biết đến
là hệ điều hành mã nguồn mở với cơ sở người dùng mạnh mẽ Bởi toàn bộ người dùng có thể truy cập vào mã nguồn nên Linux có thể phát hiện lỗi nhanh hơn so với
tin tặc giúp người dùng có thé dé dàng pháthiện và cập nhật lỗi Trái ngược lại với
1inux, Window — hệ điều hành phổ biến nhất thế giới với 80% người dùng trên thế
giới lại là một hệ điều hành với mã nguồn đóng Người dùng không thề nào tiếp cận đến lõi của hệ điều hành này mà phải gửi lỗi cho nhà phát triển đề họ cập nhật các
~ Linux nhẹ hơn rất nhiều so với Window
- Hệ thống tệp tin được tổ chức chặt chẽ trongLinux và chúng được đặt với
nhau thành từng khối giúp cải thiện các tác vụ lién quan dén I/O stream
~ Window hiển thị giao điện thân thiện với người dùng hơn và cũng hỗ trợ nhiều phần mềm cho phép người dùng tuỳ chỉnh dẫn đến tốn dung lượng tài nguyên
sử dụng hơn so với Linux OS khi giao diện vô cùng đơn giản và không có quá nhiều
tác vụ hỗ trợ giao diện
Trang 20Directory Entry
Inode
FIGURE 1 RELATIONSHIP BETWEEN THE DIRECTORY ENTRY, AN INODE,
AND BLOCKS OF AN ALLOCATED FILE
Hình 1.5: Khối lưu trữ trên Linux (Directoty, inode va file)
Bén canh van dé lién quan đến hệ điều hành, hiệu suất server còn bi anh
hưởng do tài nguyên khả dụng của hệ thông Việc thiếu hụt tài nguyên của hệ thống không những khiến cho các service không thể hoạt động bình thường về lâu đài có thể dẫn tới việc đình trệ hoạt đồng của server giảm trải nghiệm sử dụng của người dùng Chính vì lí đo đó, việc xây dựng một hệ thống quản lý tài nguyên của server là
việc nêu ra các yếu tổ làm ảnh hướng đến hiệu suất sử dụng của server, ta có thể thấy
sự quan trọng của việc quản lý và theo dõi tài nguyên của server một cách hợp lý
Chương 1 đưa bài toán về các vấn đề phátsinh khi sử dụng server từ đó đưa
ra lí do nên lựa chọn giải pháp phù hợp đề quản lý Trong chương 2, ta sẽ đi tìm hiểu
về các giải pháp để quản lý server
—
Trang 21CHƯƠNG II: TÌM HIỂU GIẢI PHÁP QUẢN LÝ TÀINGUYÊNMÁY CHỦ
2.1 Téng quan vé giai pháp quản lý tài nguyên máy chủ
Như đã đề cập ở chương trước, nhu cầu sử dụng server ngày càng tăng đặc
biệt là nhu cầu triển khai các sản phâm, dịch vụ trên server sao cho hiệu quả và trơn
tru nhất thì việc tìm hiểu và triển khai các giải pháp nhằm tối ưu hiệu suất của server
tránh trình trạng bị quá tải hay ngưng trệ
2.1.1 Khái niệm về quản lý server
Server management — Quản lý server là quá trình quản lý và bảo trì servers
để cho servers hoạt động đạt hiệu suất cao nhất Quản lý server sẽ bảo gồm những công việc như quản lý phân cứng, phần mềm, bảo mật và backups dữ liệu Dé quản
lý server một cách tốt nhất thì quân trị viên cần hiểu các công việc cũng như tính năng mà họ phải làm trong suốt quá trình vận hành hệ thống:
+ Coverage (Bao phi): administrator can nhan biết các ứng dụng cũng như loại server để có thể sử dụng những công cụ có thể bao phủ, thao tác với serVer cao
nhất
+ User Interface (Giao điện người dùng): Các thao tác quản lý server có thể thực hiện được với terminal tuy nhiên trong một số trường hợp thì việc có giao diện
người dùng đề hiện thị các task một cách dễ dàng hơn
+ Alerting ( Cảnh báo): Khả năng tuỳ chỉnh performance hoặc thresholds để
sinh ra cảnh báo là vô cùng cần thiết A dministrator nên cân nhắc các Phương thức
cảnh báo khác nhau như email, sms hay telegram hodc Slack
Mục tiêu chính của việc quân lý server hiệu quả là:
+ Giảm thiểu và loại bỏ slowdowns và downtime
+ Xây dựng một môi trường server an toàn + Đảm bảo server hoạt động đúng theo nhu cầu và mong muốn của tổ chức, công ty sở hữu
Trang 222.1.2 Lợi ích của quản lý server
Vì server là trái tìm của hệ thông thông tin của tổ chức hay công ty, server lưu trữtoàn bộ tài nguyên thông tin của tổ chức, xử lý một lượng lớn dữ liệu và cung cấp kết nối từ máy khách hàng đến các dịch vụ và tài nguyên đó Chính vì thế sự quản lý kịp thời là một quá trình quantrọng đối với bất kì tổ chức nào
'Việc quản lý server được thiết kế để cung cấp quyền truy cập và kiểm soát trên những server khác nhau cùng với việc kiểm soát tài nguyên nhằm thực hiện các công việc triển khai khác nhau Quản lý server tốt giúp cho server chạy tối ưu hơn
và cũng góp phẩn giúp quân trị viên dễ dàng kiếm soát công việc quân trị của mình hơn Quân lý server đòi hỏi sự giám sát các hoạt động và dịch vụ mọi lúc Bằng cách quản trị liên tục, các sự có được xử lý kịp thời, các bản vá được cập nhật đúng lúc cũng như dữ liệu được backup liên tục
2.2 Các giải pháp quản lý máy chủ phổ biến hiện nay
Có rất nhiều tiêu chí cho việc chọn lựa một giải pháp máy chủ hợp lý, linh
hoạt và hạn chế thời gian trung bình đề sửa chữa cũng như tận dụng tối đa nguồn tài
nguyên công nghệ thông tin hiện có của cá nhân, công ty hay tô chức
'Việc sử dụng các giải pháp quản lý và giám sát server không những giúp cho quân trị hệ thống nói riêng và người đùng nói chung có thể theo dõi, cập nhật kịp thời cũng như xử lý các lỗi giúp cho việc sử dụng hệ thống đạt hiệu quả cao và ôn định Hiện tại có nhiều công cụ giúp giám sát cũng như quản trị hệ thống từ xa và đưa ra cảnh báo kịp thời
2.2.1 OpManager:
OpManager là một công cụ giúp cho các quản trị viên có thể có cái nhìn toàn diện cũng như có chiều sâu để quản lý và điều khiển cả server vật lý và server ảo trên các OS phổ biến hiện nay: Windows, Linux, Unix, Hyper-V và cả nền tảng Xen
server
Quản trị server một cách chủ động cũng như xử lý sự cố kịp thời là thiết yếu đối với quản trị viên hệ thống chính vì thế công cụ OptManager là một giải pháp đề giải quyết vấn đề một cách nhanh chóng OptManager không nhưng là một công cụ đáng tin cậy giúp cho công việc quản trị giám sáttrởnên dễ dàng hơn khi có thể nhận
Trang 23
điện được hơn 300 lỗi nghiêm trọng liên quan đến server như CPU uitilization, đisk ultilization hay partition-wise memory ultilization cing lic van hanh cac services khác Bên cạnh đó OptManager còn tích hợp chức năng cảnh báo mức threshold và thông báo tỉnh trạng server
Hiện tại có ba phiên bản của OpManager:
+ Phiên bản Free: Phiên bản miễn phí cung cấp giám sát tôi đa 3 thiết bị
+ Phiên bản Enterprise: Phiên bản có thể giám sát tới 10,000 thiết bị hoặc lên
tới 100,000 giao diện
+ Phiên bản Standard/ Professional: Phiên bản có thể giám sát tới 1,000 thiết
bị tir 1 server
Hình2.1: Giao điện của công cụ OpManager
Các công cụ chính mà OpManager cung cấp:
+ Ping and Traceroute: Céng cu ping cho phép ping trực tiếp đến server để quản lý sự sẵn sàng cũng như uptime của server Traceroute cho phép người ding
được đường đi của mạng giúp cho phân loại các lỗi khác nhau đối với
Trang 24+ Downtime scheduler:OpManager cho phép lén lich downtime cua server
để người dùng có thể cập nhật cũng như bảo trì server Tính năng này có thể mở rộng
ra các thiết bị mạng viễn thông khác như switches hay routers Và trong thời gian bảo trì và nâng cấp, OpManager vẫn có thể tự động ngưng quản lý các thiết bị đó
+ OS monitor:OpManager cho phép quản trị hệ thống truy vết trạng thái thái của các service, trạng thái của các tiến trình, log,
+ Quản lý server tự động sử dụng workflow: vai trò của công cụ quản lý server bao gồm chức năng sửa lỗi và bảo trì thường xuyên và tỉ mỉ Việc sử dụng tự động hoá giúp tiết kiệm thời gian cũng như công sức OpManager cung cấp 80 actions tự động xử lý với workflow( dừng/khởi động máy ảo, thực thí scripts,
đừng/khởi động các services, )
Hình 2.2: Giao diện xử lý vworljÏow của OpManager'
2.2.2 Solarwinds Network Performance Monitor (NPM)
Solarwinds network performance monitor 1a m6t céng cu gitp phat hién, chan đoán lỗi một cách nhanh chóng và xử lý các vấn đẻ liên quan đến hiệu suất trước khi sự cô xảy ra Solarwinds NPM cung cap man hinh dashboard voi dit ligu thời gian thực giúp cho quản trị hé théng cé thé quan satva lan theo cc ditligu Bén cạnh đó, bằng việc sử dụng công cụ trên hệ thống mạng được liên kết động, người
dùng có thể triển khai các tiện ích cũng như các dịch vụ và hoàn toàn bắ kịp với hệ
Trang 25
Hình 2.3: Dashboard của phan mém Solarwinds Network Performance
Monitor (NPM) Các chức năng chính của hệ thông quản lý Solarwinds Network Performance
Monitor(NPM):
+ Automatic discovery of network devices — Tu dong nhan dién các thiét bi
mạng viễn thông: Solarwinds tự động tích hợp “Network Sonar” gitip cho việc nhận
biết cũng như cập nhật số lượng của thiết bị mạng viễn thông truy cap vao NPM dé
đàng hơn
+ Netpath: Hop-by-hop of critical network paths: Tính năng của Netpath cung cấp chức năng nâng cao cho phép đóng băng các lỗi mạng và các lỗi hiệu suất
của hệ thống Với chức năng mới của Netpath, các kĩ sự mạng cũng như quản trị hệ
thống có thé nhận biết đường mạng từ một máy tính nguồn và từ đó có thể truy vết đến server đích Tính năng này ngoài việc giúp quản trị viên của hệ thống kiểm tra
được hiệu suất server và đặc tính của từng chế độ mạng mà còn có thê kịp thời sửa lỗi trước khi hệ thống bị làm chậm lại
+ Network Insignht for F5 Big-IP: Network Insignhtlà một chức năng quan
trọng giúp cho quản trị viên hệ thống hiểu hơn về phân tích hiệu suất của hệ thống
kế cả khi các dịch vụ và ứng dụng được sử dụng thông qua nhiéuLTMs, GTMs hoặc
nhiều server khác nhau Bên cạnh đó Network Insignht giúp cho quản trị viên cũng
Trang 26
như kiến trúc sư hệ thống cải thiện kích cỡ của hệ thống mạng, cân bằng tâi và phát
hiện các điểm nút có thể làm chậm hiệu suất xử lý của hệ thống
+ Intelligent Network Alerts — Canh bao mang théng minh: Solarwinds cho phép nhiều người dùng có thẻ kịp thời nhận biết những sự cố trong mang Conditional Group Dependencies cho phép nhóm các thiết bị được liên kết với nhau và chỉ gửi
thông báo cho quản trị viên trong trường hợp có lỗi nghiêm trọng với router lõi Kết quả trả về sẽ cho người dùng biết và phân biệt các trường hợp lỗi nghiêm trọng và
phương thức HTTP/HTTPS và lưu trữ dữ liệu dưới dạng time-series đatabasc
(TSDB)
Time-series database diing đề lưu trữ time-series đata Time-series đata là
chuỗi các điểm dữ liệu — kết quả là các phép đo liên tục thực hiện từ cùng một nguồn
đo trong một khoảng thời gian nhằm nhận dạng và tập hợp các yếu tố xảy ra mà ảnh
hưởng đến giá trị của biến số đang quan sát
Trang 27
Monitoring tne series cata Status time seties data
Hinh 2.5: Vi duvé time-series data
Time-series data duoc sit dung trong các lĩnh vực: quản lý và phân tích điều
tra, kiểm soát quy trình và chất lượng, loT, Time-series database (TSDB) là cơ sở
đữ liệu được tối ưu hoá do dữ có dấu thời gian hoặc êu chuỗi thời gian ( time-series database) Ditliéu dau théi gian la két quả của các phép đo cũng như các
sự kiện được theo dõi và tông hợp theo thời gian xảy ra Thường thì những số liệu này là kể quả của các số liệu máy chủ, giám sát các dịch vụ và ứng dụng, dữ liệu cảm
biến của các sự kiện, nhấp chuột trong các giao dich,
Trang 28Time-series database được xây đựng đặc biệt để xử lý các số liệu và sự kiện
hoặc phép đo đã được đóng dấu thời gian Cơ sở dữ liệu chuỗi thời gian được tối ưu
để đo sự thay đổi theo thời gian Các thuộc tính làm cho time-series data khác biệt ở việc quản lý vòng đời của dữ liệu, tóm tắt và phạm vi lớn của nhiều bản ghi
Bằng việc triển khai Prometheus & Grafana, dữ liệu chuỗi thời gian - time-
series đata của hệ thống có thề để dàng được theo dõi, thống kê, hiển thị dưới nhiều loại dashboard va graph khác nhau rất thuận tiện cho quản trị hệ thông server theo
đối và làm việc Bên cạnh đó Grafana còn có thể truy xuất dữ liệu từ Elasticsearch, Prometheus hay InfluxDB déhién thi duéi dang biểu đề
Hình 2.7: Kiến trúc Prometheus va Grafana quanly server MySQL
Chính vì là m6t opensource nén Prometheus & Grafana cé thé dé dang chinh sửa và tuỳ chỉnh theo nhu cầu sử dụng cũng như nghiệp vụ của hệ thống Trong đồ
án này, chúng ta sẽ từng bước tìm hiểu các phần và dựng một monitor system từ Prometheus & Grafana Bằng việc sử r dụng: Promethus & Grafana, người dùng hay
doanh nghiệp có thể tiết kiệm được rất nhiều chỉ phí cũng như thời gian trong việc
xây dựng, quản lý và cài đặt nghiệp vụ