មាតិកា[លាក់][បង្ហាញ]
រចនាសម្ព័ន្ធ-ដូច-កូដឬ IaC បានធ្វើបដិវត្តន៍នូវវិធីដែលហេដ្ឋារចនាសម្ព័ន្ធព័ត៌មានវិទ្យាត្រូវបានបង្កើតនិងរក្សាទុកចាប់តាំងពីការបង្ហាញខ្លួនដំបូងរបស់ខ្លួនជាងមួយទសវត្សរ៍មុន។
ការដំឡើងហេដ្ឋារចនាសម្ព័ន្ធថ្មីដែលប្រើសម្រាប់ដាក់ជង់ម៉ាស៊ីនមេ បង្កើតការតភ្ជាប់បណ្តាញ និងការរក្សាទុកឧបករណ៍នៅក្នុងមជ្ឈមណ្ឌលទិន្នន័យដែលមានសមត្ថកិច្ច។ ឥឡូវនេះកម្មវិធីអាចប្រើដើម្បីបង្កើតហេដ្ឋារចនាសម្ព័ន្ធដែលមានប្រសិទ្ធភាពជាងមុន សន្សំសំចៃ និងមានសុវត្ថិភាព។
លើសពីនេះ ដោយសារការផ្លាស់ប្តូរឆ្ងាយពីការគ្រប់គ្រងការផ្លាស់ប្តូរជាប្រវត្តិសាស្ត្រ ឥឡូវនេះក្រុមអាចដាក់ពង្រាយការផ្ទៀងផ្ទាត់យ៉ាងទូលំទូលាយ ប៉ុន្តែដំណើរការថ្មីដែលមិនមានការត្រួតពិនិត្យទាំងស្រុងក្នុងរយៈពេលប៉ុន្មាននាទីជាជាងថ្ងៃ ដោយអនុវត្តតាមនីតិវិធីស្តង់ដារសម្រាប់ការផ្តល់ និងធ្វើបច្ចុប្បន្នភាពប្រព័ន្ធ ក៏ដូចជាការកំណត់រចនាសម្ព័ន្ធរបស់ពួកគេ។
Iនៅក្នុងអត្ថបទនេះ យើងនឹងពិនិត្យមើលហេដ្ឋារចនាសម្ព័ន្ធកំពូលទាំងដប់ដែលជាផលិតផលកូដដែលមានកេរ្តិ៍ឈ្មោះល្អសម្រាប់ការធ្វើឱ្យប្រតិបត្តិការស្មុគស្មាញ និងប្រើប្រាស់ពេលវេលាដោយស្វ័យប្រវត្តិដូចជាការកំណត់រចនាសម្ព័ន្ធឧបករណ៍ ការផ្តល់ និងការដាក់ឱ្យប្រើប្រាស់តាមខ្នាត។
ហេដ្ឋារចនាសម្ព័ន្ធល្អបំផុតជាឧបករណ៍កូដសម្រាប់ឆ្នាំ 2022
1. Ansible
Ansible ត្រូវបានបង្កើតឡើងដោយ RedHat ដោយមានគោលដៅលើកកម្ពស់ភាពសាមញ្ញ។ វារួមចំណែកដល់ការធ្វើទំនើបកម្មផ្នែកព័ត៌មានវិទ្យា និងជួយដល់ក្រុម DevOps ក្នុងការដាក់ពង្រាយកម្មវិធីកាន់តែលឿន ជឿជាក់ជាងមុន និងក្នុងលក្ខណៈសម្របសម្រួលជាងមុន។
ដោយមិនចាំបាច់ព្រួយបារម្ភអំពីការបំពេញតាមស្តង់ដារអនុលោមភាព អ្នកអាចបង្កើតការដំឡើងដូចគ្នាបេះបិទបានយ៉ាងងាយស្រួលជាមួយនឹងគោលការណ៍សុវត្ថិភាពជាមូលដ្ឋាន។ នៅក្នុងលក្ខខណ្ឌនៃធុរកិច្ច Ansible ផ្តល់នូវការប្រកួតប្រជែងមួយដោយផ្តល់ពេលទំនេរសម្រាប់អង្គការដើម្បីអនុវត្តការច្នៃប្រឌិត និងយុទ្ធសាស្រ្ត ក៏ដូចជាការតម្រឹម IT ជាមួយនឹងតម្រូវការអាជីវកម្ម។
Ansible ប្រើម៉ូឌុលកំណត់រចនាសម្ព័ន្ធដែលមានមូលដ្ឋានលើ YAML ដែលហៅថា "Playbooks" ដើម្បីកំណត់ស្ថានភាពចុងបញ្ចប់នៃហេដ្ឋារចនាសម្ព័ន្ធរបស់អ្នកជាឧបករណ៍ IaC ។ Ansible អនុញ្ញាតឱ្យអ្នកអភិវឌ្ឍម៉ូឌុល និងកម្មវិធីជំនួយផ្ទាល់ខ្លួនរបស់អ្នក ប្រសិនបើអ្នកជួបបញ្ហាដែលម៉ូឌុលលំនាំដើមមិនអាចដោះស្រាយបាន។
វាត្រូវបានគេគិតថាជាវិធីសាស្រ្តដ៏សាមញ្ញបំផុតនៃការផ្តល់ ការរៀបចំ និងការថែទាំកម្មវិធី និងហេដ្ឋារចនាសម្ព័ន្ធ IT ដោយស្វ័យប្រវត្តិ។
គុណសម្បត្តិ
- នៅក្នុងលក្ខខណ្ឌនៃការដាក់ពង្រាយ ការកំណត់រចនាសម្ព័ន្ធ និងភាពងាយស្រួលនៃការប្រើប្រាស់ នេះគឺជាឧបករណ៍ដ៏សាមញ្ញមួយ។
- វាកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនមេ និងដំណើរការពួកវាឱ្យបានត្រឹមត្រូវ។
- ម៉ូឌុលផ្ទាល់ខ្លួនអនុញ្ញាតឱ្យ Ansible ប្ដូរតាមបំណងពេញលេញ។ វាក៏មានឃ្លាំងផ្លូវការដ៏ធំនៃផ្នែកបន្ថែម និងម៉ូឌុលបន្ថែមដែលមានរួចហើយ។
- រាល់កិច្ចការកម្រិតម៉ាស៊ីនដែលអ្នកត្រូវធ្វើ ដើម្បីរៀបចំបរិស្ថានគួរតែដំណើរការដោយស្វ័យប្រវត្តិ។
- សម្រាប់ការធ្វើតេស្ត ផ្ទៀងផ្ទាត់ និងកំណត់រចនាសម្ព័ន្ធរូបភាព VM និងកុងតឺន័រ Ansible ដំណើរការបានយ៉ាងល្អមិនគួរឱ្យជឿជាមួយ Jenkins នៅក្នុងបំពង់ CI ។
- ដោយសារ Ansible គឺគ្មានភ្នាក់ងារ សកម្មភាពទាំងអស់ត្រូវបានអនុវត្តតាមរយៈ SSH ។ នេះបញ្ជាក់ថាអ្នកនឹងមិនចាំបាច់ដំឡើងកម្មវិធីណាមួយនៅលើម៉ាស៊ីនមេដែល Ansible កំពុងដំណើរការនោះទេ។
គុណវិបត្តិ
- Ansible មានការលំបាកក្នុងការដោះស្រាយជាមួយសារពើភ័ណ្ឌធំ និងស្មុគស្មាញ។ ការកែលម្អដំណើរការសារពើភ័ណ្ឌអាចនឹងធ្វើឱ្យមានភាពខុសគ្នាគួរឱ្យកត់សម្គាល់។
- ការបោះពុម្ពសហគមន៍ខ្វះកាលវិភាគដែលភ្ជាប់មកជាមួយ។
- ការបណ្តុះបណ្តាល និងការបង្រៀនឥតគិតថ្លៃរបស់ Ansible មិនផ្តល់កម្រិតដូចគ្នានៃព័ត៌មានលម្អិត និងភាពសាមញ្ញនៃការប្រើប្រាស់សម្រាប់អ្នកប្រើប្រាស់លើកដំបូងនោះទេ។
- វាក្យសម្ព័ន្ធ YAML ប្រហែលជាពិបាកយល់។ វាប្រហែលជាពិបាកក្នុងការកំណត់ទីតាំងច្បាស់លាស់នៃកំហុសវាក្យសម្ព័ន្ធ។
ការកំណត់តម្លៃ
អ្នកអាចចាប់ផ្តើមប្រើប្រាស់វេទិកាជាមួយនឹងការសាកល្បងឥតគិតថ្លៃរបស់វា។ វាក៏ផ្តល់ជូននូវការបោះពុម្ពពិសេសផងដែរ ប៉ុន្តែតម្លៃមិនត្រូវបានរាយនៅលើវេទិកានោះទេ។
2. Terraform
ត្រូវបានគេប្រើយ៉ាងទូលំទូលាយបំផុតនិង ប្រភពបើកចំហ ឧបករណ៍ស្វ័យប្រវត្តិកម្មហេដ្ឋារចនាសម្ព័ន្ធគឺ HashiCorp Terraform ។ វាជួយជាមួយនឹងហេដ្ឋារចនាសម្ព័ន្ធដូចជាការកំណត់រចនាសម្ព័ន្ធកូដ ការផ្តល់ និងការគ្រប់គ្រង។
Terraform ធ្វើឱ្យវាសាមញ្ញក្នុងការរចនា និងសាងសង់ IaC ឆ្លងកាត់អ្នកផ្តល់ហេដ្ឋារចនាសម្ព័ន្ធជាច្រើនដោយប្រើដំណើរការតែមួយ។ ហេដ្ឋារចនាសម្ព័ន្ធដែលត្រូវការត្រូវបានកំណត់ជាកូដដោយប្រើបច្ចេកទេសប្រកាស។ មុនពេលដំឡើងកំណែ ឬផ្តល់ហេដ្ឋារចនាសម្ព័ន្ធ Terraform អនុញ្ញាតឱ្យអ្នកប្រើប្រាស់ពិនិត្យមើលការប្រតិបត្តិជាមុន ដើម្បីមើលថាតើការកំណត់បំពេញបានលទ្ធផលដែលរំពឹងទុកឬអត់។
តាមរយៈនីតិវិធី CLI ដ៏សាមញ្ញ និងជាប់លាប់ អ្នកអាចមានស្ថាបត្យកម្មដែលបានជ្រើសរើសរបស់អ្នកតាមរយៈអ្នកផ្តល់សេវាពពកជាច្រើន។
Yអ្នកអាចបង្កើតបរិយាកាសផ្សេងៗបានយ៉ាងឆាប់រហ័សជាមួយនឹងការកំណត់ដូចគ្នា និងគ្រប់គ្រងអាយុកាលទាំងមូលនៃហេដ្ឋារចនាសម្ព័ន្ធដែលអ្នកចង់បាន លុបបំបាត់កំហុសរបស់មនុស្ស និងបង្កើនស្វ័យប្រវត្តិកម្មនៅក្នុងដំណើរការរៀបចំ និងគ្រប់គ្រង។
វាក៏គាំទ្រអ្នកផ្តល់សេវាជាច្រើនផងដែរ រួមទាំង DigitalOcean, GitHub, Cloudflare និងផ្សេងៗទៀត។ Terraform ក៏មានមុខងារគ្រប់គ្រងប្រភពដែលអនុញ្ញាតឱ្យមានការបំផ្លាញធនធានផងដែរ។ នៅពេលធ្វើការជាមួយ Cloud កូនកាត់ មុខងារនេះគឺមានសារៈសំខាន់ ដោយសារផែនការអាចត្រូវបានបង្កើតនៅទូទាំងអ្នកផ្តល់សេវាពពក និងហេដ្ឋារចនាសម្ព័ន្ធជាច្រើន ខណៈពេលដែលប្រើប្រាស់ដំណើរការដូចគ្នា។
គុណសម្បត្តិ
- អ្នកផ្តល់ហេដ្ឋារចនាសម្ព័ន្ធជាច្រើនត្រូវបានគាំទ្រ/រួមបញ្ចូល រួមទាំង AWS, Google Cloud, Datadog, GitLab, ហឺរ៉ូគូនិង SignalFx ។
- ដាក់ពង្រាយហេដ្ឋារចនាសម្ព័ន្ធយ៉ាងរហ័សជាកូដ។ វាជារឿងសាមញ្ញក្នុងការរៀបចំបរិស្ថាន និងចាប់ផ្តើម អភិវឌ្ឍយ៉ាងឆាប់រហ័ស។
- វាជួយសម្រួលការគ្រប់គ្រងរដ្ឋលើពពកច្រើនជាងដំណោះស្រាយដើមដែលផ្តល់ដោយអ្នកផ្តល់សេវា។
- បណ្តាញនៃម៉ូឌុលរបស់ Terraform ផ្តល់សេវាកម្មយ៉ាងទូលំទូលាយដល់អ្នកផ្តល់សេវា។
គុណវិបត្តិ
- Terraform ខ្វះក្រាហ្វិក ចំណុចប្រទាក់អ្នកប្រើដែលនឹងធ្វើឱ្យវាកាន់តែងាយស្រួលប្រើ។
- ការកែលម្អកូដហេដ្ឋារចនាសម្ព័ន្ធអាចចំណាយពេលច្រើន ហើយជារឿយៗត្រូវការការបង្កើតធនធានថ្មី (ដូចជានៅពេលប្តូរឈ្មោះធនធាន)
- Terraform មាន DSL ផ្ទាល់ខ្លួន ភាសាការកំណត់រចនាសម្ព័ន្ធ HashiCorp ដែលចំណាយពេលបន្តិចដើម្បីប្រើ។
ការកំណត់តម្លៃ
អ្នកអាចចាប់ផ្តើមប្រើប្រាស់វេទិកាជាមួយនឹងគម្រោងឥតគិតថ្លៃរបស់វា។ វាក៏ផ្តល់ជូននូវគម្រោងបង់ប្រាក់ដែលចាប់ផ្តើមពី $20/អ្នកប្រើប្រាស់។
3. ប្រធាន
ចុងភៅគឺជាឧបករណ៍ IaC ដ៏ល្បីបំផុតមួយនៅក្នុងអាជីវកម្ម។ មេចុងភៅប្រើភាសារចនាប័ទ្មនីតិវិធី ដែលអ្នកប្រើប្រាស់ត្រូវតែសរសេរកូដ និងកំណត់ពីរបៀបដើម្បីសម្រេចបាននូវស្ថានភាពដែលចង់បានមួយជំហានម្តងៗ។ វាអាស្រ័យលើអ្នកប្រើប្រាស់ក្នុងការជ្រើសរើសវិធីសាស្ត្រដាក់ពង្រាយដ៏ល្អបំផុត។
មេចុងភៅអនុញ្ញាតឱ្យអ្នកបង្កើតរូបមន្ត និងសៀវភៅធ្វើម្ហូបដោយប្រើ DSL ដែលមានមូលដ្ឋានលើ Ruby របស់វា។
រូបមន្ត និងសៀវភៅធ្វើម្ហូបទាំងនេះរៀបរាប់លម្អិតអំពីដំណើរការចាំបាច់ដើម្បីកំណត់រចនាសម្ព័ន្ធកម្មវិធី និងឧបករណ៍ប្រើប្រាស់របស់អ្នកនៅលើម៉ាស៊ីនមេដែលមានស្រាប់តាមការចូលចិត្តរបស់អ្នក។ ភាពបត់បែនសរុបរបស់វា រួមជាមួយនឹងការបង្រួមអប្បបរមាដែលភ្ជាប់មកជាមួយ និងសមត្ថភាពក្នុងការបញ្ជាក់គោលការណ៍ជាកូដ ធ្វើឱ្យវាអាចធ្វើមាត្រដ្ឋាន និងអាចអនុវត្តបាននៅក្នុងបំពង់ CI/CD ណាមួយ។
ដំណោះស្រាយគ្រប់គ្រងហេដ្ឋារចនាសម្ព័ន្ធនេះត្រូវបានរចនាឡើងដើម្បីជួយអ្នកអនុវត្ត និងយកគំរូតាមដំណើរការស្វ័យប្រវត្តិកម្មហេដ្ឋារចនាសម្ព័ន្ធដែលអាចធ្វើមាត្រដ្ឋានបាន និងសុវត្ថិភាពនៅក្នុងបរិយាកាសណាមួយ។
គុណសម្បត្តិ
- មេចុងភៅមានគំរូវេចខ្ចប់ជាមុន ដែលធ្វើឱ្យវាកាន់តែងាយស្រួលក្នុងការគ្រប់គ្រងហេដ្ឋារចនាសម្ព័ន្ធ ចាប់ពីកម្រិតទាបរហូតដល់ភាពស្មុគស្មាញគួរឱ្យកត់សម្គាល់។
- ចុងភៅគឺពិតជាសាមញ្ញក្នុងការដំណើរការ។ សម្ភារៈមេចុងភៅជាច្រើនអនុវត្តតាមគោលការណ៍ស្រដៀងគ្នា ដែលធ្វើឱ្យវាសាមញ្ញណាស់ក្នុងការសាងសង់សៀវភៅធ្វើម្ហូបជាមូលដ្ឋានតាំងពីដំបូង។
- ចុងភៅកំពុងធ្វើការយ៉ាងលំបាកក្នុងការបំពាក់ Chef Automate ជាមួយនឹងការរួមបញ្ចូលសំខាន់ៗដែលនឹងអនុញ្ញាតឱ្យវាឈានដល់សក្តានុពលពេញលេញរបស់វា។
- Cookbooks គឺជាមុខងារដ៏ល្អបំផុតមួយរបស់មេចុងភៅ ព្រោះវាអនុញ្ញាតឱ្យមានការអនុម័តរហ័ស។
- មានសម្ភារៈជាច្រើនដែលអាចជួយអ្នកក្នុងការសម្រេចបានស្ទើរតែគ្រប់គោលដៅជាមួយមេចុងភៅ។
គុណវិបត្តិ
- ភាសាជាក់លាក់នៃដែនគឺខ្លាំង ប៉ុន្តែវាទាមទារការអនុវត្តមួយចំនួន។
- ភាពខុសគ្នានៃឧបករណ៍អាចមានការងឿងឆ្ងល់; វិធីសាស្រ្តបង្រួបបង្រួមនឹងធ្វើឱ្យអ្វីៗមានភាពសាមញ្ញ។
- ដំបូងមេចុងភៅហាក់ដូចជាគួរឱ្យខ្លាច មានរឿងជាច្រើនដែលត្រូវទទួលយក ហើយខ្ញុំបានរកឃើញថាវិធីល្អបំផុតដើម្បីរៀនគឺត្រូវចំណាយពេលរបស់អ្នក អត់ធ្មត់ និងអនុវត្ត។
ការកំណត់តម្លៃ
តម្លៃមិនមាននៅលើវេទិកាទេ សូមទាក់ទងអ្នកលក់សម្រាប់តម្លៃរបស់វា។
4. Puppet
នៅពេលប្រៀបធៀបទៅនឹងឧបករណ៍ IaC ផ្សេងទៀតនៅក្នុងបញ្ជីរបស់យើង Puppet មានភាពស្រដៀងគ្នាជាច្រើនជាមួយ Chef ហើយវាស្ថិតនៅស្នូលនៃបំពង់ CI/CD របស់វិស្វករ DevOps ជាច្រើន។
វាប្រើ DSL ដែលមានមូលដ្ឋានលើ Ruby ដើម្បីបង្ហាញពីស្ថានភាពចុងបញ្ចប់នៃហេដ្ឋារចនាសម្ព័ន្ធរបស់អ្នក ក៏ដូចជាមុខងារដែលអ្នកចង់ឱ្យវាដំណើរការ។ អាយ៉ងបន្ទាប់មកបំពេញចន្លោះដោយស្វែងរកវិធីលឿនបំផុតទៅកាន់ស្ថានភាពកំណត់រចនាសម្ព័ន្ធដែលបានបង្កើតឡើងពីមុន។
អាយ៉ងគឺជាសំណុំនៃឧបករណ៍ IAC សម្រាប់ការផ្តល់ហេដ្ឋារចនាសម្ព័ន្ធយ៉ាងឆាប់រហ័ស និងដោយសុវត្ថិភាព។ វាមានសហគមន៍អ្នកអភិវឌ្ឍន៍ដ៏ធំមួយដែលបានរួមចំណែកម៉ូឌុលដើម្បីជួយកែលម្អមុខងាររបស់កម្មវិធី។
អាយ៉ងភ្ជាប់ជាមួយស្ទើរតែគ្រប់ហេដ្ឋារចនាសម្ព័ន្ធពពកសំខាន់ៗជាវេទិកាកូដ រួមទាំង AWS, Azure, Google Cloud និង VMware ដែលអនុញ្ញាតឱ្យមានស្វ័យប្រវត្តិកម្មពហុពពក។
គុណសម្បត្តិ
- នៅពេលរួមបញ្ចូលជាមួយការគ្រប់គ្រងប្រភព វាផ្តល់នូវបច្ចេកទេសគួរឱ្យទុកចិត្តសម្រាប់ការផ្តល់នូវហេដ្ឋារចនាសម្ព័ន្ធដូចកូដ (ដូចជា Git) ។
- វាអនុញ្ញាតឱ្យអ្នកដំឡើងកម្មវិធីប្រកបដោយប្រសិទ្ធភាពដោយមិនចាំបាច់យល់ព័ត៌មានលម្អិតទាំងអស់។
- គ្រប់គ្រងការរសាត់នៃការកំណត់រចនាសម្ព័ន្ធប្រព័ន្ធសម្រាប់ការបង្កើនស្ថេរភាពប្រព័ន្ធ និងពេលវេលាដំណើរការ។ កូដការកំណត់រចនាសម្ព័ន្ធដូចគ្នាអាចត្រូវបានរុញចេញច្រើនដង។
- នៅពេលនិយាយអំពីការជំរុញក្រុមឆ្ពោះទៅរក DevOps នេះគឺជាទ្រព្យសម្បត្តិដ៏មានតម្លៃចាប់តាំងពីវាអនុញ្ញាតឱ្យការអភិវឌ្ឍន៍ទទួលយកការគ្រប់គ្រងទ្រព្យសម្បត្តិផ្ទាល់ខ្លួនរបស់ពួកគេ។
គុណវិបត្តិ
- ខ្សែកោងការរៀនសូត្រខ្ពស់ ប៉ុន្តែមួយដែលអាចត្រូវបានស្ទាត់ជំនាញបានប្រសិនបើមូលដ្ឋានគ្រឹះមួយចំនួនត្រូវបានរៀន ហើយអាយ៉ងត្រូវបានប្រើក្នុងការអនុវត្ត។
- នៅក្នុងដំណើរការដាក់ពង្រាយដែលសហការគ្នាបន្ថែមទៀតដែលលាតសន្ធឹងលើវេទិកា និងមជ្ឈមណ្ឌលទិន្នន័យផ្សេងៗគ្នា ភាពស្មុគស្មាញអាចក្លាយជាលើសលប់។
- វាមិនល្អជាមួយហេដ្ឋារចនាសម្ព័ន្ធបច្ចុប្បន្ន ដែលមិនមែនជាកំហុសរបស់អាយ៉ងនោះទេ ប៉ុន្តែវាអាចត្រូវការការផ្លាស់ប្តូរយ៉ាងខ្លាំងក្នុងការគិត និងការអនុវត្តដើម្បីប្រតិបត្តិជាប់លាប់។
- អ្នកត្រូវតែស្គាល់ Ruby ប្រសិនបើអ្នកចង់ធ្វើកិច្ចការស្មុគ្រស្មាញជាមួយវា។
ការកំណត់តម្លៃ
តម្លៃមិនមាននៅលើវេទិកាទេ សូមទាក់ទងអ្នកលក់សម្រាប់តម្លៃរបស់វា។
5. AWS CloudFormation
AWS CloudFormation គឺជាដំណោះស្រាយហេដ្ឋារចនាសម្ព័ន្ធរួមបញ្ចូលគ្នាជាកូដ (IaC) នៅក្នុងវេទិកាពពក AWS ដែលអនុញ្ញាតឱ្យអ្នកដាក់ពង្រាយ និងងាយស្រួលគ្រប់គ្រងក្រុមនៃ AWS ដែលបានតភ្ជាប់ និងធនធានភាគីទីបីដោយប្រើហេដ្ឋារចនាសម្ព័ន្ធជាកូដ។ វាអនុញ្ញាតឱ្យអ្នកអនុវត្តការអនុវត្តល្អបំផុតរបស់ DevOps និង GitOps ដែលត្រូវការទាំងអស់។
តាមរយៈការតភ្ជាប់ CloudFormation ជាមួយធនធាន AWS សំខាន់ៗផ្សេងទៀត អ្នកអាចគ្រប់គ្រងទំហំធនធានរបស់អ្នកបានយ៉ាងសាមញ្ញ ហើយថែមទាំងធ្វើឱ្យការគ្រប់គ្រងធនធានបន្ថែមដោយស្វ័យប្រវត្តិទៀតផង។
AWS CloudFormation ក៏អនុញ្ញាតឱ្យអ្នកអភិវឌ្ឍអ្នកផ្តល់ធនធានដោយប្រើ CLI ប្រភពបើកចំហរបស់ខ្លួនដើម្បីផ្តល់ និងគ្រប់គ្រងធនធានកម្មវិធីភាគីទីបី រួមជាមួយនឹងធនធាន AWS ដើម។
គំរូ CloudFormation អាចត្រូវបានសរសេរជា YAML និង JSON ហើយពួកវាអាចត្រូវបានប្រើដើម្បីគ្រប់គ្រង ធ្វើមាត្រដ្ឋាន និងស្វ័យប្រវត្តិកម្មធនធាន AWS យ៉ាងរហ័ស និងងាយស្រួល។
អ្នកក៏អាចមើលការផ្លាស់ប្តូរទាំងអស់ជាមុនមុនពេលដាក់ឱ្យប្រើប្រាស់ ដែលអនុញ្ញាតឱ្យអ្នកមើលឃើញពីរបៀបដែលការផ្លាស់ប្ដូរមួយឈុតនឹងប៉ះពាល់ដល់ធនធាន សេវាកម្ម និងភាពអាស្រ័យរបស់អ្នក។
គុណសម្បត្តិ
- រៀបចំដំណើរការនៃការរៀបចំដោយដៃ។
- ការកំណត់រចនាសម្ព័ន្ធបច្ចុប្បន្នអាចត្រូវបានបំប្លែងទៅជាគំរូដោយប្រើឧបករណ៍។
- មានគំរូ និងអត្ថបទខ្លីៗជាច្រើនដែលមាន។
- ហេដ្ឋារចនាសម្ព័ន្ធជាកូដគឺជាជ័យជម្នះក្នុងលក្ខខណ្ឌនៃស្វ័យប្រវត្តិកម្ម។
- ការផ្តល់ត្រូវតែត្រូវបានដាក់បញ្ចូលទៅក្នុង CI/CD។
- ទំនាក់ទំនងរវាងស្ថាបត្យករ និងអ្នកអនុវត្ត។
- ប្រអប់ឧបករណ៍ DevOps ផ្សេងទៀតអាចត្រូវបានរួមបញ្ចូល និងធ្វើឱ្យប្រសើរឡើង។
- កិច្ចសហប្រតិបត្តិការជាមួយ CF អាចជួយអ្នកឱ្យប្រសើរឡើងនូវជំនាញបន្ទាត់ពាក្យបញ្ជារបស់អ្នកយ៉ាងឆាប់រហ័ស។
គុណវិបត្តិ
- ការពិពណ៌នាអំពីកំហុសបន្ទាប់ពីការបរាជ័យគួរតែត្រូវបានកែលម្អ។
- ការលុបធនធានដោយដៃគឺចាំបាច់។ មុនពេលចាប់ផ្តើមការលុប វាអាចសាកសួរថាតើធនធានគួរតែត្រូវបានរំលង ឬលុប។
- ដោយសារតែការតភ្ជាប់ជាក់ស្តែងនៃធនធាន ឬការរៀបចំ វាអាចពិបាកក្នុងការលុបបំបាត់ជង់។
ការកំណត់តម្លៃ
អ្នកអាចចាប់ផ្តើមប្រើប្រាស់វេទិកាជាមួយនឹងកម្រិតឥតគិតថ្លៃរបស់វា។ ហើយតម្លៃចាប់ផ្តើមពី $0.0009 ក្នុងមួយប្រតិបត្តិការ។
6. Google Cloud Deployment Manager
Google Cloud Deployment Manager គឺជាដំណោះស្រាយការដាក់ពង្រាយហេដ្ឋារចនាសម្ព័ន្ធ Google Cloud Platform ដែលធ្វើអោយការបង្កើតធនធាន ការដំឡើង ការផ្តល់ និងការគ្រប់គ្រងដោយស្វ័យប្រវត្តិ។
Yអ្នកអាចដាក់បញ្ចូលគ្នានូវក្រុមសេវាកម្ម Google cloud យ៉ាងងាយស្រួល ហើយគ្រប់គ្រងពួកវាជាអង្គភាពតែមួយ។ អ្នកអាចបង្កើតគំរូដោយប្រើ YAML ឬ Python មើលការផ្លាស់ប្តូរមុននឹងដាក់ពង្រាយ និងពិនិត្យមើលការដាក់ពង្រាយរបស់អ្នកតាមរយៈចំណុចប្រទាក់អ្នកប្រើប្រាស់កុងសូល។
រចនាសម្ព័ន្ធជាឧបករណ៍កូដនេះប្រើវិធីសាស្រ្តភាសាប្រកាសដើម្បីបង្ហាញពីការដំឡើងដែលចង់បាន ហើយទុកអ្វីដែលនៅសល់ទៅប្រព័ន្ធ។ Google Cloud Deployment Manager អនុញ្ញាតឱ្យមានការដាក់ឱ្យប្រើប្រាស់ក្នុងពេលដំណាលគ្នានៃធនធានជាច្រើន ក៏ដូចជាការគ្រប់គ្រងការបង្កើតធនធាន និងតម្រូវការនិយមន័យធនធាន។
ការកំណត់រចនាសម្ព័ន្ធសម្រាប់ការដាក់ពង្រាយត្រូវបានគ្រប់គ្រងជាកូដ ហើយពួកគេអាចត្រូវបានធ្វើម្តងទៀតបានយ៉ាងងាយស្រួលដោយរក្សាភាពស៊ីសង្វាក់គ្នានៅក្នុងស្ថានភាពរបស់ពួកគេ។
គុណសម្បត្តិ
- អនុញ្ញាតឱ្យដាក់ពង្រាយធនធានជាច្រើនក្នុងពេលដំណាលគ្នា។
- អនុញ្ញាតឱ្យធនធាននៅក្នុងការដាក់ពង្រាយត្រូវបានបន្ថែម ដកចេញ ឬផ្លាស់ប្តូរ។
- អ្នកប្រើកំណត់ការកំណត់ ហើយប្រព័ន្ធកំណត់អ្វីដែលនៅសល់ដោយប្រើវិធីសាស្ត្រភាសាប្រកាស។
- បង្កើតនិយមន័យភាពអាស្រ័យរវាងធនធាន និងគ្រប់គ្រងលំដាប់ដែលពួកគេត្រូវបានបង្កើត។
គុណវិបត្តិ
- ការអាប់ដេតត្រូវបានធ្វើឡើងក្នុងពេលជាក់ស្តែង។ យើងមិនអាចអាប់ដេតកម្មវិធីរបស់យើងក្នុងពេលតែមួយបានទេ ប៉ុន្តែយើងអាចដាក់ឱ្យប្រើប្រាស់ពួកវា ដែលជាគុណវិបត្តិចម្បងមួយ។
- ជាមួយនឹងសេវាកម្មនេះ មិនមានជំនួយឯកទេសទេ។ ពេលវេលាឆ្លើយតបសម្រាប់ធាតុបើកចំហគឺមិនលឿនដូចដែលវាអាចមាននោះទេ។
ការកំណត់តម្លៃ
តម្លៃសម្រាប់ផលិតផល ឬសេវាកម្មនេះមិនត្រូវបានផ្គត់ផ្គង់ដោយ Google Cloud Deployment Manager ទេ។ នេះគឺជានីតិវិធីស្តង់ដារសម្រាប់អ្នកលក់កម្មវិធី និងអ្នកផ្តល់សេវា។ ដើម្បីស្វែងរកតម្លៃបច្ចុប្បន្ន សូមទាក់ទង Google Cloud Deployment Manager។
7. អ្នកគ្រប់គ្រងធនធាន Azure ។
កម្មវិធីគ្រប់គ្រងធនធាន Azure ដែលជាដំណោះស្រាយរបស់ Microsoft សម្រាប់ការគ្រប់គ្រងហេដ្ឋារចនាសម្ព័ន្ធនៅក្នុងវេទិការបស់ខ្លួន គឺជាផលិតផល IaC កំពូលមួយទៀត។ វាគ្រប់គ្រងភាពអាស្រ័យ និងហេដ្ឋារចនាសម្ព័ន្ធដោយប្រើគំរូកម្មវិធីគ្រប់គ្រងធនធាន Azure (គំរូ ARM) ។
ជាឧទាហរណ៍ អ្នកអាចរៀបចំធនធានរបស់អ្នកជាក្រុម លុបពួកវា និងកំណត់កម្រិតនៃការចូលប្រើធនធាន ដើម្បីនិយាយជម្រើសមួយចំនួន។ ការគ្រប់គ្រងការចូលប្រើប្រាស់សេវាកម្ម និងធនធានគឺសាមញ្ញជាមួយ Azure ដែលភ្ជាប់មកជាមួយនូវជំនួយដែលភ្ជាប់មកជាមួយសម្រាប់ Role-Based Access Control (RBAC) ។
ក្រុមគ្រប់គ្រង ការជាវ និងក្រុមធនធាន ម្យ៉ាងវិញទៀត អនុញ្ញាតឱ្យអ្នកកែសម្រួលទំហំនៃការចូលប្រើប្រាស់បានយ៉ាងល្អប្រសើរ។ លើសពីនេះ ថ្នាក់ក្រោមនៃឋានានុក្រមទទួលមរតកការកំណត់ពីកម្រិតខ្ពស់ ដោយធានាថាគោលការណ៍ថ្នាក់ខ្ពស់ត្រូវបានអនុវត្តនៅក្នុងក្រុម និងធនធានកម្រិតទាបទាំងអស់។
គុណសម្បត្តិ
- វាសាមញ្ញក្នុងការប្រើប្រាស់ ហើយការគ្រប់គ្រងការលើកទឹកចិត្តបម្រុងគឺសាមញ្ញ។
- សមត្ថភាពដែលមានប្រយោជន៍បំផុតគឺសម្រាប់ការគ្រប់គ្រងការជាវ និងការចាត់តាំងធនធានមួយក្រុមដល់ក្រុមគម្រោង។
- អ្នកគ្រប់គ្រងធនធាន Azure ជួយការងារគ្រប់គ្រងដូចជា ការគ្រប់គ្រងក្រុម។ វាក៏មានប្រយោជន៍សម្រាប់អ្នកជំនាញផងដែរ។ វាមានប្រសិទ្ធភាពណាស់ក្នុងការជួយយើងក្នុងការគ្រប់គ្រងគម្រោង និងសេវាកម្មកណ្តាល។
គុណវិបត្តិ
- មិនមានបន្ទាត់តែមួយសម្រាប់ស្វ័យប្រវត្តិកម្ម ឬការធ្វើមាត្រដ្ឋានការដាក់ពង្រាយទុនបម្រុងនៅក្នុងចំណុចប្រទាក់អ្នកប្រើប្រាស់នោះទេ។
- ពួកគេប្រហែលជាអាចកែលម្អចំណុចប្រទាក់អ្នកប្រើ។
ការកំណត់តម្លៃ
តម្លៃមិនមាននៅលើវេទិកាទេ សូមទាក់ទងអ្នកលក់សម្រាប់តម្លៃរបស់វា។
8. ពូលូមី
Pulumi គឺជាដំណោះស្រាយ IaC ដែលខុសគ្នាពីហេដ្ឋារចនាសម្ព័ន្ធផ្សេងទៀតជា Code platforms ដោយផ្តល់នូវភាពបត់បែនបន្ថែម។
Python, JavaScript, C#, Go, និង TypeScript ស្ថិតក្នុងចំណោមភាសាសរសេរកម្មវិធីដែលត្រូវបានគាំទ្រ។ Pulumi អាចបំពេញនូវករណីប្រើប្រាស់ IaC DevOps កាន់តែទូលំទូលាយ និងឈានដល់អ្នកអភិវឌ្ឍន៍ភាគច្រើនដោយពង្រីកការគាំទ្រភាសារបស់វា។
ភាសាច្រើនទៀតក៏បង្កប់ន័យថា អ្នកមានឧបករណ៍ និងក្របខ័ណ្ឌជាច្រើនទៀតដែលអ្នកចង់បង្កើត និងសាកល្បងហេដ្ឋារចនាសម្ព័ន្ធរបស់អ្នក។ លក្ខណៈប្លែកនៃ Pulumi ជា Infrastructure ជាឧបករណ៍ Code គឺថាវាធ្វើការងារដ៏ល្អក្នុងការរក្សាគោលការណ៍ជាមូលដ្ឋាន និងមុខងាររបស់ឧបករណ៍ដែលគេស្គាល់ដូចជា Terraform ខណៈពេលដែលគាំទ្រដល់ក្រុមហ៊ុនពពកយក្ស AWS, GCP និង Azure Cloud ផងដែរ។
គុណសម្បត្តិ
- អ្វីៗត្រូវបានបញ្ចប់ក្នុងរយៈពេលប៉ុន្មានវិនាទី ជាជាងម៉ោង។
- រាល់ការកែប្រែគួរតែត្រូវបានផ្ទៀងផ្ទាត់តាមរយៈការធ្វើតេស្ត និងគោលការណ៍ដែលភ្ជាប់មកជាមួយ។
- Pulumi គឺជាឧបករណ៍ដ៏អស្ចារ្យដែលមាន។
គុណវិបត្តិ
- បច្ចុប្បន្នមិនមានគុណវិបត្តិទេ។
ការកំណត់តម្លៃ
អ្នកអាចចាប់ផ្តើមប្រើប្រាស់វេទិកាជាមួយនឹងផែនការបុគ្គលរបស់វា។ វាក៏ផ្តល់ជូនផងដែរ ដែលចាប់ផ្តើមពី $0.00025/ឥណទាន។
9. វ៉ែនតា។
Vagrant គឺជាដំណោះស្រាយសម្រាប់អ្នកជំនាញដែលចង់ប្រើម៉ាស៊ីននិម្មិតមួយចំនួនតូចជំនួសឱ្យហេដ្ឋារចនាសម្ព័ន្ធពពកធំ។ វាត្រូវបានបង្កើតឡើងដោយ HashiCorp ដែលជាក្រុមហ៊ុនតែមួយដែលបានបង្កើត Terraform ។ ដោយសារតែវាមានជំនាញក្នុងការបង្កើតបរិយាកាសអភិវឌ្ឍន៍យ៉ាងឆាប់រហ័ស ផលិតផលនេះត្រូវបានបម្រុងទុកសម្រាប់អ្នកអភិវឌ្ឍន៍ដែលធ្វើការលើទំហំតូចជាងច្រើន។
អ្នកអាចប្រើ Vagrant ដើម្បីបង្កើតម៉ាស៊ីននិម្មិត ដំណើរការការធ្វើតេស្តរបស់អ្នក និងរក្សាទុកការកំណត់ទាំងអស់របស់ VM នៅក្នុង Vagrantfile ។ អ្នកអាចចែករំលែកវាជាមួយអ្នកអភិវឌ្ឍន៍ផ្សេងទៀត ដើម្បីធានាថាពួកគេទទួលបានលទ្ធផលដូចគ្នា និងដំណើរការក្នុងបរិយាកាសដូចគ្នា។
វាអាចត្រូវបានប្រើជាមួយនឹង VirtualBox, AWS និងអ្នកផ្តល់សេវាពពកផ្សេងទៀតដែលផ្តល់នូវនិម្មិតជាសេវាកម្ម។ វាក៏អាចប្រើបានជាមួយឧបករណ៍ IaC ផ្សេងទៀតដូចជា Chef និង Puppet ផងដែរ។
គុណសម្បត្តិ
- បរិយាកាសអភិវឌ្ឍន៍អាចត្រូវបានបង្កើតឡើងយ៉ាងរហ័ស និងងាយស្រួល។
- បរិយាកាស dev/test ជាមួយនឹងរន្ទាគម្រោងដ៏មានប្រសិទ្ធភាព។
- ប្រអប់សហគមន៍ និងកម្មវិធីជំនួយមានច្រើនប្រភេទ។
- សម្រាប់ការអភិវឌ្ឍន៍ក្នុងស្រុក Vagrant ធ្វើឱ្យវាសាមញ្ញក្នុងការបញ្ជាក់ច្រក និង URL ។
- វាសាមញ្ញក្នុងការសាងសង់ម៉ាស៊ីនដែលមានប្រព័ន្ធប្រតិបត្តិការជាច្រើន; បញ្ជីនៃពួកវា រួមជាមួយនឹងការណែនាំអំពីការកំណត់រចនាសម្ព័ន្ធ អាចរកបាននៅលើគេហទំព័ររបស់ Vagrant ។
គុណវិបត្តិ
- វាមិនមានចំណុចប្រទាក់អ្នកប្រើក្រាហ្វិកទេ ទោះបីជាវាអាចមានប្រយោជន៍សម្រាប់អ្នកចាប់ផ្តើមដំបូងក៏ដោយ។
- អាស្រ័យលើលេខកូដរបស់អ្នក វាអាចជាដំណើរការពិបាកក្នុងការដំឡើង។
- វាចាំបាច់ក្នុងការប្រើបន្ទាត់ពាក្យបញ្ជា ដែលអាចជាបញ្ហាប្រឈមសម្រាប់អ្នករចនា និងអ្នកអភិវឌ្ឍន៍ដែលមិនសូវស្គាល់បច្ចេកវិទ្យា។
ការកំណត់តម្លៃ
អ្នកអាចចាប់ផ្តើមប្រើប្រាស់វេទិកាជាមួយនឹងផែនការសហគមន៍របស់វា ដែលមិនគិតថ្លៃទាំងស្រុង។ វាក៏ផ្តល់ជូននូវគម្រោងបង់ប្រាក់ដែលចាប់ផ្តើមពី $5/ខែ។
10. (រ)?ឧ
(R)?ex ឬ Rex គឺជាក្របខ័ណ្ឌស្វ័យប្រវត្តិកម្មដ៏សាមញ្ញមួយ ដែលមិនកំណត់គំរូផ្ទាល់ខ្លួនរបស់វាលើអ្នកប្រើប្រាស់។ អ្នកអាចប្រើការលាយបញ្ចូលគ្នានៃវិធីសាស្រ្តប្រកាស និងចាំបាច់ រុញ ឬទាញរចនាប័ទ្មការគ្រប់គ្រង ការប្រតិបត្តិក្នុងមូលដ្ឋាន ឬពីចម្ងាយ ហើយដូច្នេះនៅលើជាមួយ rex ។
វាជាវេទិកាគ្រប់គ្រងការដាក់ពង្រាយប្រភពបើកចំហ និងការកំណត់រចនាសម្ព័ន្ធដែលផ្អែកលើ Perl Coding ដែលអនុញ្ញាតឱ្យអ្នកសម្របម៉ូឌុលយ៉ាងរលូនដើម្បីបំពេញតាមតម្រូវការរបស់អ្នក។
សមត្ថភាព SSH របស់វាសម្រាប់ការគ្រប់គ្រងម៉ាស៊ីនមេពីចម្ងាយធ្វើឱ្យវាសាមញ្ញក្នុងការដំឡើង និងធ្វើឱ្យសកម្មភាពដដែលៗដោយស្វ័យប្រវត្តិ សន្សំពេលវេលា និងការខិតខំប្រឹងប្រែង។
គុណសម្បត្តិ
- Perl គឺជាភាសាសាមញ្ញមួយដើម្បីរៀន។
- វាជាឧបករណ៍គ្មានភ្នាក់ងារដែលប្រើ shh ។
- ការងារដែលអាចធ្វើម្តងទៀតបានគឺស្វ័យប្រវត្តិ ដើម្បីសន្សំពេលវេលា និងការខកចិត្ត។
គុណវិបត្តិ
- បច្ចុប្បន្នមិនមានគុណវិបត្តិទេ។
ការកំណត់តម្លៃ
ដោយសារវាជាប្រភពបើកចំហ អ្នកទាំងអស់គ្នាអាចប្រើវាបានដោយឥតគិតថ្លៃ។
សន្និដ្ឋាន
ជាមួយនឹងប្រសិទ្ធភាព និងភាពជឿជាក់របស់វា ហេដ្ឋារចនាសម្ព័ន្ធជាកូដគឺជាមធ្យោបាយនៃការគ្រប់គ្រងធនធានពពកនាពេលអនាគត។ បច្ចេកវិទ្យា IaC ដែលយើងបានពិភាក្សានឹងជួយឱ្យគម្រោងណាមួយដំណើរការកាន់តែមានប្រសិទ្ធភាព ដោយដំណើរការស្វ័យប្រវត្តិកម្មដែលចំណាយពេលច្រើនបំផុត ទន្ទឹមនឹងនោះក៏ជួយជំរុញបរិយាកាសសុវត្ថិភាព និងធានាឱ្យមានឯកសណ្ឋានផងដែរ។
អាជីវកម្មជាច្រើនបានបំប្លែងទៅជា IaC ក្នុងរយៈពេលប៉ុន្មានឆ្នាំចុងក្រោយនេះ ដែលជាលទ្ធផលកាត់បន្ថយពេលវេលាចំណាយក្នុងការដោះស្រាយជាមួយ WebUI របស់វេទិកាពពករបស់ពួកគេ និងភាពមិនស៊ីសង្វាក់គ្នានៃធនធាន។ ឧបករណ៍ IaC ដ៏អស្ចារ្យបំផុតមួយចំនួនដែលមាននាពេលបច្ចុប្បន្ននេះត្រូវបានបញ្ចូលក្នុងបញ្ជីខាងលើ។ បញ្ជីនេះមិនទូលំទូលាយទេ ប៉ុន្តែវានឹងធ្វើឱ្យអ្នកចាប់ផ្តើមលើប្រធានបទនេះ។
សូមផ្ដល់យោបល់