Chuyên mục
Virtualization

Reset thời hạn dùng thử trên ESXi 6/7

Mặc định khi bạn cài đặt ESXi, nó sẽ được thiết lập sẵn chế độ dùng thử (evaluation license) trong vòng 60 ngày. Bản quyền này cung cấp các tính năng tương đương với bản quyền vSphere Enterprise Plus license, nhưng bị giới hạn thời gian sử dụng.

Do đó, cách tốt nhất để dụng các tính năng cao cấp của ESXi mãi mãi là reset thời hạn sử dụng của bản quyền dùng thử.

Sau khi hết hạn 60 ngày, ESXi sẽ báo lỗi “Your evaluation license for ESXi has expired.” Các máy ảo đang mở sẽ vẫn tiếp tục hoạt động, nhưng nếu bạn tắt nó đi, sẽ không thể mở lại được nữa.

Dưới đây là cách reset thời hạn dùng thử để bạn sử dụng ESXi mãi mãi mà không bị hạn chế tính năng. Cách này có thể áp dụng cho ESXi 6 lẫn ESXi 7.

Lưu ý: Chỉ dùng cho mục đích thử nghiệm và nghịch phá. Nếu sử dụng cho mục đích kinh doanh, bạn cần mua bản quyền từ VMWare.

1. Kích hoạt SSH

Truy cập vào mục Host ở menu bên trái, chọn Actions –> Services –> Enable Secure Shell (SSH) để cho phép truy cập vào ESXi host thông qua SSH.

2. Reset bản quyền

Truy cập SSH vào ESXi host và thực hiện các lệnh sau

Xóa bản quyền hiện tại (đã hết hạn)

rm -r /etc/vmware/license.cfg

Copy bản quyền dùng thử (có sẵn trên host) vào thay thế

cp /etc/vmware/.  #license.cfg /etc/vmware/license.cfg

Khởi động lại dịch vụ ESXi

/etc/init.d/vpxa restart

Truy cập lại vào ESXi, bản quyền dùng thử đã được reset về lại 60 ngày.

3. Cấu hình reset tự động

Mình sẽ cấu hình hệ thống tự động chạy các đoạn script trên sau mỗi 30 ngày, khỏi phải thao tác thủ công nữa.

Tạo file reset-license.sh và lưu nó trong datastore của bạn.

cd /vmfs/volumes/datastore1/
vi reset-license.sh

Bạn cần thay thế datastore1 với tên datastore tương ứng trên host đang dùng.

ESXi không có sẵn nano để chỉnh sửa file, nên bắt buộc phải dùng vi. Cách sử dụng vi: bấm i để bắt đầu chế độ chỉnh sửa, paste vào nội dung bên dưới. Sau đó bấm tiếp Esc : w qEnter để lưu lại và thoát ra

#!/bin/sh
## remove license
echo 'Removing License'
rm -r /etc/vmware/license.cfg
## get a new trial license
echo 'Copying new license'
cp /etc/vmware/. #license.cfg /etc/vmware/license.cfg
## restart services
echo 'Restarting VPXA'
/etc/init.d/vpxa restart

Thiết lập quyền thực thi cho file reset-license.sh và chạy thử

chmod +x reset-license.sh
./reset-license.sh

Tiếp theo, tạo cron để tự động chạy vào ngày 1 của mỗi tháng

/bin/echo "* * 1 * * /vmfs/volumes/datastore1/reset-eval.sh" >> /var/spool/cron/crontabs/root
kill $(cat /var/run/crond.pid)
crond

Do ESXi sẽ tự động reset lại file cron mỗi khi khởi động, nên cần phải edit thêm file /etc/rc.local.d/local.sh và thêm vào đoạn sau vào trước dòng exit 0 ở dưới cùng.

/bin/kill $(cat /var/run/crond.pid)
/bin/echo "* * 1 * * /vmfs/volumes/datastore1/reset-license.sh" >> /var/spool/cron/crontabs/root
crond

Vậy là xong. ESXi sẽ luôn luôn hoạt động trong chế độ dùng thử, với đầy đủ tính năng của bản Enterprise để bạn thoải mái nghiên cứu, nghịch phá.

Tham khảo: Calvin.me,thuanbui