14. tháng 5 2025
Máy chủ giải quyết DNS đệ quy trong mạng nội bộ của trung tâm dữ liệu đang hoạt động quá xem kết quả tỷ số bóng đá tải, thiếu ổn định và thường xuyên xảy ra lỗi trong quá trình phân giải tên miền.
options timeout:1
nameserver 114.114.114.114
nameserver 8.8.8.8
Thiết lập options timeout:1 đã thay thế giá trị mặc định là 5 giây nhưng vẫn chưa đáp ứng được yêu cầu của môi trường sản xuất. Một giây chậm trễ có thể gây ảnh hưởng nghiêm trọng đến trải nghiệm người dùng. Vì vậy, chúng ta sẽ thử sử dụng dnsmasq.
Dnsmasq có khả năng gửi các yêu cầu truy vấn tới nhiều nameserver khác nhau và lưu trữ kết quả nhanh nhất vào bộ nhớ đệm cục bộ.
Trên hệ điều hành CentOS, bạn có thể cài đặt bằng cách tham khảo tập lệnh tự động cài đặt dnsmasq của tôi. Phiên bản mặc định được cài đặt là 2.48. Bạn cũng có thể tham khảo tài liệu "Caching Nameserver using dnsmasq".
dig sunzhongwei.com @127.0.0.1
time dig sunzhongwei.com @127.0.0.1
Trong trường hợp một số máy chủ DNS đệ quy gặp sự cố, hệ thống vẫn phải có khả năng phân giải các tên miền chưa được lưu trong bộ nhớ đệm. Cách thực hiện như sau:
Kích thước của file ảnh Docker là bao nhiêu?
$ sudo docker pull centos:6
$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos 6 510cf09a7986 3 tuần trước [vn69](/blog/qms-supplier-managemen/) 202.6 MB
Như vậy, kích thước của một ảnh CentOS 6 chỉ khoảng 200MB.
Một hiện tượng thú vị khi sử dụng Docker:
sudo docker run -t -i centos:6 /bin/bash
Sau khi đăng nhập vào ảnh, mọi chương trình được cài đặt sẽ biến mất sau khi thoát (exit). Điều này rất tiện lợi để tạo ra môi trường thử nghiệm mới mẻ mỗi lần.
sudo docker run -t -i -v /duongdan/tren/maychu:/mnt $container /bin/bash
cp /mnt/nguonfile /duongdan/destfile
/etc/init.d/dnsmasq start
dnsmasq: setting capabilities failed: Operation not permitted
Trên máy vật lý, không gặp lỗi này. Có thể thấy rằng dnsmasq mặc định chạy dưới quyền của người dùng nobody:
# ps axuw | grep dnsmasq
nobody 19846 0.0 0.0 11180 676 ? S 16:56 0:00 /usr/sbin/dnsmasq
zhongwei 19937 0.0 0.0 103196 772 pts/1 S+ 16:56 0:00 grep dnsmasq
Theo tài liệu tham khảo "dnsmasq: setting capabilities failed: Operation not permitted", bạn chỉ cần thay đổi mục user trong tệp cấu hình /etc/dnsmasq.conf thành root để khởi động bình thường. Tuy nhiên, cách làm này khá nguy hiểm trong môi trường sản xuất.