Ubuntu 18.04 Từng bước
Hy vọng tất cả điều này sẽ giúp, khá lâu nhưng nó hoạt động (với bằng chứng)
Tôi đã bắt gặp chủ đề này trong khi cài đặt MongoDb trên Ubuntu 18.04
https://poseidev.com/blog/2009/06/04/set-ulimit-parameter-on-ub Ubuntu /
Như bạn có thể thấy nó khá cũ tuy nhiên nó hoạt động với tôi.
Đây là những gì tôi đã làm.
Cài đặt được đề xuất MongoDb ( https://docs.mongodb.com/manual/reference/ulimit/#review-and-set-resource-limits )
- -f (kích thước tệp): không giới hạn
- -t (thời gian cpu): không giới hạn
- -v (bộ nhớ ảo): không giới hạn [1]
- -l (kích thước khóa trong bộ nhớ): không giới hạn
- -n (mở tệp): 64000
- -m (kích thước bộ nhớ): không giới hạn [1] [2]
- -u (quy trình / chủ đề): 64000
Kiểm tra giới hạn hiện tại của tôi
ubfox @ isdb-giai đoạn: ~ $ ulimit -a
kích thước tệp lõi (khối, -c) 0
kích thước seg dữ liệu (kbytes, -d) không giới hạn
lập lịch ưu tiên (-e) 0
kích thước tệp (khối, -f) không giới hạn
tín hiệu chờ xử lý (-i) 7873
bộ nhớ bị khóa tối đa (kbytes, -l) 16384
kích thước bộ nhớ tối đa (kbytes, -m) không giới hạn
mở tệp (-n) 1024
kích thước ống (512 byte, -p) 8
Hàng đợi tin nhắn POSIX (byte, -q) 819200
ưu tiên thời gian thực (-r) 0
kích thước ngăn xếp (kbytes, -s) 8192
thời gian cpu (giây, -t) không giới hạn
quy trình người dùng tối đa (-u) 7873
bộ nhớ ảo (kbytes, -v) không giới hạn
khóa tệp (-x) không giới hạn
Ghi lại những gì cần thay đổi
- kích thước khóa trong bộ nhớ , cần phải được đặt thành không giới hạn.
- mở tập tin , cần phải được đặt thành 64000
- quy trình / chủ đề * , cần được đặt thành 64000
Ubuntu nói gì về cách thay đổi các giới hạn này?
$ man giới hạn.
TÊN
terms.conf - tệp cấu hình cho mô-đun pam_limits
SỰ MIÊU TẢ
Mô-đun pam_limits.so áp dụng các giới hạn ulimit, mức độ ưu tiên tốt và số lượng phiên đăng nhập đồng thời giới hạn cho các phiên đăng nhập của người dùng. Mô tả cú pháp tệp cấu hình này áp dụng cho
tập tin /etc/security/limits.conf và tập tin * .conf trong
/etc/security/limits.d thư mục.
- Có vẻ khá rõ ràng, chỉnh sửa tệp /etc/security/limits.conf. Ok hãy tìm ra nó ....
Đây là sự khởi đầu của tập tin đó, và xem nó thậm chí còn có hướng dẫn trong khóa học, hãy nhớ rằng đây là nguồn mở được viết bởi những người tốt! :)
vi /etc/security/limits.conf
# /etc/security/limits.conf
Dòng #Each mô tả giới hạn cho người dùng ở dạng:
#
#Ở đâu:
# có thể:
# - tên người dùng
(Hãy xem tập tin nếu bạn muốn biết thêm chi tiết)
- Cuối cùng thực hiện các thay đổi. Vì MongoDb chạy dưới dạng nhóm mongodb và người dùng, nên chỉ giới hạn người dùng đó là một ý tưởng tốt. Tôi đã thấy '*' được sử dụng ở đây và ở đó, với tôi đó là một rủi ro bảo mật. Nó cung cấp cho tất cả và lặt vặt trên máy chủ những giới hạn này, có thể được sử dụng để tối đa hóa máy chủ của bạn. Vì vậy, hãy làm cho chúng chỉ dành cho người dùng mongodb.
Đây là những thay đổi của tôi: -
mongodb memlock mềm không giới hạn
mongodb cứng memlock không giới hạn
mongodb nofile mềm 64000
mongodb cứng nofile 64000
mongodb nproc 64000
mongodb cứng nproc 64000
Cuối cùng, cuối cùng, hãy nhớ điều này trong mục man giới hạn.
terms.conf - tệp cấu hình cho mô-đun pam_limits
Tốt hơn là đảm bảo rằng mô-đun pam_limits được tải để tất cả các công cụ giới hạn này hoạt động. Để làm điều này, bạn chỉnh sửa /etc/pam.d/common-session. Tất nhiên điều này cũng có trong trang người đàn ông.
sudo vi /etc/pam.d/common-session
# Thêm cái này để đảm bảo pam_limits.so được tải.
phiên yêu cầu pam_limits.so
Khởi động lại sẽ hiển thị các giới hạn (đối với người dùng mongodb) đã được áp dụng. Nếu bạn đã áp dụng chúng bằng cách sử dụng '*', bạn có thể kiểm tra mà không phải chuyển sang người dùng mongodb. Chỉ cần thực hiện lệnh này.
$ ulimit -a
kích thước tệp lõi (khối, -c) 0
kích thước seg dữ liệu (kbytes, -d) không giới hạn
lập lịch ưu tiên (-e) 0
kích thước tệp (khối, -f) không giới hạn
tín hiệu chờ xử lý (-i) 7873
bộ nhớ bị khóa tối đa (kbytes, -l) không giới hạn
kích thước bộ nhớ tối đa (kbytes, -m) không giới hạn
mở tệp (-n) 64000
kích thước ống (512 byte, -p) 8
Hàng đợi tin nhắn POSIX (byte, -q) 819200
ưu tiên thời gian thực (-r) 0
kích thước ngăn xếp (kbytes, -s) 8192
thời gian cpu (giây, -t) không giới hạn
quy trình người dùng tối đa (-u) 64000
bộ nhớ ảo (kbytes, -v) không giới hạn
khóa tệp (-x) không giới hạn
Như bạn có thể thấy, Lubbly tưng bừng tất cả được đặt theo giới hạn mà chúng tôi muốn.