OpenStack Bobcat : Heat का उपयोग कैसे करें2023/10/06 |
OpenStack ऑर्केस्ट्रेशन सेवा (Heat) का उपयोग कैसे करें।
यह उदाहरण निम्न प्रकार से पर्यावरण पर आधारित है।
------------+--------------------------+--------------------------+------------ | | | eth0|10.0.0.30 eth0|10.0.0.50 eth0|10.0.0.51 +-----------+-----------+ +-----------+-----------+ +-----------+-----------+ | [ dlp.srv.world ] | | [ network.srv.world ] | | [ node01.srv.world ] | | (Control Node) | | (Network Node) | | (Compute Node) | | | | | | | | MariaDB RabbitMQ | | Open vSwitch | | Libvirt | | Memcached Nginx | | Neutron Server | | Nova Compute | | Keystone httpd | | OVN-Northd | | Open vSwitch | | Glance Nova API | | Nginx iSCSI Target | | OVN Metadata Agent | | Cinder API | | Cinder Volume | | OVN-Controller | | | | Heat API/Engine | | | +-----------------------+ +-----------------------+ +-----------------------+ |
[1] | हीट सेवाओं और टेम्पलेट्स के साथ इंस्टेंस तैनात करें। नीचे दिया गया उदाहरण कंट्रोल नोड पर है। |
root@dlp ~(keystone)#
apt -y install python3-heatclient heat_template_version: 2021-04-16 description: Heat Sample Template parameters: ImageID: type: string description: Image used to boot a server NetID: type: string description: Network ID for the server resources: server1: type: OS::Nova::Server properties: name: "Heat_Deployed_Server" image: { get_param: ImageID } flavor: "m1.small" networks: - network: { get_param: NetID } outputs: server1_private_ip: description: IP address of the server in the private network value: { get_attr: [ server1, first_address ] }
root@dlp ~(keystone)#
openstack image list +--------------------------------------+------------+--------+ | ID | Name | Status | +--------------------------------------+------------+--------+ | 2216b5ad-eeb5-4b9a-b862-60b84fdfee1c | Ubuntu2204 | active | +--------------------------------------+------------+--------+root@dlp ~(keystone)# openstack network list +--------------------------------------+---------+--------------------------------------+ | ID | Name | Subnets | +--------------------------------------+---------+--------------------------------------+ | 1d42f5e1-1ff2-4f70-8c48-8c7f6eae0672 | public | c192082c-f107-4eed-aafc-6e30b604e283 | | 529ae54a-4bba-40a3-905d-2ca57557236a | private | e14c5e7d-41d0-4378-af0f-0993c4389593 | +--------------------------------------+---------+--------------------------------------+root@dlp ~(keystone)# Int_Net_ID=$(openstack network list | grep private | awk '{ print $2 }')
# टेम्पलेट से एक उदाहरण बनाएं root@dlp ~(keystone)# openstack stack create -t sample-stack.yml --parameter "ImageID=Ubuntu2204;NetID=$Int_Net_ID" Sample-Stack +---------------------+--------------------------------------+ | Field | Value | +---------------------+--------------------------------------+ | id | 7e606bd3-fba4-4785-8358-3a69ed8e3679 | | stack_name | Sample-Stack | | description | Heat Sample Template | | creation_time | 2023-10-06T06:50:48Z | | updated_time | None | | stack_status | CREATE_IN_PROGRESS | | stack_status_reason | Stack CREATE started | +---------------------+--------------------------------------+ # कुछ मिनट बाद इस प्रकार [CREATE_COMPLETE] पर जाएं root@dlp ~(keystone)# openstack stack list +--------------------------------------+--------------+----------------------------------+-----------------+----------------------+--------------+ | ID | Stack Name | Project | Stack Status | Creation Time | Updated Time | +--------------------------------------+--------------+----------------------------------+-----------------+----------------------+--------------+ | 7e606bd3-fba4-4785-8358-3a69ed8e3679 | Sample-Stack | 39e8c6d7a2d14ee581902f0703a53b66 | CREATE_COMPLETE | 2023-10-06T06:50:48Z | None | +--------------------------------------+--------------+----------------------------------+-----------------+----------------------+--------------+ # इंस्टेंस चल रहा है जो Heat टेम्पलेट से बनाया गया है root@dlp ~(keystone)# openstack server list +--------------------------------------+----------------------+--------+-------------------------+------------+----------+ | ID | Name | Status | Networks | Image | Flavor | +--------------------------------------+----------------------+--------+-------------------------+------------+----------+ | d8228ea4-3ec1-4d4d-bde9-3399924270d6 | Heat_Deployed_Server | ACTIVE | private=192.168.100.153 | Ubuntu2204 | m1.small | +--------------------------------------+----------------------+--------+-------------------------+------------+----------+ # उदाहरण हटाएँ root@dlp ~(keystone)# openstack stack delete --yes Sample-Stack root@dlp ~(keystone)# openstack stack list |
[2] |
लेखन टेम्पलेट के लिए मार्गदर्शिका नीचे आधिकारिक साइट पर खोली गई है।
⇒ https://docs.openstack.org/heat/latest/template_guide/index.html |
[3] | यदि आप किसी सामान्य उपयोगकर्ता के साथ हीट का उपयोग करना चाहते हैं, तो उसे उपयोगकर्ता को Heat भूमिका में जोड़ना होगा। |
root@dlp ~(keystone)# openstack role list +----------------------------------+------------------+ | ID | Name | +----------------------------------+------------------+ | 0d41776fe92a4875a4aeda03f4804def | service | | 1d6a75014fac4882853dcdf9005d2ac0 | member | | 3d73c1188d2f4f9faeebaddac60a3b39 | heat_stack_owner | | 4e94de018ab9461484883e182a59f587 | heat_stack_user | | 7e9cba7b97f24cdfadba96d81da21b61 | admin | | a7176a75921345a4b3f0ccfa798650e5 | reader | +----------------------------------+------------------+root@dlp ~(keystone)# openstack project list +----------------------------------+-----------+ | ID | Name | +----------------------------------+-----------+ | 04b6d7802d9043cbb09ceb31fd68987b | service | | 39e8c6d7a2d14ee581902f0703a53b66 | admin | | f30cd546632e484cb24414d83207694b | hiroshima | +----------------------------------+-----------+root@dlp ~(keystone)# openstack user list +----------------------------------+-------------------+ | ID | Name | +----------------------------------+-------------------+ | c56785fb578043cdaf3823be08aa0462 | admin | | fe176e67ad1b44aaaae7d9a00c88f00c | glance | | 056259f270e843fcbb9e26121fdd2dc4 | nova | | e804b7ce81754ff7a30680aa5463fccd | placement | | e36439c68d254a03a81cdfb094f71038 | neutron | | 470c9323dad64bbea8fb5ecca6381f72 | serverworld | | ed62285b58404a5398d3f5676ccce673 | cinder | | 01e251593d7940a5ba596fd9c5531306 | heat | | 570937d8898d42a591aa00a5d326c227 | heat_domain_admin | +----------------------------------+-------------------+ # उदाहरण के लिए, [hirosima] प्रोजेक्ट में [serverworld] उपयोगकर्ता को [heat_stack_owner] भूमिका में जोड़ें root@dlp ~(keystone)# openstack role add --project hiroshima --user serverworld heat_stack_owner
# यह ठीक है, आम उपयोगकर्ता स्टैक बना सकते हैं ubuntu@dlp ~(keystone)$ openstack stack list +--------------------------------------+--------------+-----------------+----------------------+--------------+ | ID | Stack Name | Stack Status | Creation Time | Updated Time | +--------------------------------------+--------------+-----------------+----------------------+--------------+ | 7e23d859-923c-41a9-ae0b-33a458b30216 | Sample-Stack | CREATE_COMPLETE | 2023-10-06T06:55:47Z | None | +--------------------------------------+--------------+-----------------+----------------------+--------------+ubuntu@dlp ~(keystone)$ openstack server list +--------------------------------------+----------------------+---------+------------------------------------+------------+-----------+ | ID | Name | Status | Networks | Image | Flavor | +--------------------------------------+----------------------+---------+------------------------------------+------------+-----------+ | 8f187059-85e9-45a3-8d4f-78ef9877b5c8 | Heat_Deployed_Server | ACTIVE | private=192.168.100.36 | Ubuntu2204 | m1.small | | 530698ed-413e-4bda-b02e-8f6f60380bd1 | Ubuntu-2204 | SHUTOFF | private=10.0.0.222, 192.168.100.79 | Ubuntu2204 | m1.medium | +--------------------------------------+----------------------+---------+------------------------------------+------------+-----------+ |
Sponsored Link |