Jalankan operasi otomatis yang didukung oleh Systems Manager Automation - AWS Systems Manager

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Jalankan operasi otomatis yang didukung oleh Systems Manager Automation

Ketika Anda menjalankan otomatisasi, secara default, otomatisasi berjalan dalam konteks pengguna yang memulai otomatisasi. Ini berarti, misalnya, jika pengguna Anda memiliki izin administrator, maka otomatisasi berjalan dengan izin administrator dan akses penuh ke sumber daya yang dikonfigurasi oleh otomatisasi. Sebagai praktik terbaik keamanan, kami menyarankan Anda menjalankan otomatisasi dengan menggunakan peran IAM layanan yang dikenal dalam kasus ini sebagai peran asumsi yang dikonfigurasi dengan kebijakan yang dikelola mazonSSMAutomation Peran. Anda mungkin perlu menambahkan IAM kebijakan tambahan ke peran asumsi Anda untuk menggunakan berbagai runbook. Menggunakan peran IAM layanan untuk menjalankan otomatisasi disebut administrasi delegasi.

Ketika Anda menggunakan peran layanan, otomatisasi diizinkan untuk berjalan terhadap AWS sumber daya, tetapi pengguna yang menjalankan otomatisasi telah membatasi akses (atau tidak ada akses) ke sumber daya tersebut. Misalnya, Anda dapat mengonfigurasi peran layanan dan menggunakannya dengan Otomasi untuk memulai ulang satu atau beberapa instans Amazon Elastic Compute Cloud (AmazonEC2). Otomasi adalah kemampuan AWS Systems Manager. Otomatisasi memulai ulang instas, tetapi peran layanan tidak memberikan izin pengguna untuk mengakses contoh tersebut.

Anda dapat menentukan peran layanan pada saat runtime ketika sedang menjalankan otomatisasi, atau Anda dapat membuat runbook kustom dan menentukan peran layanan secara langsung di runbook. Jika Anda menentukan peran layanan, baik saat runtime atau runbook, maka layanan berjalan dalam konteks peran layanan yang ditentukan. Jika Anda tidak menentukan peran layanan, maka sistem membuat sesi sementara dalam konteks pengguna dan menjalankan otomatisasi.

catatan

Anda harus menentukan peran layanan untuk otomatisasi yang Anda harapkan agar bisa berjalan lebih dari 12 jam. Jika Anda memulai otomatisasi yang berjalan lama dalam konteks pengguna, sesi pengguna sementara berakhir setelah 12 jam.

Administrasi yang didelegasikan memastikan keamanan dan kontrol yang lebih tinggi terhadap AWS sumber daya. Ini juga memungkinkan pengalaman audit yang ditingkatkan karena tindakan sedang dilakukan terhadap sumber daya Anda oleh peran layanan pusat, bukan beberapa IAM akun.

Sebelum Anda mulai

Sebelum Anda menyelesaikan prosedur berikut, Anda harus membuat peran IAM layanan dan mengkonfigurasi hubungan kepercayaan untuk Otomasi, kemampuan AWS Systems Manager. Untuk informasi selengkapnya, lihat Tugas 1: Buat peran layanan untuk otomatisasi.

Prosedur berikut menjelaskan cara menggunakan konsol Systems Manager atau alat baris perintah pilihan Anda untuk menjalankan otomatisasi sederhana.

Menjalankan otomatisasi sederhana (konsol)

Prosedur berikut menjelaskan cara menggunakan konsol Systems Manager untuk menjalankan otomatisasi sederhana.

Untuk menjalankan otomatisasi sederhana
  1. Buka AWS Systems Manager konsol di https://console.aws.amazon.com/systems-manager/.

  2. Di panel navigasi, pilih Otomatisasi, lalu pilih Eksekusi otomatisasi.

  3. Di daftar Dokumen otomatisasi, pilih runbook. Pilih satu atau beberapa opsi di panel Kategori dokumen untuk memfilter SSM dokumen sesuai dengan tujuannya. Untuk melihat runbook yang Anda miliki, pilih tab Dimiliki oleh saya. Untuk melihat runbook yang dibagikan dengan akun Anda, pilih tab Dibagikan dengan saya. Untuk melihat semua runbook, pilih tab Semua dokumen.

    catatan

    Anda dapat melihat informasi tentang runbook dengan memilih nama runbook.

  4. Di bagian Detail dokumen, verifikasi bahwa Versi dokumen diatur ke versi yang ingin Anda jalankan. Sistem ini termasuk pilihan versi berikut:

    • Versi default saat runtime — Pilih opsi ini jika runbook Otomasi diperbarui secara berkala dan versi default baru ditetapkan.

    • Versi terbaru saat runtime — Pilih opsi ini jika runbook Otomasi diperbarui secara berkala, dan Anda ingin menjalankan versi yang terbaru diperbarui.

    • 1 (Default) - Pilih opsi ini untuk menjalankan versi pertama dokumen, yang merupakan default.

  5. Pilih Berikutnya.

  6. Dalam bagian Mode Eksekusi, pilih Eksekusi sederhana.

  7. Di bagian Parameter input, tentukan input yang diperlukan. Secara opsional, Anda dapat memilih peran IAM layanan dari AutomationAssumeRoledaftar.

  8. (Opsional) Pilih CloudWatch alarm untuk diterapkan ke otomatisasi Anda untuk pemantauan. Untuk memasang CloudWatch alarm ke otomatisasi Anda, IAM kepala sekolah yang memulai otomatisasi harus memiliki izin untuk iam:createServiceLinkedRole tindakan tersebut. Untuk informasi selengkapnya tentang CloudWatch alarm, lihat Menggunakan CloudWatch alarm Amazon. Perhatikan bahwa jika alarm Anda aktif, otomatisasi dihentikan. Jika Anda menggunakan AWS CloudTrail, Anda akan melihat API panggilan di jejak Anda.

  9. Pilih Eksekusi.

Konsol menampilkan status otomatisasi. Jika otomatisasi gagal berjalan, lihat Pemecahan masalah Otomatisasi Systems Manager.

Menjalankan otomasi sederhana (baris perintah)

Prosedur berikut menjelaskan cara menggunakan AWS CLI (di Linux atau Windows) atau AWS Tools for PowerShell menjalankan otomatisasi sederhana.

Untuk menjalankan otomatisasi sederhana
  1. Instal dan konfigurasikan AWS CLI atau AWS Tools for PowerShell, jika Anda belum melakukannya.

    Untuk selengkapnya, lihat Menginstal atau memperbarui versi terbaru AWS CLI dan Menginstal AWS Tools for PowerShell.

  2. Jalankan perintah berikut untuk memulai otomatisasi sederhana. Ganti masing-masing example resource placeholder dengan informasi Anda sendiri.

    Linux & macOS
    aws ssm start-automation-execution \ --document-name runbook name \ --parameters runbook parameters
    Windows
    aws ssm start-automation-execution ^ --document-name runbook name ^ --parameters runbook parameters
    PowerShell
    Start-SSMAutomationExecution ` -DocumentName runbook name ` -Parameter runbook parameters

    Berikut adalah contoh menggunakan runbook AWS-RestartEC2Instance untuk memulai ulang EC2 instance yang ditentukan.

    Linux & macOS
    aws ssm start-automation-execution \ --document-name "AWS-RestartEC2Instance" \ --parameters "InstanceId=i-02573cafcfEXAMPLE"
    Windows
    aws ssm start-automation-execution ^ --document-name "AWS-RestartEC2Instance" ^ --parameters "InstanceId=i-02573cafcfEXAMPLE"
    PowerShell
    Start-SSMAutomationExecution ` -DocumentName AWS-RestartEC2Instance ` -Parameter @{"InstanceId"="i-02573cafcfEXAMPLE"}

    Sistem mengembalikan informasi seperti berikut.

    Linux & macOS
    {
        "AutomationExecutionId": "4105a4fc-f944-11e6-9d32-0123456789ab"
    }
    Windows
    {
        "AutomationExecutionId": "4105a4fc-f944-11e6-9d32-0123456789ab"
    }
    PowerShell
    4105a4fc-f944-11e6-9d32-0123456789ab
  3. Jalankan perintah berikut untuk mengambil status otomatisasi.

    Linux & macOS
    aws ssm describe-automation-executions \ --filter "Key=ExecutionId,Values=4105a4fc-f944-11e6-9d32-0123456789ab"
    Windows
    aws ssm describe-automation-executions ^ --filter "Key=ExecutionId,Values=4105a4fc-f944-11e6-9d32-0123456789ab"
    PowerShell
    Get-SSMAutomationExecutionList | ` Where {$_.AutomationExecutionId -eq "4105a4fc-f944-11e6-9d32-0123456789ab"}

    Sistem mengembalikan informasi seperti berikut.

    Linux & macOS
    {
        "AutomationExecutionMetadataList": [
            {
                "AutomationExecutionStatus": "InProgress",
                "CurrentStepName": "stopInstances",
                "Outputs": {},
                "DocumentName": "AWS-RestartEC2Instance",
                "AutomationExecutionId": "4105a4fc-f944-11e6-9d32-0123456789ab",
                "DocumentVersion": "1",
                "ResolvedTargets": {
                    "ParameterValues": [],
                    "Truncated": false
                },
                "AutomationType": "Local",
                "Mode": "Auto",
                "ExecutionStartTime": 1564600648.159,
                "CurrentAction": "aws:changeInstanceState",
                "ExecutedBy": "arn:aws:sts::123456789012:assumed-role/Administrator/Admin",
                "LogFile": "",
                "Targets": []
            }
        ]
    }
    Windows
    {
        "AutomationExecutionMetadataList": [
            {
                "AutomationExecutionStatus": "InProgress",
                "CurrentStepName": "stopInstances",
                "Outputs": {},
                "DocumentName": "AWS-RestartEC2Instance",
                "AutomationExecutionId": "4105a4fc-f944-11e6-9d32-0123456789ab",
                "DocumentVersion": "1",
                "ResolvedTargets": {
                    "ParameterValues": [],
                    "Truncated": false
                },
                "AutomationType": "Local",
                "Mode": "Auto",
                "ExecutionStartTime": 1564600648.159,
                "CurrentAction": "aws:changeInstanceState",
                "ExecutedBy": "arn:aws:sts::123456789012:assumed-role/Administrator/Admin",
                "LogFile": "",
                "Targets": []
            }
        ]
    }
    PowerShell
    AutomationExecutionId       : 4105a4fc-f944-11e6-9d32-0123456789ab
    AutomationExecutionStatus   : InProgress
    AutomationType              : Local
    CurrentAction               : aws:changeInstanceState
    CurrentStepName             : startInstances
    DocumentName                : AWS-RestartEC2Instance
    DocumentVersion             : 1
    ExecutedBy                  : arn:aws:sts::123456789012:assumed-role/Administrator/Admin
    ExecutionEndTime            : 1/1/0001 12:00:00 AM
    ExecutionStartTime          : 7/31/2019 7:17:28 PM
    FailureMessage              : 
    LogFile                     : 
    MaxConcurrency              : 
    MaxErrors                   : 
    Mode                        : Auto
    Outputs                     : {}
    ParentAutomationExecutionId : 
    ResolvedTargets             : Amazon.SimpleSystemsManagement.Model.ResolvedTargets
    Target                      : 
    TargetMaps                  : {}
    TargetParameterName         : 
    Targets                     : {}