- 적용 방법
[Utility Container]
/root/openrc
openstack --os-placement-api-version 1.6 trait list
+---------------------------------------+
| name |
+---------------------------------------+
| COMPUTE_IMAGE_TYPE_AKI |
| HW_CPU_X86_INTEL_VMX |
| HW_ARCH_PARISC |
| OWNER_NOVA |
| HW_NIC_SRIOV |
| COMPUTE_IMAGE_TYPE_RAW |
| HW_GPU_API_OPENCL_V2_1 |
| COMPUTE_EPHEMERAL_ENCRYPTION_PLAIN |
| ... |
| HW_ARCH_UNICORE32 |
| HW_ARCH_LM32 |
| HW_GPU_API_DIRECT3D_V8_0 |
| HW_GPU_API_DIRECT3D_V11_2 |
| HW_CPU_AARCH64_FP |
+---------------------------------------+
현재 정의되어 있는 trait
WINDOW를 위한 trait을 정의
openstack --os-placement-api-version 1.6 trait create CUSTOM_WINDOW
# 이때 CUSTOM_LISENCE가 만들려는 trait의 이름이며 사용자가 만들경우 앞에 CUSTOM_ 을 붙혀야 함
openstack resource provider list
+--------------------------------------+---------------+------------+--------------------------------------+----------------------+
| uuid | name | generation | root_provider_uuid | parent_provider_uuid |
+--------------------------------------+---------------+------------+--------------------------------------+----------------------+
| 9661d8d6-ed29-4102-b66c-9bcba1ad3ce9 | compute1.maas | 432 | 9661d8d6-ed29-4102-b66c-9bcba1ad3ce9 | None |
| c390fdd7-36c2-44f4-9136-d7b8ce5a9413 | compute5.maas | 336 | c390fdd7-36c2-44f4-9136-d7b8ce5a9413 | None |
| 56d513af-6681-4a39-a0e9-f3172982af7c | compute2.maas | 290 | 56d513af-6681-4a39-a0e9-f3172982af7c | None |
| 42f1cc16-dc58-40b7-b6fc-5fe12d4de580 | compute3.maas | 176 | 42f1cc16-dc58-40b7-b6fc-5fe12d4de580 | None |
| 24355553-32a5-4dc8-834f-9c55c62b7b7b | compute6 | 323 | 24355553-32a5-4dc8-834f-9c55c62b7b7b | None |
+--------------------------------------+---------------+------------+--------------------------------------+----------------------+
existing_traits=$(openstack --os-placement-api-version 1.6 resource provider trait list -f value <host_uuid> | sed 's/^/--trait /')
# 환경 변수로 입력 받는데 이때 host_uuid는 위 uuid
openstack --os-placement-api-version 1.6 resource provider trait set $existing_traits --trait CUSTOM_WINDOW <host_uuid>
# 이렇게 하면 해당 resource provider에 CUSTOM_LISENCE라는 trait이 추가 됨
compute2에 대한 정보 입력
- 이미지에 해당 trait에 대한 설정 입력
key = trait:CUSTOM_WINDOW
# 위에서 지정한 trait 이름
value = required
value = forbidden
# 두개 중에 선택할 수 있음
# 각각 해당 trait이 있는 compute node에 배포
# 해당 trait이 있는 compute node외에 배포
메타데이터로 관리
- Any Availability Zone을 선택할 경우 compute2 node에만 배포
- 다른 compute node에 배포할 경우 Error
'Openstack' 카테고리의 다른 글
Openstack Component Log 설정 (0) | 2024.05.24 |
---|---|
Openstack Too many connection 완화 (0) | 2024.05.24 |
Openstack Livemigration 설정 (0) | 2024.05.24 |
Openstack Image 다른 Project에 공유 (0) | 2024.05.24 |
Openstack Window 이미지 사용 (0) | 2024.05.24 |