Thiết lập local repo cho ubuntu và centos sử dụng apt-cacher-ng.
1. Apt-cacher-ng
Apt-Cacher-NG là một caching proxy server, sau khi cài đặt, nó sẽ “cache” các gói đã download từ trên internet về và đặt tại server cho những lần sử dụng sau. Nhờ vậy, các máy khác lần sau sẽ không cần phải mất thời gian tải các packages từ trên internet về nữa.
Hoạt động theo mô hình client server.
Với apt-cacher-ng, chúng ta có thể theo dõi sự update và download các gói phần mềm được thiết lập và hỗ trợ sử dụng trong cả các môi trường.
Các tính năng:
- Người dùng có thể tích hợp dữ liệu từ file ISO - hoặc DVD vào apt-cacher-ng bằng cách sử dụng tùy chọn “import”.
- Giúp giảm băng thông đường truyền ra Internet.
- Tăng tốc độ download package.
- Tăng tính đồng bộ về các phiên bản của các package.
2. Cấu hình.
2.1. Cấu hình trên server ubuntu 16.04
-
Cài đặt apt-cacher-ng:
apt-get install apt-cacher-ng -y
Sau khi đã cài đặt,apt-cacher-ng
sẽ tự động được khởi động. Mở file cấu hình của apt-cacher-ng (/etc/apt-cacher-ng/acng.conf
) và chỉnh sửa các nội dung như sau: - Bỏ comment các nội dung sau:
- Cấu hình thư mục chứa các tất cả các package được cài đặt và cập nhật:
CacheDir: /var/cache/apt-cacher-ng
- Kích hoạt chế độ ghi lại log để tiện theo dõi sau này:
LogDir: /var/log/apt-cacher-ng
- Cấu hình port của
apt-cacher-ng
(mặc định là 3142, có thể thay đổi được):Port:3142
- Cấu hình
BindAddress
là những địa chỉ mà server dùng để nhận request từ các client,0.0.0.0
đại diện cho tất cả địa chỉ IPv4:# BindAddress: localhost 192.168.7.254 publicNameOnMainInterface BindAddress: 0.0.0.0
- Kích hoạt chế độ ghi lại report về lưu lượng và request qua
apt-cacher-ng
trên giao diện web (mặc định đã kích hoạt)ReportPage: acng-report.html
- Để chạy dịch vụ apt-cacher, cần kích hoạt pid file như sau:
PidFile: /var/run/apt-cacher-ng/pid
- Để sử dụng các repo https thông qua ssl/tls, thêm cấu hình sau:
PassThroughPattern: .*
- Cấu hình ngày hết hạn cho các file cache, mặc định là 4 ngày.
ExTreshold: 4
- Cấu hình thư mục chứa các tất cả các package được cài đặt và cập nhật:
- Thiết lập để lưu cache cho cả centos:
- Thêm vào file config những dòng sau để cấu hình các mirror, và cấu hình cho phép các client tìm kiếm mirror :
Remap-centos: file:centos_mirrors /centos VfilePatternEx: ^/\?release=[0-9]+&arch= VfilePatternEx: ^(/\?release=[0-9]+&arch=.*|.*/RPM-GPG-KEY-examplevendor)$
- Lưu lại cấu hình.
- Chạy lệnh sau để tiến hành tạo mirror list và ghi vào file /etc/apt-cacher-ng/centos_mirrors:
curl https://www.centos.org/download/full-mirrorlist.csv | sed 's/^.*"http:/http:/' | sed 's/".*$//' | grep ^http >/etc/apt-cacher-ng/centos_mirrors
- Thêm vào file config những dòng sau để cấu hình các mirror, và cấu hình cho phép các client tìm kiếm mirror :
-
Khởi động lại dịch vụ apt-cacher:
sudo /etc/init.d/apt-cacher-ng restart # or sudo service apt-cacher-ng restart
2.2. Cấu hình trên máy client.
Tiến hành cấu hình cho các client để sử dụng server như một proxy cài package.
- Với client là ubuntu, chạy lệnh sau vơi x.x.x.x là IP nhận request của server:
echo 'Acquire::http { Proxy "http://x.x.x.x:3142"; };' > /etc/apt/apt.conf.d/01proxy
- Với client là centos, chạy lệnh sau:
echo "proxy=http://x.x.x.x:3142" >> /etc/yum.conf