#####Cấu hình hugepages cho Openstack nova
Bài lab thực hiện trên phiên bản Openstack Mitaka và OS là Ubuntu 14.04
#####Cấu hình hugepages cho node compute1
- Kiểm tra hugepagessize
cat /proc/meminfo | grep Huge
Node compute của tôi 6GB RAM nên tôi sẽ sử dụng 4GB cho các instance sử dụng Hugepages.
- Để lưu giữ cấu hình hugepages ta cần thêm tham số vào khi khởi động ubuntu. tôi thêm dòng sau vào file
/etc/default/grub
GRUB_CMDLINE_LINUX="$GRUB_CMDLINE_LINUX hugepagesz=2M hugepages=2000 transparent_hugepage=never"
Update grub
update-grub
Mount phân vùng
hugepages
khi khởi động tôi thêm dòng sau vào file/etc/fstab
hugetlbfs /hugepages hugetlbfs defaults 0 0
- Tạo thư mục hugepages
mkdir /hugepages
- Mặc định libvirt sẽ không có quyền mount sang phân vùng này do bị Appparmor chặn do vậy ta sẽ thực hiện bỏ chặn bằng lệnh sau
touch /etc/apparmor.d/disable/usr.sbin.libvirtd
- Cấu hình libvirt mở file
/etc/default/qemu-kvm
sửa dòng sau
KVM_HUGEPAGES=1
- Reboot node compute
#####Cấu hình trên node controller
- Tạo aggregate khai báo node compute nào được cấu hình để sử dụng hugepages
nova aggregate-create hugepages-aggr
nova aggregate-set-metadata hugepages-aggr hpgs=true
nova aggregate-add-host hugepages-aggr compute1
- Để khi launch instance thì nova cần biết instance nào sẽ sử dụng hugepage ta sẽ tạo một flavor mới và thêm
extra_specs
vào flavor đó
nova flavor-create m1.tiny.hugepages auto 512 2 1
nova flavor-key m1.tiny.hugepages set hw:mem_page_size=2048
nova flavor-key m1.tiny.hugepages set aggregate_instance_extra_specs:hpgs=true
- Thêm giá trị
AggregateInstanceExtraSpecsFilter
vào thông sốscheduler_default_filters
để nova-scheduler fil host theoextra_specs
trong file/etc/nova/nova.conf
scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,DiskFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter,AggregateInstanceExtraSpecsFilter
- Khởi động lại nova-scheduler ``` service nova-scheduler restart
- Boot 1 instance mới
openstack server create –image cirros –flavor m1.tiny.hugepages –nic net-id=net-admin cirros-hugepages-demo
```
- Kiểm tra hugepage free lúc này sẽ bị giảm 256 pages
- Kiểm tra file XML của instance
cirros-hugepages-demo