NCS - Documents
Go to Portal
  • NIPA Cloud Space Overview
    • Welcome to NIPA Cloud Space documentation
    • NCS User Account
      • Create NIPA Cloud Space Account
      • Loging in to Nipa Cloud Space
      • Reset NCS Password
      • Activating Two-Factor Authentication
      • Deactivating Two-Factor Authentication
    • Co-working Projects
      • Create Co-working Project
      • Manage Project Member
      • Exporting Resource List
    • Billing & Wallet
      • Topup a Project Wallet
      • Redeem Voucher
      • Insufficient Wallet Balance
  • COMPUTE
    • Compute Instance
      • What is OS Status?
      • Launching Compute Instance
      • Managing Instance
        • Stop
        • Start
        • Restart
        • Resize (Change Machine Type)
        • Take Snapshot
        • Auto Backup
        • Reset Linux "root" Password
        • Reset Windows "Administrator" Password
      • SSH to Linux Compute Instance
        • Converting Key Pair for PuTTy
        • Windows Client using Key Pair
        • Windows Client using Password
        • MacOS/Linux using Key Pairs
        • MacOS/Linux using Password
      • Remote Desktop to Windows Instance
      • Setting Docker Image Caching
      • Renaming Instance
      • Exporting Instance List
      • How to change Compute Instance hostname
      • How to install QEMU Guest Agent
      • How to fix update kernel for RHEL
      • How to Update Rocky Linux 9
      • How to Upgrade Rocky Linux to 9.4
      • How to change RDP port on Windows
    • Compute Image
      • Create Image From a Bootable Volume
      • Importing Your Own Image
      • Export Image
      • Share Image to Between Projects
      • Exporting Image List
    • Key Pair
      • Managing Key Pair(s)
      • Creating a New Key Pair
      • Importing an Existing Key Pair
    • Deployment Script
      • Managing Deployment Script
      • Create a Deployment Script
      • Clone a Deployment Script
      • Edit a Deployment Script
      • Delete a Deployment Script
  • STORAGE
    • Block Storage
      • Managing Volume(s)
        • Create From Blank
        • Create From an Image
        • Create From a Volume
        • Create From a Snapshot
        • Transferring a Volume
        • Accepting a Tranferred Volume
        • Renaming a Volume
        • How to Change Volume Type
      • Managing Snapshot(s)
        • Create a Snapshot
        • Renaming a Volume Snapshot
      • Exporting Volume and Volume Snapshot List
    • Object Storage (S3)
      • Migrate file S3 AWS to S3 NIPA
      • Create an Object Storage Bucket
      • Delete an Object Storage Bucket
      • Create an Object Storage Sub-User
      • Regenerate Sub-User's Access Key
      • Revoke Sub-User's Access Key
      • Create Bucket Policy
      • Bucket Versioning
      • Access S3 Bucket with Cyberduck
        • Upload Files to a Bucket
        • Share File via Public Link
      • Access S3 Bucket with s3cmd
        • Basic command
        • การ set ACL สำหรับการเปิดใช้งาน Objects แบบ public
        • การสร้าง Presigned URL สำหรับการใช้งานชั่วคราว
      • Mount S3 Bucket on instances with s3fs-fuse
      • Access S3 buckets With AWS S3 Client SDK
        • S3Client Configuration
        • Basic Command
        • Multipart Upload
      • Access S3 buckets with internal network for NCS instance
      • Delete Lifecycle Policies
      • Move Objects Lifecycle Script
      • Configure a static website using S3 Bucket
    • NIPA Drive
      • Purchasing a Drive
  • NETWORKING
    • Networking
      • Managing VPC Network(s)
        • Create a Network
        • DHCP Setting
        • Create Port
        • Create Router
      • Managing Security Group(s)
        • Create a New Security Group
        • Create Security Group Presets
      • Managing External IP(s)
        • Create an External IP
        • Exporting External IP List
      • NAT Gateway with Ubuntu (VM)
      • NAT and VPN Gateway on NCS with Pfsense-2.6.0
  • LOAD BALANCING
    • Load Balancer as a Service
      • Create Load Balancer
      • Using Network Load Balancing
      • Using Application Load Balancing
      • Renaming a Load Balancer
      • Exporting Load Balancer List
      • Monitoring Load Balancer Using Prometheus
    • SSL Certificate
      • Import SSL Certificate
  • DATABASE AS A SERVICE
    • SQL Database
      • Create SQL Database Instance
        • Create MySQL Database Instance
      • Manage SQL Database Instance
        • Reboot Database Service
        • Delete Database Instance
        • Online Extend Storage Size
        • Edit Allowed CIDR
      • Auto-Scaling SQL Database Storage
        • Enable Auto-Scaling
        • Disable Auto-Scaling
        • Edit Auto-Scaling
      • Manage SQL Database Root User
        • Enable Root User
        • Reset Root User Password
      • Manage SQL Database Schema
        • Create Database Schema
        • Delete Database Schema
      • Manage SQL Database User
        • Create Database User
        • Delete Database User
        • Reset Password
        • Edit Access
      • Manage SQL Database Backup
        • Create Backup
        • Create A New SQL Database Instance From Backup
        • Delete Backup
      • Manage SQL Database Logs
        • Enable Logs
        • Disable Logs
        • Refresh Logs
        • Load More Logs
      • Manage Monitoring User
        • Create Monitoring User
        • Delete Monitoring User
      • Monitor SQL Database with Percona Monitoring and Management (PMM)
  • SCHEDULING
    • Schedules
      • Create Schedule
    • Jobs
  • Public API
    • What is NCS Public API ?
      • Download NCS Project RC File
      • Getting Start with NCS Public API
        • Using OpenStack Client Tool
        • Using REST API
        • Terraform with Openstack
        • Auto-scaling OpenStack Instances with Senlin and Prometheus
          • Installation Prometheus
          • Installation Alertmanager
  • MIGRATION
    • Migrating Linux VM from vSphere to NCS
    • Migrating Windows VM from vSphere to NCS
  • Customer Support
    • Having Problem Before Access a Project
    • Having Problem In a Project
  • Tutorial
    • My First Website
    • Access MySQL Database With MySQL Workbench
    • Pritunl for VPN server
    • Install Rancher Server with Docker Quick Start
      • Create RKE2 Cluster via Rancher Dashboard
    • Install odoo18 with external database
    • How to use LBaaS for mysql Load Balancing
  • Release Notes
    • v5.0.X (v5.0.0-now)
      • v5.0.0
      • v5.1.0
      • v5.2.0
      • v5.2.1
      • v5.2.2
      • v5.2.3
      • v5.2.4
      • v.5.3.0
      • v5.4.0
    • v4.19.X (v4.19.0-v4.19.3)
      • v4.19.0
      • v4.19.1
      • v4.19.2
      • v4.19.3
    • v4.18.X (v4.18.0-v4.18.2)
      • v4.18.0
      • v4.18.1
      • v4.18.2
    • v4.17.X (v4.17.0-v4.17.3)
      • v4.17.0
      • v4.17.0.1
      • v4.17.1
      • v4.17.2
      • v4.17.3
    • v4.16.X (v4.16.0-v4.16.5)
      • v4.16.0
      • v4.16.1
      • v4.16.2
      • v4.16.3
      • v4.16.4
      • v4.16.5
    • v4.15.X (v4.15.0-v4.15.9)
      • v4.15.0
      • v4.15.1
      • v4.15.2
      • v4.15.3
      • v4.15.4
      • v4.15.5
      • v4.15.6
      • v4.15.7
      • v4.15.8
      • v4.15.9
    • v.4.14.X (v4.14.0-v4.14.2)
      • v.4.14.0
      • v4.14.1
      • 4.14.2
Powered by GitBook
On this page
  • ข้อดีของการใช้งาน Deployment Script
  • Use cases ที่เหมาะกับการใช้ Deployment Script
  • Deployment Script ที่ Nipa Cloud Space รองรับสามารถแบ่งได้เป็น 2 ประเภท ตามการใช้งานที่ต่างกัน
  • การใช้งาน Deployment Script
  • Recommendations

Was this helpful?

  1. COMPUTE

Deployment Script

PreviousImporting an Existing Key PairNextManaging Deployment Script

Last updated 6 months ago

Was this helpful?

Deployment Script คือการเพิ่มความสามารถจากการ launch Compute Instance จากการ launch จาก Compute Image OS แบบธรรมดา ให้สามารถติดตั้ง software หรือตั้งค่า Compute Instance ล่วงหน้าได้ โดยใช้ script ที่เขียนเหมือนกับ todo list ว่าหลังจากที่ Compute Instance boot เสร็จแล้ว จะต้องทำอะไรบ้าง

ข้อดีของการใช้งาน Deployment Script

  1. ทำให้สามารถติดตั้ง software หรือตั้งค่า Compute Instance ล่วงหน้า ลดระยะเวลาที่ต้องใช้ในการ setup Compute Instance หรือทำเป็น template สำหรับการ launch ซ้ำหลาย Compute Instance ที่มีการ setup แบบเดียวกันได้

  2. ประหยัดค่าใช้จ่ายในการเก็บข้อมูลตั้งต้นของ Compute Instance แทนการใช้งาน Bootable Volume หรือ Compute Image เพราะ Deployment Script ไม่มีค่าใช้จ่าย

  3. Nipa Cloud Space มีการ provide Deployment Script สำหรับ application ที่เป็นที่นิยมให้แล้ว และยั่งสามารถสร้าง Deployment Script ของตัวเองได้อีกด้วย

Use cases ที่เหมาะกับการใช้ Deployment Script

  1. Compute Instance ที่มีขั้นตอนการ setup ที่ซับซ้อน

  2. ต้อง setup Compute Instance รูปแบบเดียวกันจำนวนมาก

  3. ต้องมีการทำ vertical scaling หรือการ scale แบบที่ใช้การเพิ่มจำนวน Compute Instance แทนการขยายขนาด Compute nstance

Deployment Script ที่ Nipa Cloud Space รองรับสามารถแบ่งได้เป็น 2 ประเภท ตามการใช้งานที่ต่างกัน

  1. x-shellscript: เป็น script ที่ใช้งานได้ง่าย สำหรับส่งคำสั่งพื้นฐานเข้าไปในขั้นตอนการ boot Compute Instance โดยใช้งาน shell command สามารถใช้งานได้ทั้งกับ operating system Windowss และ Linux

  2. cloud-init: เป็น open source ที่สามารถทำงานได้ซับซ้อนกว่า x-shellscript สำหรับส่งคำสั่งเข้าไปในขั้นตอนการ boot Compute Instance โดยใช้ format ของ script เฉพาะของ cloud-init () รองรับเฉพาะกับ operating system Linux เท่านั้น

การใช้งาน Deployment Script

Deployment Script จะใช้ในการ launch Compute Instance โดยจะใช้คู่กับ Compute Image ที่กำหนดไว้เป็น base image ของ Deployment Script โดยในการ launch Compute Instance จาก Deployment Script จะเป็นการ launch Compute Instance จาก Compute Image และ inject Deployment Script เข้าไป ในฐานะ userdata ที่จะทำให้ Compute Instance Provisioner run scipt ดังกล่าวทันที หลัง launch Compute Instance เสร็จแล้ว

Recommendations

https://cloudinit.readthedocs.io/en/latest/index.html
Create a Deployment Script
Clone a Deployment Script