NFS (Network File System) là một giao thức hệ thống tệp phân tán do Sun Microsystem phát triển. NFS cho phép máy chủ chia sẻ tệp và thư mục của một thư mục trên máy chủ qua mạng. Khi chia sẻ NFS được gắn trên hệ thống máy khách, thì NFS cho phép người dùng truy cập tệp và thư mục trên hệ thống từ xa như thể chúng được lưu trữ cục bộ.
Trong hướng dẫn này, tôi sẽ hướng dẫn bạn cài đặt máy chủ NFS trên CentOS 7, tôi sẽ chỉ cho bạn cách tạo thư mục mới trên CentOS 7 rồi chia sẻ thư mục đó qua giao thức NFS. Sau đó, chúng ta sẽ thêm chia sẻ NFS mà chúng ta đã tạo trên máy chủ Proxmox làm không gian sao lưu cho các máy ảo.
Bây giờ hãy cài đặt nfs bằng yum:
nfs-utilslà các tiện ích để quản lý máy chủ NFS. Chúng phải được cài đặt trên máy chủ và máy khách.
rpcbind là một daemon cho phép máy khách NFS khám phá cổng được máy chủ NFS sử dụng.
libnfsidmap là một thư viện giúp ánh xạ id cho NFSv4.
Nếu tất cả các gói được cài đặt thành công, hãy bật các dịch vụ rpcbind và nfs-server khi máy chủ khởi động.
Sau đó, hãy khởi động tất cả các dịch vụ:
Tiếp theo, chúng ta sẽ bật firewalld và mở các cổng dịch vụ NFS, mountd và rpc-bind để chúng ta có thể truy cập NFS từ các máy chủ khác trong network.
Tải lại cấu hình firewalld để áp dụng các thay đổi:
Để xem các dịch vụ được phép trong tường lửa, hãy sử dụng lệnh sau:
Xin lưu ý, nếu máy chủ sao lưu này được sử dụng cho các dịch vụ khác hoặc là hệ thống nhiều người dùng, thì bạn nên sử dụng các quyền nghiêm ngặt hơn như 755 hoặc thậm chí 750 và chỉ định thư mục cho người dùng có thể ghi vào đó.
Tiếp theo, sửa đổi tệp /etc/exports để cấu hình thư mục nào sẽ chia sẻ, IP của máy khách và các tùy chọn cụ thể khác.
Thêm cấu hình bên dưới:
Lưu và thoát.
/var/nfsproxmox = thư mục chia sẻ có quyền đọc và ghi.
192.168.1.111 = địa chỉ IP của máy khách nfs (Trong hướng dẫn này, chúng tôi sử dụng Proxmox Server).
rw = Cho phép cả hai đọc và ghi vào thư mục chia sẻ.
sync = Chỉ trả lời yêu cầu sau khi các thay đổi đã được cam kết lưu trữ ổn định. (Mặc định)
no_root_squash = Cho phép người dùng root trên máy khách có cùng cấp độ và quyền với root trên máy chủ đối với thư mục được chia sẻ.
Bây giờ hãy xuất thư mục được chia sẻ bằng lệnh sau:
Các lệnh NFS hữu ích khác là:
exportfs -a = xuất tất cả thư mục được chia sẻ trên cấu hình tệp /etc/exports.
exportfs -v = hiển thị tất cả thư mục được chia sẻ.
Cấu hình NFS trên máy chủ đã hoàn tất và bây giờ chúng ta có thể chuyển sang giai đoạn tiếp theo, cấu hình proxmox để sử dụng NFS.
Đăng nhập vào máy chủ proxmox từ trình duyệt web:
https://192.168.1.111:8006/
Trong trang quản trị web Proxmox, nhấp vào "Datacenter" rồi chuyển đến tab "Storage", nhấp vào "Add" và chọn NFS.
Bây giờ nhập thông tin cấu hình NFS:
ID = Nhập tên của NFS, tôi sẽ sử dụng "nfsproxmox" ở đây.
IP máy chủ = Địa chỉ IP của máy chủ NFS, của tôi là 192.168.1.102.
Xuất = Thư mục chia sẻ NFS - /var/nfsproxmox.
Nội dung = Loại tệp trên máy chủ NFS, Ảnh đĩa, tệp ISO, Container, tệp sao lưu VZDump, v.v.
Bật = Kiểm tra.
Sao lưu tối đa = Sao lưu tối đa được phép của mỗi VM.
Và nhấp vào "Thêm".
Bây giờ bạn có thể thấy dung lượng lưu trữ mới ở bên trái.
Nhấp vào tên VM và đi đến tab "Sao lưu" và nhấp vào "Sao lưu ngay".
Chọn tất cả những gì bạn cần:
Lưu trữ = Tên/ID NFS của chúng tôi.
Chế độ =
Có 3 chế độ sao lưu:
Nhấp vào "Sao lưu" để bắt đầu sao lưu VM.
Bây giờ bạn có thể thấy tác vụ sao lưu đang chạy:
Để xem tệp sao lưu, hãy nhấp vào nfs-id "nfsproxmox" và nhấp vào tab "Nội dung".
Bạn có thể thấy hộp bật lên:
Nguồn = tệp sao lưu.
Lưu trữ = Lưu trữ mà VM sẽ được lưu trữ.
ID VM = ID cho VM đã khôi phục.
Nhấp vào "Khôi phục" để bắt đầu khôi phục VM.
Khôi phục VM quá trình:
Lưu ý:
Nếu bạn muốn thay thế VM, thì bạn có thể chọn VM mà bạn muốn thay thế và đi đến tab "Sao lưu", ở đó bạn cũng sẽ thấy tệp sao lưu, hãy chọn tệp đó và nhấp vào "Khôi phục".
Trong hướng dẫn này, tôi sẽ hướng dẫn bạn cài đặt máy chủ NFS trên CentOS 7, tôi sẽ chỉ cho bạn cách tạo thư mục mới trên CentOS 7 rồi chia sẻ thư mục đó qua giao thức NFS. Sau đó, chúng ta sẽ thêm chia sẻ NFS mà chúng ta đã tạo trên máy chủ Proxmox làm không gian sao lưu cho các máy ảo.
Điều kiện tiên quyết
Chúng ta cần hai máy chủ.- Máy chủ Proxmox có IP: 192.168.1.111
- CentOS 7 có IP: 192.168.1.102
Bước 1 - Cài đặt NFS trên CentOS 7
Kết nối với máy chủ CentOS bằng SSH (và nhận quyền root bằng lệnh sudo nếu bạn không sử dụng thông tin đăng nhập root).
Mã:
ssh [emailprotected]
sudo su
Mã:
yum -y install nfs-utils libnfsidmap rpcbind
rpcbind là một daemon cho phép máy khách NFS khám phá cổng được máy chủ NFS sử dụng.
libnfsidmap là một thư viện giúp ánh xạ id cho NFSv4.
Nếu tất cả các gói được cài đặt thành công, hãy bật các dịch vụ rpcbind và nfs-server khi máy chủ khởi động.
Mã:
systemctl enable rpcbind
systemctl enable nfs-server
Mã:
systemctl start rpcbind
systemctl start nfs-server
systemctl start rpc-statd
systemctl start nfs-idmapd
Mã:
systemctl start firewalld
firewall-cmd --permanent --zone public --add-service mountd
firewall-cmd --permanent --zone public --add-service rpc-bind
firewall-cmd --permanent --zone public --add-service nfs
Mã:
firewall-cmd --reload
Mã:
firewall-cmd --list-all
Bước 2 - Tạo một thư mục dùng chung
Trong bước này, chúng ta sẽ tạo một thư mục và chia sẻ nó với máy chủ proxmox. Tôi sẽ tạo thư mục 'nfsproxmox' trong thư mục /var và thay đổi quyền thành 777 để bất kỳ ai cũng có thể đọc và ghi vào đó.
Mã:
mkdir -p /var/nfsproxmox
chmod -R 777 /var/nfsproxmox/
Tiếp theo, sửa đổi tệp /etc/exports để cấu hình thư mục nào sẽ chia sẻ, IP của máy khách và các tùy chọn cụ thể khác.
Mã:
vim /etc/exports
Mã:
/var/nfsproxmox 192.168.1.111(rw,sync,no_root_squash)
/var/nfsproxmox = thư mục chia sẻ có quyền đọc và ghi.
192.168.1.111 = địa chỉ IP của máy khách nfs (Trong hướng dẫn này, chúng tôi sử dụng Proxmox Server).
rw = Cho phép cả hai đọc và ghi vào thư mục chia sẻ.
sync = Chỉ trả lời yêu cầu sau khi các thay đổi đã được cam kết lưu trữ ổn định. (Mặc định)
no_root_squash = Cho phép người dùng root trên máy khách có cùng cấp độ và quyền với root trên máy chủ đối với thư mục được chia sẻ.
Bây giờ hãy xuất thư mục được chia sẻ bằng lệnh sau:
Mã:
exportfs -r
exportfs -a = xuất tất cả thư mục được chia sẻ trên cấu hình tệp /etc/exports.
exportfs -v = hiển thị tất cả thư mục được chia sẻ.
Cấu hình NFS trên máy chủ đã hoàn tất và bây giờ chúng ta có thể chuyển sang giai đoạn tiếp theo, cấu hình proxmox để sử dụng NFS.
Bước 3 - Cấu hình Proxmox để sử dụng NFS Storage
Tôi sẽ có một máy chủ proxmox với IP 192.168.1.111, được cài đặt cùng với hướng dẫn này.Đăng nhập vào máy chủ proxmox từ trình duyệt web:
https://192.168.1.111:8006/
Trong trang quản trị web Proxmox, nhấp vào "Datacenter" rồi chuyển đến tab "Storage", nhấp vào "Add" và chọn NFS.
Bây giờ nhập thông tin cấu hình NFS:
ID = Nhập tên của NFS, tôi sẽ sử dụng "nfsproxmox" ở đây.
IP máy chủ = Địa chỉ IP của máy chủ NFS, của tôi là 192.168.1.102.
Xuất = Thư mục chia sẻ NFS - /var/nfsproxmox.
Nội dung = Loại tệp trên máy chủ NFS, Ảnh đĩa, tệp ISO, Container, tệp sao lưu VZDump, v.v.
Bật = Kiểm tra.
Sao lưu tối đa = Sao lưu tối đa được phép của mỗi VM.
Và nhấp vào "Thêm".
Bây giờ bạn có thể thấy dung lượng lưu trữ mới ở bên trái.
Bước 4 - Sao lưu VM trên Proxmox vào Bộ lưu trữ NFS
Trong hướng dẫn này, tôi có một máy ảo có ID 100 tên là "debian" và hiện máy ảo này đang hoạt động. Trong bước này, chúng ta sẽ sao lưu VM đó vào bộ lưu trữ NFS "nfsproxmox".Nhấp vào tên VM và đi đến tab "Sao lưu" và nhấp vào "Sao lưu ngay".
Chọn tất cả những gì bạn cần:
Lưu trữ = Tên/ID NFS của chúng tôi.
Chế độ =
Có 3 chế độ sao lưu:
- Ảnh chụp nhanh (Không có thời gian chết, Trực tuyến).
- Tạm dừng (Giống như Ảnh chụp nhanh cho KVM), Sử dụng tạm dừng/tiếp tục và nhiều lần rsync (OpenVZ và LXC).
- Dừng = Tắt VM, sau đó bắt đầu sao lưu trực tiếp KVM và khởi động lại VM (Thời gian chết ngắn).
Nhấp vào "Sao lưu" để bắt đầu sao lưu VM.
Bây giờ bạn có thể thấy tác vụ sao lưu đang chạy:
Để xem tệp sao lưu, hãy nhấp vào nfs-id "nfsproxmox" và nhấp vào tab "Nội dung".
Bước 5 - Khôi phục VM từ Lưu trữ NFS
Để khôi phục VM, hãy nhấp vào VM mà bạn muốn khôi phục rồi nhấp vào "Khôi phục" trên lưu trữ NFS.Bạn có thể thấy hộp bật lên:
Nguồn = tệp sao lưu.
Lưu trữ = Lưu trữ mà VM sẽ được lưu trữ.
ID VM = ID cho VM đã khôi phục.
Nhấp vào "Khôi phục" để bắt đầu khôi phục VM.
Khôi phục VM quá trình:
Lưu ý:
Nếu bạn muốn thay thế VM, thì bạn có thể chọn VM mà bạn muốn thay thế và đi đến tab "Sao lưu", ở đó bạn cũng sẽ thấy tệp sao lưu, hãy chọn tệp đó và nhấp vào "Khôi phục".