全部产品
Search
文档中心

CloudOps Orchestration Service:ACS-ECS-RescueUnreachableInstance-Linux

更新时间:Jun 28, 2025

Nama Template

ACS-ECS-RescueUnreachableInstance-Linux

Jalankan Sekarang

Deskripsi Template

Ketika menggunakan instance Elastic Compute Service (ECS), mungkin saja instance tersebut menjadi tidak tersedia karena beberapa alasan. Salah satu penyebab umum adalah kerusakan pada disk sistem, yang dapat terjadi jika instance dihentikan atau dimulai ulang secara paksa, atau mengalami kegagalan mendadak. Penyebab lainnya meliputi kegagalan memperbarui file /etc/fstab setelah melepas disk data dari instance, atau hilang atau rusaknya file /etc/fstab atau initrd. Meskipun instance tampak berstatus Running di konsol ECS, Anda mungkin menghadapi masalah seperti: kegagalan mengakses aplikasi pada instance, pemutusan jaringan dari instance, dan ketidakmampuan untuk terhubung ke instance menggunakan Workbench atau SSH. Jika Anda berhasil membuat koneksi Virtual Network Computing (VNC) ke instance di konsol ECS, Anda mungkin melihat pesan yang menunjukkan kegagalan startup sistem. Dalam situasi ini, Anda dapat menjalankan template ini untuk memperbaiki instance yang rusak. Proses perbaikan melibatkan pemasangan disk sistem dari instance yang rusak ke instance sementara. Skrip perbaikan kemudian dijalankan pada instance sementara. Terakhir, disk sistem yang telah diperbaiki dipasang kembali ke instance asli.

Tipe Template

Otomatis

Pemilik

Alibaba Cloud

Parameter Masukan

Parameter

Deskripsi

Tipe

Diperlukan

Nilai Default

Batasan

unreachableInstanceId

ID instance ECS yang akan diperbaiki.

String

Ya

credentialType

Tipe kredensial yang digunakan untuk masuk ke instance ECS.

String

Ya

credentialValue

Kredensial yang digunakan untuk masuk ke instance ECS.

String

Ya

imagePrefix

Awalan nama gambar yang digunakan untuk mencadangkan data instance ECS.

String

Tidak

OOSRescueBackup-

helperInstanceTypes

Tipe instance yang tersedia untuk instance ECS sementara yang digunakan untuk memperbaiki instance ECS yang rusak.

List

Tidak

['ecs.t6-c4m1.large', 'ecs.t5-lc1m1.small', 'ecs.t5-lc1m2.small', 'ecs.s6-c1m1.small', 'ecs.s6-c1m2.small', 'ecs.n1.small', 'ecs.mn4.small', 'ecs.e3.small', 'ecs.e4.small', 'ecs.n2.small', 'ecs.n4.small', 'ecs.t5-lc1m2.large', 'ecs.c6.large', 'ecs.sn2ne.large']

OOSAssumeRole

Peran Resource Access Management (RAM) yang diasumsikan oleh CloudOps Orchestration Service (OOS).

String

Tidak

""

Parameter Keluaran

Parameter

Deskripsi

Tipe

diskId

String

imageId

String

rtCommandOutput

String

finalHelperInstanceType

String

Kebijakan Izin yang Diperlukan untuk Menjalankan Template

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "ecs:AddTags",
                "ecs:AttachDisk",
                "ecs:CreateImage",
                "ecs:DescribeAvailableResource",
                "ecs:DescribeDisks",
                "ecs:DescribeImages",
                "ecs:DescribeInstances",
                "ecs:DescribeInvocationResults",
                "ecs:DescribeInvocations",
                "ecs:DetachDisk",
                "ecs:RunCommand",
                "ecs:StartInstance",
                "ecs:StopInstance"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "ros:CreateStack",
                "ros:DeleteStack",
                "ros:GetStack"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

Referensi

Untuk informasi lebih lanjut, lihat ACS-ECS-RescueUnreachableInstance-Linux.yml di GitHub.

Konten Template

FormatVersion: OOS-2019-06-01
Description:
  en: 'Ketika menggunakan instance ECS, beberapa situasi dapat menyebabkan korupsi disk sistem, seperti instance yang dipaksa berhenti atau dimulai ulang, atau downtime mendadak, kegagalan memperbarui /etc/fstab ketika disk dilepas, atau bahkan hilang atau rusaknya file /etc/fstab atau initrd. Ketika instance tidak dapat diakses, status instance yang ditampilkan di konsol instance ECS mungkin masih Running, tetapi aplikasi di dalam instance tidak dapat diakses, jaringan di dalam instance tidak dapat dijangkau, dan koneksi tidak dapat dibuat melalui workbench atau SSH. Jika Anda dapat terhubung ke instance dari konsol dengan VNC, Anda mungkin akan melihat halaman yang menunjukkan kegagalan startup sistem. Pada titik ini, Anda dapat mempertimbangkan untuk menjalankan template ini untuk memperbaiki instance yang rusak. Proses perbaikan adalah bahwa disk sistem dari instance yang rusak akan dipasang ke instance sementara yang baru dibuat, lalu skrip perbaikan akan dijalankan di instance sementara, dan akhirnya disk sistem yang diperbaiki akan dipasang kembali ke instance asli.'
  zh-cn: deskripsi dalam bahasa Cina    
  name-en: ACS-ECS-RescueUnreachableInstance-Linux
  name-zh-cn: deskripsi dalam bahasa Cina
  categories:
    - diagnose
Parameters:
  unreachableInstanceId:
    Label:
      en: UnreachableInstanceId
      zh-cn: deskripsi dalam bahasa Cina
    Type: String
    AssociationProperty: ALIYUN::ECS::Instance::InstanceId
    AssociationPropertyMetadata:
      RegionId: '{{ ACS::RegionId }}'
  credentialType:
    Description:
      en: 'Tipe Kredensial untuk instance ECS yang tidak dapat dijangkau setelah diselamatkan, baik KeyPairName maupun tipe Password dapat dipilih.'
      zh-cn: deskripsi dalam bahasa Cina
    Label:
      en: CredentialType
      zh-cn: deskripsi dalam bahasa Cina
    Type: String
    AllowedValues:
      - KeyPairName
      - Password
  credentialValue:
    Description:
      en: 'Nilai kredensial untuk instance ECS yang tidak dapat dijangkau setelah diselamatkan, nilai dari KeyPairName atau Password.'
      zh-cn: deskripsi dalam bahasa Cina
    Type: String
    Label:
      en: Credential
      zh-cn: deskripsi dalam bahasa Cina
  imagePrefix:
    Label:
      en: ImagePrefix
      zh-cn: deskripsi dalam bahasa Cina
    Type: String
    Default: OOSRescueBackup-
  helperInstanceTypes:
    Label:
      en: HelperInstanceTypes
      zh-cn: deskripsi dalam bahasa Cina
    Type: List
    Default:
      - ecs.t6-c4m1.large
      - ecs.t5-lc1m1.small
      - ecs.t5-lc1m2.small
      - ecs.s6-c1m1.small
      - ecs.s6-c1m2.small
      - ecs.n1.small
      - ecs.mn4.small
      - ecs.e3.small
      - ecs.e4.small
      - ecs.n2.small
      - ecs.n4.small
      - ecs.t5-lc1m2.large
      - ecs.c6.large
      - ecs.sn2ne.large
  OOSAssumeRole:
    Label:
      en: OOSAssumeRole
      zh-cn: deskripsi dalam bahasa Cina
    Type: String
    Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: checkInstanceReady
  Action: 'ACS::CheckFor'
  Description:
    en: Memeriksa apakah instance ECS adalah os linux
    zh-cn: deskripsi dalam bahasa Cina
  OnError: ACS::END
  Properties:
    Service: ECS
    API: DescribeInstances
    Parameters:
      InstanceIds:
        - '{{ unreachableInstanceId }}'
    DesiredValues:
      - linux
    PropertySelector: 'Instances.Instance[].OSType'
  Outputs:
    status:
      Type: String
      ValueSelector: 'Instances.Instance[].Status'
    vSwitchId:
      Type: String
      ValueSelector: 'Instances.Instance[].VpcAttributes.VSwitchId'
    zoneId:
      Type: String
      ValueSelector: 'Instances.Instance[].ZoneId'
    oSNameEn:
      Type: String
      ValueSelector: 'Instances.Instance[].OSNameEn'
    oSName:
      Type: String
      ValueSelector: 'Instances.Instance[].OSName'
    imageID:
      Type: String
      ValueSelector: 'Instances.Instance[].ImageId'
- Name: querySystemDisks
  Action: 'ACS::CheckFor'
  Description:
    en: Memeriksa disk sistem dari instance ECS
    zh-cn: deskripsi dalam bahasa Cina
  OnError: ACS::END
  Properties:
    Service: ECS
    API: DescribeDisks
    Parameters:
      InstanceId: '{{ unreachableInstanceId }}'
      DiskType: system
    DesiredValues:
      - 'true'
    PropertySelector: '.Disks.Disk[] as $disk|$disk.Category|startswith("cloud") and ($disk.Encrypted|not)|tostring'
  Outputs:
    diskId:
      Type: String
      ValueSelector: 'Disks.Disk[].DiskId'
    category:
      Type: String
      ValueSelector: 'Disks.Disk[].Category'
    encrypted:
      Type: String
      ValueSelector: 'Disks.Disk[].Encrypted'
- Name: whetherStopInstance
  Action: 'ACS::Choice'
  Description:
    en: Pilih tugas berikutnya berdasarkan status Instance
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    DefaultTask: stopInstance
    Choices:
      - When:
          'Fn::Equals':
            - Stopped
            - '{{ checkInstanceReady.status }}'
        NextTask: checkAvailableInstanceTypesExist
- Name: stopInstance
  Action: 'ACS::ExecuteAPI'
  Description:
    en: Menghentikan instance ECS
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: StopInstance
    Parameters:
      InstanceId: '{{ unreachableInstanceId }}'
- Name: Sleep3Minutes
  Description:
    en: Tunggu instance Berhenti
    zh-cn: deskripsi dalam bahasa Cina
  Action: 'ACS::Sleep'
  Properties:
    Duration: PT3M
- Name: queryUnreachableInstanceStatus
  Action: 'ACS::ExecuteAPI'
  Description:
    en: Meminta status instance yang tidak dapat dijangkau
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: DescribeInstances
    Parameters:
      InstanceIds:
        - '{{ unreachableInstanceId }}'
  Outputs:
    status:
      Type: String
      ValueSelector: 'Instances.Instance[].Status'
- Name: whetherForceStopInstance
  Action: 'ACS::Choice'
  Description:
    en: Pilih tugas berikutnya berdasarkan status Instance
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    DefaultTask: forceStopInstance
    Choices:
      - When:
          'Fn::Equals':
            - Stopped
            - '{{ queryUnreachableInstanceStatus.status }}'
        NextTask: checkAvailableInstanceTypesExist
- Name: forceStopInstance
  Action: 'ACS::ExecuteAPI'
  Description:
    en: Menghentikan instance ECS secara paksa
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: StopInstance
    Parameters:
      InstanceId: '{{ unreachableInstanceId }}'
      ForceStop: 'true'
- Name: untilStopUnreachableInstanceSuccess
  Action: 'ACS::WaitFor'
  Description:
    en: Menunggu instance ECS masuk ke status berhenti
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: DescribeInstances
    Parameters:
      InstanceIds:
        - '{{ unreachableInstanceId }}'
    DesiredValues:
      - Stopped
    PropertySelector: 'Instances.Instance[].Status'
- Name: checkAvailableInstanceTypesExist
  Action: 'ACS::Template'
  OnError: ACS::END
  Description:
    en: Meminta tipe instance yang tersedia saat ini untuk membuat instance pembantu di zona instance yang tidak dapat dijangkau
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    TemplateName: 'ACS::ECS::CheckAvailableInstanceTypes'
    Parameters:
      zoneId: '{{ checkInstanceReady.zoneId }}'
      instanceTypes: '{{ helperInstanceTypes }}'
  Outputs:
    availableInstanceType:
      Type: String
      ValueSelector: '.availableInstanceTypes[0]'
- Name: createImage
  Action: 'ACS::ExecuteAPI'
  Description:
    en: Membuat gambar kustom
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: CreateImage
    Parameters:
      ImageName: '{{imagePrefix}}{{ ACS::ExecutionId }}'
      InstanceId: '{{ unreachableInstanceId }}'
      DetectionStrategy: Standard
      Tag:
        - Key: 'instance_to_rescue'
          Value: '{{unreachableInstanceId}}'
        - Key: 'oos_exec'
          Value: '{{ ACS::ExecutionId }}'
  Outputs:
    imageId:
      Type: String
      ValueSelector: ImageId
- Name: createStack
  Action: 'ACS::ExecuteAPI'
  Description:
    en: Buat tumpukan sumber daya Ros
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ROS
    API: CreateStack
    Parameters:
      StackName: 'OOS-{{ACS::ExecutionId}}'
      TimeoutInMinutes: 10
      DisableRollback: false
      Parameters:
        - ParameterKey: helperInstanceType
          ParameterValue: '{{checkAvailableInstanceTypesExist.availableInstanceType}}'
        - ParameterKey: zoneId
          ParameterValue: '{{ checkInstanceReady.zoneId }}'
        - ParameterKey: resourcePrefix
          ParameterValue: 'OOS-{{ACS::ExecutionId}}'
        - ParameterKey: imageId
          ParameterValue: 'centos_8_0_x64_20G_alibase_20191225.vhd'
        - ParameterKey: instanceIdToRescue
          ParameterValue: '{{unreachableInstanceId}}'
        - ParameterKey: executionId
          ParameterValue: '{{ ACS::ExecutionId }}'
      TemplateURL: 'https://oos-debug.oss-cn-hangzhou.aliyuncs.com/ros_template.json'
  Outputs:
    StackId:
      Type: String
      ValueSelector: StackId
- Name: untilImageReady
  Action: ACS::WaitFor
  Description:
    en: Tunggu gambar tersedia
    zh-cn: deskripsi dalam bahasa Cina
  OnError: deleteStack
  Properties:
    Service: ECS
    API: DescribeImages
    Parameters:
      ImageId: '{{ createImage.imageId }}'
    DesiredValues:
    - Available
    PropertySelector: Images.Image[].Status
  Retries: 50
  Delay: 36
  DelayType: Constant
- Name: untilStackReady
  Action: 'ACS::WaitFor'
  OnError: queryStackStatusReason
  OnSuccess: putRTToHelperInstance
  Description:
    en: Tunggu status tumpukan CREATE_COMPLETE.
    zh-cn: deskripsi dalam bahasa Cina 
  Properties:
    Service: ROS
    API: GetStack
    Parameters:
      StackId: '{{createStack.StackId}}'
    DesiredValues:
      - CREATE_COMPLETE
    StopRetryValues:
      - CREATE_FAILED
      - CHECK_FAILED
      - ROLLBACK_FAILED
      - ROLLBACK_COMPLETE
      - CREATE_ROLLBACK_COMPLETE
    PropertySelector: Status
  Outputs:
    helperInstanceId:
      Type: String
      ValueSelector: 'Outputs[0].OutputValue'
    statusReason:
      Type: String
      ValueSelector: 'StatusReason'
- Name: queryStackStatusReason
  Action: ACS::ExecuteAPI
  OnError: deleteStack
  OnSuccess: deleteStack
  Description:
    en: Meminta alasan stack yang gagal dibuat.
    zh-cn: deskripsi dalam bahasa Cina 
  Properties:
    Service: ROS
    API: GetStack
    Parameters:
      StackId: '{{createStack.StackId}}'
  Outputs:
    statusReason:
      Type: String
      ValueSelector: 'StatusReason'
- Name: putRTToHelperInstance
  Action: 'ACS::ECS::RunCommand'
  OnError: deleteStack
  Description:
    en: Jalankan perintah asisten cloud pada instance ECS untuk mengunduh rt
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    commandContent: 'cd /tmp ; wget https://oos-debug.oss-cn-hangzhou.aliyuncs.com/guestos-scripts-0.0.1.tar.gz; tar -zxvf guestos-scripts-0.0.1.tar.gz'
    commandType: RunShellScript
    instanceId: '{{ untilStackReady.helperInstanceId }}'
- Name: addTags
  Action: ACS::ExecuteAPI
  OnError: deleteStack
  Description:
    en: Tambahkan Tag disk sistem ke instance untuk diselamatkan
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: AddTags
    Parameters:
      ResourceType: instance
      ResourceId: '{{ unreachableInstanceId }}'
      Tag:
        - Key: 'source_sys_disk'
          Value: '{{ querySystemDisks.diskId }}'
- Name: detachDisk
  Action: 'ACS::ECS::DetachDisk'
  OnError: deleteStack
  Description:
    en: Melepaskan disk sistem dari instance yang tidak dapat dijangkau
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    instanceId: '{{ unreachableInstanceId }}'
    diskId: '{{ querySystemDisks.diskId }}'
- Name: attachAsDataDisk
  Action: 'ACS::ECS::AttachDisk'
  OnError: deleteStack
  Description:
    en: Memasang disk sistem ke instance pembantu sebagai disk data
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    instanceId: '{{ untilStackReady.helperInstanceId }}'
    diskId: '{{ querySystemDisks.diskId }}'
- Name: runCommand
  Action: 'ACS::ECS::RunCommand'
  OnError: deleteStack
  Description:
    en: Jalankan perintah asisten cloud untuk memperbaiki disk pada instance ECS
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    commandContent: cd /tmp/guestos-scripts-0.0.1;./rescue_system_disk.sh
    commandType: RunShellScript
    instanceId: '{{ untilStackReady.helperInstanceId }}'
  Outputs:
    commandOutput:
      Type: String
      ValueSelector: invocationOutput
- Name: forceStopHelperInstance
  Action: 'ACS::ExecuteAPI'
  OnError: deleteStack
  Description:
    en: Menghentikan instance pembantu secara paksa
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: StopInstance
    Parameters:
      InstanceId: '{{ untilStackReady.helperInstanceId }}'
      ForceStop: 'true'
- Name: untilforceStopHelperInstanceSuccess
  Action: 'ACS::WaitFor'
  OnError: deleteStack
  Description:
    en: Menunggu instance pembantu masuk ke status berhenti
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: DescribeInstances
    Parameters:
      InstanceIds:
        - '{{ untilStackReady.helperInstanceId }}'
    DesiredValues:
      - Stopped
    PropertySelector: 'Instances.Instance[].Status'
- Name: detachHelperInstanceDataDisk
  Action: 'ACS::ECS::DetachDisk'
  OnError: deleteStack
  Description:
    en: Melepaskan disk data dari instance pembantu
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    instanceId: '{{ untilStackReady.helperInstanceId }}'
    diskId: '{{ querySystemDisks.diskId }}'
- Name: untilUnreachableInstanceSystemDiskAvailable
  Action: 'ACS::WaitFor'
  OnError: 'ACS::NEXT'
  Description:
    en: Menunggu disk dilepaskan
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: DescribeDisks
    Parameters:
      DiskIds:
        - '{{ querySystemDisks.diskId }}'
    DesiredValues:
      - Available
    PropertySelector: 'Disks.Disk[].Status'
- Name: deleteStack
  Action: 'ACS::ExecuteApi'
  OnError: 'ACS::NEXT'
  Description:
    en: Hapus tumpukan sumber daya ros
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ROS
    API: DeleteStack
    Parameters:
      StackId: '{{createStack.StackId}}'
- Name: untilStackDeleted
  Action: 'ACS::WaitFor'
  OnError: 'ACS::NEXT'
  Description:
    en: Tunggu status tumpukan ros DELETE_COMPLETE
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ROS
    API: GetStack
    Parameters:
      StackId: '{{createStack.StackId}}'
    DesiredValues:
      - DELETE_COMPLETE
    StopRetryValues:
      - DELETE_FAILED
      - CHECK_FAILED
    PropertySelector: Status
- Name: checkForUnreachableInstanceSystemDiskAvailable
  Action: 'ACS::CheckFor'
  OnError: 'ACS::END'
  Description:
    en: Periksa apakah disk telah dilepaskan
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: DescribeDisks
    Parameters:
      DiskIds:
        - '{{ querySystemDisks.diskId }}'
    DesiredValues:
      - Available
    PropertySelector: 'Disks.Disk[].Status'
- Name: whetherCredentialTypeIsKeyPairName
  Action: 'ACS::Choice'
  OnError: 'ACS::NEXT'
  Description:
    en: Pilih tugas berikutnya berdasarkan input tipe kredensial
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    DefaultTask: attachAsSysDiskWithKeyPairName
    Choices:
      - When:
          'Fn::Equals':
            - Password
            - '{{ credentialType }}'
        NextTask: attachAsSysDisk
- Name: attachAsSysDiskWithKeyPairName
  Action: 'ACS::ExecuteAPI'
  OnSuccess: untilDiskAttached
  OnError: 'ACS::NEXT'
  Description:
    en: Memasang disk sistem sumber ke instance yang tidak dapat dijangkau dan menetapkan tipe kredensial PairName untuk root
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: AttachDisk
    Parameters:
      DiskId: '{{ querySystemDisks.diskId }}'
      InstanceId: '{{ unreachableInstanceId }}'
      Bootable: 'true'
      KeyPairName: '{{credentialValue}}'
- Name: attachAsSysDisk
  Action: 'ACS::ExecuteAPI'
  OnError: 'ACS::NEXT'
  Description:
    en: Memasang disk sistem sumber ke instance yang tidak dapat dijangkau dan menetapkan tipe kredensial Password untuk root
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    Service: ECS
    API: AttachDisk
    Parameters:
      DiskId: '{{ querySystemDisks.diskId }}'
      InstanceId: '{{ unreachableInstanceId }}'
      Bootable: 'true'
      Password: '{{credentialValue}}'
- Name: untilDiskAttached
  Action: 'ACS::WaitFor'
  OnError: 'ACS::NEXT'
  Description:
    en: Menunggu disk sistem terpasang
    zh-cn: deskripsi dalam bahasa Cina
  Retries: 7
  Properties:
    Service: ECS
    API: DescribeDisks
    Parameters:
      DiskIds:
        - '{{ querySystemDisks.diskId }}'
    DesiredValues:
      - In_use
    PropertySelector: 'Disks.Disk[].Status'
- Name: whetherStartUnreachableInstance
  Action: 'ACS::Choice'
  OnError: 'ACS::NEXT'
  Description:
    en: Pilih tugas berikutnya berdasarkan status instance asli
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    DefaultTask: ACS::END
    Choices:
      - When:
          'Fn::Equals':
            - Running
            - '{{ checkInstanceReady.status }}'
        NextTask: startUnreachableInstance
- Name: startUnreachableInstance
  Action: 'ACS::ECS::StartInstance'
  Description:
    en: Memulai instance yang tidak dapat dijangkau
    zh-cn: deskripsi dalam bahasa Cina
  Properties:
    instanceId: '{{ unreachableInstanceId}}'
Outputs:
  diskId:
    Type: String
    Value: '{{ querySystemDisks.diskId }}'
  imageId:
    Type: String
    Value: '{{ createImage.imageId }}'
  rtCommandOutput:
    Type: String
    Value: '{{ runcommand.commandOutput }}'
  finalHelperInstanceType:
    Type: String
    Value: '{{checkAvailableInstanceTypesExist.availableInstanceType}}'
Metadata:
  ALIYUN::OOS::Interface:
    ParameterGroups:
      - Parameters:
          - credentialType
          - credentialValue
          - imagePrefix
          - helperInstanceTypes
        Label:
          default:
            zh-cn: deskripsi dalam bahasa Cina
            en: Konfigurasikan Parameter
      - Parameters:
          - unreachableInstanceId
        Label:
          default:
            zh-cn: deskripsi dalam bahasa Cina
            en: Pilih Instance ECS
      - Parameters:
          - OOSAssumeRole
        Label:
          default:
            zh-cn: deskripsi dalam bahasa Cina
            en: Opsi Kontrol