#####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-grubMount phân vùng
hugepageskhi 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-kvmsử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_specsvà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ị
AggregateInstanceExtraSpecsFiltervào thông sốscheduler_default_filtersđể nova-scheduler fil host theoextra_specstrong 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
