Tôi nghĩ Giải quyết một số vấn đề phổ biến về điều này có thể giúp bạn.
Và đây là phần thiết yếu
Tăng dung lượng đĩa
Thông thường (thật đáng buồn), hộp cơ sở đám mây đi kèm với các định dạng đĩa VMDK. Nếu bạn may mắn và định dạng đĩa của bạn là VDI, bạn có thể giải quyết điều này trực tiếp như thế này. Nhưng, VMDK không thể được mở rộng, vì vậy bạn cần thêm một đĩa khác vào VM của mình. Nếu làm điều này bằng tay là khó, bạn có thể chụp ảnh làm điều này từ Vagrant không? Chà, bây giờ tôi đã giải quyết được không khó lắm:
Tạo một tập lệnh có tên "bootstrap.sh" trên thư mục làm việc của bạn và thêm các dòng sau:
pvcreate /dev/sdb
vgextend VolGroup /dev/sdb
lvextend /dev/VolGroup/lv_root /dev/sdb
resize2fs /dev/VolGroup/lv_root
Volgroup và lv_root có thể thay đổi trên các bản phân phối khác nhau. Nhưng nó cũng hoạt động với tôi trên Ubuntu.
Và sau đó thêm mã này vào Vagrantfile của bạn:
...
config.vm.provider :virtualbox do |vb|
...
# Validate this should be run it once
if ARGV[0] == "up" && ! File.exist?("./disk1.vdi")
vb.customize [
'createhd',
'--filename', "./disk1.vdi",
'--format', 'VDI',
# 100GB
'--size', 100 * 1024
]
vb.customize [
'storageattach', :id,
'--storagectl', 'SATA Controller',
'--port', 1, '--device', 0,
'--type', 'hdd', '--medium',
file_to_disk
]
end
if ARGV[0] == "up" && ! File.exist?("./disk1.vdi")
# Run script to map new disk
config.vm.provision "bash", path: "bootstrap.sh"
# Run script to increase swap memory
config.vm.provision "bash", path: "increase_swap.sh"
end
...
Điều này tạo ra một tệp đĩa VDI với dung lượng 100GB. Và được gắn vào hệ điều hành của bạn.
Vấn đề này được giải quyết khi bạn tạo các hộp Vagrant trên đám mây, như các phiên bản AWS EC2 với Vagrant: D
Tăng bộ nhớ hoán đổi
Khi tôi cài đặt các sản phẩm Oracle Fusion Middleware, chúng yêu cầu một số lượng bộ nhớ trao đổi, nhưng hộp cơ sở đi kèm với một lượng nhỏ trao đổi.
Để giải quyết vấn đề này, hãy thêm tập lệnh này có tên "tăng_swap.sh" vào thư mục làm việc của bạn:
#!/bin/sh
# size of swapfile in megabytes
swapsize=8000
# does the swap file already exist?
grep -q "swapfile" /etc/fstab
# if not then create it
if [ $? -ne 0 ]; then
echo 'swapfile not found. Adding swapfile.'
fallocate -l ${swapsize}M /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo '/swapfile none swap defaults 0 0' >> /etc/fstab
else
echo 'swapfile found. No changes made.'
fi
# output results to terminal
df -h
cat /proc/swaps
cat /proc/meminfo | grep Swap
Nếu bạn phá hủy và mở hộp của mình ngay bây giờ, bạn sẽ có một hộp mới với 8GB bộ nhớ trao đổi được thêm vào và 100GB dung lượng đĩa bổ sung.