Cách cấu hình các nhóm Linux

Cach Cau Hinh Cac Nhom Linux



Biết và hiểu những quy trình nào tiêu thụ các tài nguyên hệ thống khác nhau là một phần nhiệm vụ của bạn với tư cách là quản trị viên hệ thống. May mắn thay, nhân Linux cho phép bạn phân bổ và quản lý tài nguyên bằng tính năng Nhóm điều khiển (cgroups), nhưng bạn phải biết cách định cấu hình nó.

Bài đăng này hướng dẫn cách cấu hình các nhóm Linux. Chúng tôi sẽ xác định nó và hiểu lợi ích của nó. Hơn nữa, chúng ta sẽ xem cách bạn có thể định cấu hình các nhóm Linux. Hãy bắt đầu nào!







Nhóm C trong Linux là gì

Nhân Linux cung cấp các nhóm như một tính năng cho phép quản lý tài nguyên hệ thống cho các quy trình khác nhau. Nhờ các nhóm, việc giới hạn số lượng tài nguyên hệ thống mà một quy trình hoặc các nhóm quy trình có thể sử dụng để loại bỏ sự độc quyền và đảm bảo có thể phân bổ tài nguyên công bằng. Các nhóm giúp đóng các vai trò sau:



1. Phân bổ nguồn lực



Mục đích chính của cgroups là phân bổ nguồn lực. Bạn có thể nhanh chóng phân bổ các tài nguyên như bộ nhớ, băng thông mạng, CPU, v.v. cho bất kỳ quy trình hoặc nhóm quy trình nào. Ý tưởng là nâng cao hiệu suất hệ thống của bạn bằng cách đảm bảo rằng không có quy trình nào độc quyền tài nguyên hệ thống. Bạn sẽ có hiệu suất hệ thống ổn định bằng cách phân phối tài nguyên một cách công bằng.





2. Ưu tiên

Hãy tưởng tượng một tình huống mà bạn có các nhiệm vụ hoặc quy trình có mức độ ưu tiên cao. Trường hợp như vậy yêu cầu bạn phải ưu tiên tài nguyên hệ thống của mình cho các tác vụ đó để đảm bảo rằng chúng đáp ứng được mong đợi, đặc biệt là khi có tải nặng. Ví dụ: nếu bạn có một quy trình hoặc công việc nhạy cảm với độ trễ yêu cầu sử dụng nhiều CPU, bạn có thể ưu tiên và chỉ định nhiều tài nguyên hơn bằng cách sử dụng cgroups.



3. Cách ly tài nguyên

Bằng cách cho phép bạn tạo ranh giới tài nguyên, các nhóm cho phép bạn cô lập các tài nguyên và thực thi các giới hạn. Bằng cách đó, bạn có thể ngăn chặn sự can thiệp giữa các ứng dụng, đặc biệt khi các ứng dụng hoặc người dùng khác nhau sử dụng cùng một hệ thống.

4. Hỗ trợ container hóa

Khi làm việc với các tùy chọn bộ chứa như Docker, nơi bạn phải đặt các bộ chứa chạy trong môi trường biệt lập, cgroups cho phép bạn tạo môi trường nhẹ. Bạn có thể phân bổ tài nguyên một cách an toàn và hiệu quả trên máy chủ bị cô lập.

5. Giám sát tài nguyên

Bạn có thể lấy số liệu thống kê về các tài nguyên khác nhau được chỉ định cho các quy trình trên hệ thống của mình bằng cgroup. Số liệu thống kê mà bạn thu thập là lý tưởng để phân tích hiệu suất hệ thống của bạn. Bằng cách đó, bạn có thể xác định các điểm nghẽn tài nguyên, từ đó cho phép bạn lập kế hoạch phân phối tài nguyên. Những thông tin chi tiết này rất lý tưởng để hiểu cách ứng dụng hoạt động nhằm hướng dẫn cách bạn có thể tối ưu hóa chúng.

Cách cấu hình các nhóm Linux

Sự phổ biến ngày càng tăng của việc container hóa mở đường cho việc sử dụng nhiều nhóm Linux hơn để trợ giúp quản lý và giám sát tài nguyên. Cho đến nay, chúng ta đã xác định được các nhóm và thấy được lợi ích của nó.

Bây giờ, hãy xem cách chúng ta có thể cấu hình nó. Chúng tôi đang làm việc với Ubuntu 22.04, nhưng hướng dẫn này hoạt động với các bản phân phối Linux khác. Chúng tôi chia quá trình thành hai phần: cài đặt và cấu hình.

Phần 1: Cài đặt

Hãy bắt đầu bằng cách cài đặt các nhóm trên hệ thống của chúng tôi với các bước sau:

Bước 1: Cài đặt Công cụ Cgroups

Bắt đầu bằng cách cập nhật kho apt để mở đường cho quá trình cài đặt.

sudo cập nhật thích hợp



Tiếp theo, chạy lệnh cài đặt sau để cài đặt cgroup-tools:

sudo đúng cách cài đặt công cụ cgroup



Bạn có thể xác minh rằng cgroup đã được cài đặt bằng cách kiểm tra nó bằng lệnh dpkg như sau:


Chúng ta có thể thấy rằng quá trình cài đặt đã thành công.

Bước 2: Kích hoạt hỗ trợ Cgroup

Sau khi cài đặt cgroup, bạn phải kích hoạt hỗ trợ cgroup trong GRUB của hệ thống. Để làm điều đó, hãy sử dụng trình soạn thảo văn bản và mở tệp cấu hình GRUB. Chúng tôi đang sử dụng nano trong trường hợp này.

sudo nano / vân vân / mặc định / sâu bọ



Khi nó mở ra, hãy tìm dòng sau:

GRUB_CMDLINE_LINUX_DEFAULT =”giật gân yên tĩnh”



Sửa đổi nó để bao gồm “cgroup_enable=memory”.

GRUB_CMDLINE_LINUX_DEFAULT =”giật gân yên tĩnh cgroup_enable = ký ức”



Lưu file và thoát.

Bước 3: Cập nhật GRUB

Sau khi sửa đổi cấu hình GRUB, bạn phải cập nhật nó để những thay đổi có hiệu lực. Tuy nhiên, bạn phải khởi động lại hệ thống của mình để thực hiện các thay đổi hoàn toàn.

Sử dụng các lệnh sau:

sudo cập nhật-grub



Cuối cùng, khởi động lại hệ thống của bạn.

sudo khởi động lại


Bước 4: Tạo điểm gắn kết

Sau khi hệ thống khởi động lại, hãy tạo một thư mục để sử dụng làm điểm gắn kết cho hệ thống tập tin cgroup. Hãy tạo thư mục của chúng tôi như /sys/fs/cgroup như sau:

sudo mkdir / hệ thống / fs / nhóm



Với điểm gắn kết đã được tạo, hãy gắn hệ thống tập tin cgroup với bộ điều khiển bạn chọn. Một số bộ điều khiển mà bạn có thể sử dụng bao gồm bộ nhớ, CPU, bikio, tủ đông, thiết bị, v.v. Hãy sử dụng bộ nhớ cho ví dụ này.

Đây là cú pháp bạn nên sử dụng:

sudo gắn kết -t nhóm -O < bộ điều khiển > nhóm / hệ thống / fs / nhóm


Thay thế bằng mục tiêu mà bạn muốn tạo để sử dụng trong hệ thống tập tin cgroup.


Chúng tôi đã gắn xong rồi. Trong trường hợp của bạn, bạn sẽ nhận được kết quả là quá trình gắn kết thành công.

Xác minh rằng mount cgroup tồn tại và được gắn chính xác bằng cách chạy lệnh sau bằng lệnh “grep”:

gắn kết | nắm chặt nhóm



Giả sử bạn đã làm theo tất cả các bước. Bạn sẽ nhận được một đầu ra tương tự như đầu ra ở đầu ra trước đó, xác nhận rằng giá trị gắn cgroup của bạn tồn tại khi bạn tạo nó.

Phần 2: Cấu hình

Chúng tôi đã cài đặt các công cụ cgroup trên hệ thống Linux của mình và tạo một cgroup mount. Với điều đó, điều cuối cùng là tìm hiểu cách cấu hình các nhóm Linux. Hãy lấy một ví dụ để giúp bạn hiểu điều đó diễn ra như thế nào. Đọc tiếp!

Cách bạn tạo và cấu hình các nhóm tùy thuộc vào yêu cầu của bạn. Ngoài ra, trước tiên bạn phải hiểu bạn sẽ sử dụng bộ điều khiển nào để tạo cấu trúc phân cấp cgroup. Sau khi bạn tạo nhóm, việc định cấu hình nhóm sẽ bao gồm việc giới hạn quyền truy cập của nhóm đó vào tài nguyên hệ thống của bạn. Hãy chia nó thành hai bước.

Bước 1: Tạo hệ thống phân cấp Cgroup

Sau khi gắn hệ thống tập tin cgroup, bạn phải tạo hệ thống phân cấp cgroup tùy theo yêu cầu của bạn. Để làm được điều đó, chúng tôi sử dụng cú pháp sau:

sudo mkdir / hệ thống / fs / nhóm /< bộ điều khiển >>< cgroup_name >


Giả sử chúng ta muốn tạo một nhóm có tên “linuxhint” trong bộ điều khiển bộ nhớ của mình. Chúng ta tiến hành như sau:

sudo mkdir / hệ thống / fs / nhóm / ký ức / linuxhint



Bây giờ chúng ta đã tạo nhóm, hãy tiếp tục và định cấu hình nó bằng cách xác định những tham số nào sẽ gán cho nó như một phần của quản lý tài nguyên hệ thống.

Bước 2: Gán tham số

Mỗi bộ điều khiển đi kèm với các tham số khác nhau mà bạn chỉ định tùy thuộc vào tài nguyên hệ thống mà bạn muốn phân bổ. Vì vậy, khi cấu hình một cgroup, bạn nên biết mình sẽ sử dụng những thông số nào của bộ điều khiển đã chọn.

Sử dụng cú pháp sau trong cấu hình:

tiếng vọng < giá trị > > / hệ thống / fs / nhóm /< bộ điều khiển >>< tên nhóm >>< tham số điều khiển >


Dưới đây là ví dụ về cách định cấu hình nhóm bộ nhớ mà chúng tôi đã tạo trước đó có tên là “linuxhint” để gán cho nó giới hạn bộ nhớ là 1GB. Để làm được điều đó, chúng tôi sử dụng tham số “memory.limit_in_bytes”. Bạn có thể tìm kiếm các thông số bộ nhớ khác mà bạn có thể cấu hình.

Chúng tôi thực hiện lệnh của chúng tôi như sau:

tiếng vọng 1G > / hệ thống / fs / nhóm / ký ức / linuxhint / bộ nhớ.limit_in_bytes



Bạn có thể chỉ định bất kỳ tham số nào phù hợp với yêu cầu của mình. Thực hiện theo quy trình mà chúng tôi đã trình bày chi tiết trước đây để sửa đổi bất kỳ bộ điều khiển nào trong hệ thống của bạn, tạo nhóm cho bộ điều khiển đó và sau đó định cấu hình bộ điều khiển đó. Bạn có thể tự do tạo thêm các nhóm và cấu hình chúng. Nên đặt tên cho các nhóm sao cho trùng với tên của bộ điều khiển mà bạn muốn tập trung vào để dễ nhớ.

Hãy lấy một ví dụ khác trong đó chúng ta tạo một nhóm cho bộ điều khiển CPU. Bắt đầu bằng cách tạo hệ thống phân cấp cgroup như sau:

sudo mkdir / hệ thống / fs / nhóm / CPU / linux-cpu



Tiếp theo, gán các giá trị tham số để phân bổ tài nguyên CPU dựa trên nhu cầu của bạn. Ví dụ: hãy làm việc với cpu.cfs_ Period_us cho phép bạn chỉ định khoảng thời gian micro giây mà quyền truy cập vào tài nguyên của một nhóm sẽ được phân bổ. Hãy đặt nó thành 1000 micro giây trong trường hợp này.


Đó là cách bạn tạo và định cấu hình các nhóm Linux. Các bước có thể hơi khác nhau tùy thuộc vào bản phân phối Linux mà bạn đang sử dụng. Tuy nhiên, bài đăng này trình bày các bước chung mà bạn nên làm theo.

Phần kết luận

Bài đăng này tập trung vào các nhóm Linux. Chúng tôi bắt đầu bằng việc tìm hiểu ý nghĩa của các nhóm Linux và những lợi ích mà nó mang lại cho quản trị viên hệ thống. Tiếp theo, chúng ta đã tìm hiểu các bước cần thực hiện để cài đặt cgroups trên Ubuntu 22.04 nếu nó chưa được cài đặt. Hơn nữa, chúng tôi đã trình bày các bước để định cấu hình các nhóm Linux, từ việc tạo điểm gắn kết, đến tạo cgroup, đến cấu hình các tham số. Hy vọng rằng bạn đã học được cách cấu hình các nhóm Linux. Hãy dùng thử và quan tâm đến những thông số bạn sửa đổi để tránh ảnh hưởng đến hiệu suất hệ thống của bạn.