ການຕິດຕັ້ງ Fedora CoreOS ເທິງ Nutanix AHV
ຄູ່ມືນີ້ສະແດງວິທີການຕິດຕັ້ງໂນດ Fedora CoreOS (FCOS) ໃໝ່ເທິງ Nutanix AHV. ໃນປັດຈຸບັນ Fedora ຍັງບໍ່ທັນໄດ້ເຜີຍແຜ່ອິເມຈ Fedora CoreOS ພາຍໃນ Nutanix, ດັ່ງນັ້ນທ່ານຈຳເປັນຕ້ອງອັບໂຫຼດອິເມຈ Nutanix ໄປຍັງການສະໝັກໃຊ້ Nutanix Prism Central ຂອງທ່ານ.
ສິ່ງທີ່ຕ້ອງມີມາກ່ອນ
ກ່ອນທີ່ຈະຕິດຕັ້ງເຄື່ອງ FCOS, ທ່ານຕ້ອງມີໄຟລ໌ການກຳນົດຄ່າ Ignition ທີ່ມີການປັບແຕ່ງຂອງທ່ານ. ຖ້າທ່ານຍັງບໍ່ມີ, ໃຫ້ເບິ່ງ ການສ້າງໄຟລ໌ Ignition.
Fedora CoreOS ມີຜູ້ໃຊ້ core ເປັນຄ່າເລີ່ມຕົ້ນທີ່ສາມາດໃຊ້ເພື່ອສຳຫຼວດລະບົບປະຕິບັດການໄດ້. ຖ້າທ່ານຕ້ອງການໃຊ້ມັນ, ໃຫ້ເຮັດຂັ້ນຕອນສຸດທ້າຍຂອງ ການກຳນົດຄ່າ ໂດຍການລະບຸ ເຊັ່ນ: SSH key.
|
ນອກຈາກນັ້ນ, ທ່ານຍັງຕ້ອງມີສິດເຂົ້າເຖິງການສະໝັກໃຊ້ Nutanix Prism Central. ຕົວຢ່າງຂ້າງລຸ່ມນີ້ແມ່ນການໃຊ້ຄຳສັ່ງ curl ເພື່ອເຂົ້າເຖິງ APIs ຂອງ Nutanix Prism Central.
ການອັບໂຫຼດອິເມຈໄປຍັງ Nutanix AHV
Fedora CoreOS ຖືກອອກແບບມາໃຫ້ມີການອັບເດດໂດຍອັດຕະໂນມັດ, ໂດຍມີກຳນົດເວລາທີ່ແຕກຕ່າງກັນໄປຕາມແຕ່ລະສະຕຣີມ (stream). ເມື່ອທ່ານເລືອກສະຕຣີມທີ່ກ່ຽວຂ້ອງໄດ້ແລ້ວ, ໃຫ້ໃຊ້ Nutanix Prism Central API ເພື່ອອັບໂຫຼດອິເມຈລ່າສຸດໄປຍັງ Nutanix:
STREAM=stable
IMAGE_NAME=<name of image to create>
API_HOST=<Prism Central hostname>
API_USERNAME=<username>
API_PASSWORD=<password>
URL=$(curl https://builds.coreos.fedoraproject.org/streams/${STREAM}.json | \
jq -r .architectures.x86_64.artifacts.nutanix.formats.qcow2.disk.location)
ENCODED_CREDS="$(echo -n "${API_USERNAME}:${API_PASSWORD}" | base64)"
curl -X POST --header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "Authorization: Basic ${ENCODED_CREDS}" \
"https://${API_HOST}:9440/api/nutanix/v3/images" \
-d @- << EOF
{
"spec": {
"name": "${IMAGE_NAME}",
"resources": {
"image_type": "ISO_IMAGE",
"source_uri": "${URL}",
"architecture": "X86_64",
"source_options": {
"allow_insecure_connection": false
}
},
"description": "string"
},
"api_version": "3.1.0",
"metadata": {
"use_categories_mapping": false,
"kind": "image",
"spec_version": 0,
"categories_mapping": {},
"should_force_translate": true,
"entity_version": "string",
"categories": {},
"name": "string"
}
}
EOF
ການເປີດໃຊ້ງານອິນສະແຕນຊ໌ VM
ທ່ານສາມາດຕິດຕັ້ງອິນສະແຕນຊ໌ FCOS ໂດຍໃຊ້ເວັບພອດທໍ (web portal) ຂອງ Nutanix Prism Central ຫຼື ຜ່ານ Prism Central API ດ້ວຍ curl. ການກຳນົດຄ່າ Ignition ສາມາດສົ່ງໄປຍັງ VM ໃນຮູບແບບ "cloud-init custom script". ຕົວຢ່າງ, ການເປີດໃຊ້ງານ VM ໂດຍໃຊ້ API:
API_HOST=<Prism Central hostname>
API_USERNAME=<username>
API_PASSWORD=<password>
CLUSTER_REFERENCE_NAME=<name of cluster to use>
CLUSTER_REFERENCE_UUID=<uuid of cluster to use>
SUBNET_REFERENCE_NAME=<name of subnet to use>
SUBNET_REFERENCE_UUID=<uuid of subnet to use>
VM_NAME=<name of VM to create>
IGNITION_CONFIG=config.ign
IMAGE_NAME=<name of image>
ENCODED_CONFIG="$(cat ${IGNITION_CONFIG} | base64 -w 0)"
ENCODED_CREDS="$(echo -n "${API_USERNAME}:${API_PASSWORD}" | base64)"
IMAGE_ID=$(curl -X POST --header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "Authorization: Basic ${ENCODED_CREDS}" \
"https://${API_HOST}:9440/api/nutanix/v3/images/list"
-d '{ "kind": "image","filter": "", "length": 30, "offset": 0}' | \
jq -r '.entities[] | select(.spec.name == "${IMAGE_NAME}") | .metadata.uuid')
curl -X POST --header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "Authorization: Basic ${ENCODED_CREDS}" \
"https://${API_HOST}:9440/api/nutanix/v3/vms" \
-d @- << EOF
{
"spec": {
"name": "${VM_NAME}",
"resources": {
"power_state": "ON",
"num_vcpus_per_socket": 1,
"num_sockets": 1,
"memory_size_mib": 16384,
"disk_list": [
{
"disk_size_mib": 32768,
"device_properties": {
"device_type": "DISK",
"disk_address": {
"device_index": 0,
"adapter_type": "SCSI"
}
},
"data_source_reference": {
"kind": "image",
"uuid": "${IMAGE_ID}"
}
}
],
"nic_list": [
{
"nic_type": "NORMAL_NIC",
"is_connected": true,
"ip_endpoint_list": [
{
"ip_type": "DHCP"
}
],
"subnet_reference": {
"kind": "subnet",
"name": "${SUBNET_REFERENCE_NAME}",
"uuid": "${SUBNET_REFERENCE_UUID}"
}
}
],
"guest_tools": {
"nutanix_guest_tools": {
"state": "ENABLED",
"iso_mount_state": "MOUNTED"
}
},
"guest_customization": {
"cloud_init": {
"user_data": "${ENCODED_CONFIG}"
},
"is_overridable": false
}
},
"cluster_reference": {
"kind": "cluster",
"name": "${CLUSTER_REFERENCE_NAME}",
"uuid": "${CLUSTER_REFERENCE_UUID}"
}
},
"api_version": "3.1.0",
"metadata": {
"kind": "vm"
}
}
EOF
ດຽວນີ້ທ່ານຄວນຈະສາມາດ SSH ເຂົ້າໄປຍັງອິນສະແຕນຊ໌ໂດຍໃຊ້ທີ່ຢູ່ IP ທີ່ກ່ຽວຂ້ອງໄດ້ແລ້ວ.
ssh core@<ip address>
Want to help? Learn how to contribute to Fedora Docs ›