Buat Server Otomatis Koki - AWS OpsWorks

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

Buat Server Otomatis Koki

penting

AWS OpsWorks untuk Chef Automate mencapai akhir masa pakai pada 5 Mei 2024 dan telah dinonaktifkan untuk pelanggan baru dan lama. Kami menyarankan agar pelanggan yang sudah ada bermigrasi ke Chef SaaS atau solusi alternatif. Jika Anda memiliki pertanyaan, Anda dapat menghubungi AWS Dukungan Tim di AWS RE:Post atau melalui AWS Dukungan Premium.

Anda dapat membuat server Chef dengan menggunakan AWS OpsWorks for Chef Automate konsol, atau file AWS CLI.

Buat server Chef Automate di AWS Management Console

  1. Masuk ke AWS Management Console dan buka AWS OpsWorks konsol di https://console.aws.amazon.com/opsworks/.

  2. Di AWS OpsWorks halaman beranda, pilih Buka OpsWorks untuk Chef Automate.

    AWS OpsWorks layanan rumah
  3. Pada AWS OpsWorks for Chef Automate halaman beranda, pilih Create Chef Automate server.

    Chef Mengotomatiskan server di rumah
  4. Pada halaman Set name, region, dan type, tentukan nama untuk server Anda. Nama server chef dapat maksimal 40 karakter, dan hanya dapat berisi karakter alfanumerik dan tanda hubung. Pilih wilayah yang didukung, lalu pilih jenis instance yang mendukung jumlah node yang ingin Anda kelola. Anda dapat mengubah jenis instance setelah server Anda dibuat, jika diperlukan. Untuk panduan ini, kami membuat tipe instance m5.large di Wilayah AS Barat (Oregon). Pilih Selanjutnya.

    Tetapkan nama, wilayah, dan jenis halaman
  5. Pada halaman Configure server, tinggalkan pilihan default di daftar drop-down kunci SSH, kecuali jika Anda ingin menentukan nama key pair.

    Pilih halaman kunci SSH
  6. Untuk Tentukan titik akhir server, biarkan default, Gunakan titik akhir yang dihasilkan secara otomatis lalu pilih Berikutnya, kecuali jika Anda ingin server Anda berada di domain kustom Anda sendiri. Untuk mengonfigurasi domain khusus, lanjutkan ke langkah berikutnya.

    Tentukan bagian endpoint server
  7. Untuk menggunakan domain kustom, untuk Menentukan titik akhir server, pilih Gunakan domain kustom dari daftar drop-down.

    Gunakan domain khusus
    1. Untuk nama domain yang sepenuhnya memenuhi syarat (FQDN), tentukan FQDN. Anda harus memiliki nama domain yang ingin Anda gunakan.

    2. Untuk sertifikat SSL, tempel di seluruh sertifikat berformat PEM, dimulai dengan dan diakhiri dengan–––--BEGIN CERTIFICATE-----. –––--END CERTIFICATE----- Subjek sertifikat SSL harus sesuai dengan FQDN yang Anda masukkan pada langkah sebelumnya.

    3. Untuk kunci pribadi SSL, tempel di seluruh kunci pribadi RSA, dimulai dengan –––--BEGIN RSA PRIVATE KEY----- dan diakhiri dengan. –––--END RSA PRIVATE KEY----- Kunci pribadi SSL harus sesuai dengan kunci publik dalam sertifikat SSL yang Anda masukkan pada langkah sebelumnya. Pilih Selanjutnya.

  8. Pada halaman Konfigurasi Pengaturan Lanjut, di area Jaringan dan Keamanan, pilih VPC, subnet, dan satu atau beberapa grup keamanan. Berikut ini adalah persyaratan untuk VPC Anda:

    • VPC harus memiliki setidaknya satu subnet publik.

    • Resolusi DNS harus diaktifkan.

    • Tetapkan IP publik secara otomatis harus diaktifkan pada subnet publik.

    AWS OpsWorks dapat menghasilkan grup keamanan, peran layanan, dan profil instance untuk Anda, jika Anda belum memiliki yang ingin Anda gunakan. Server Anda dapat menjadi anggota dari beberapa grup keamanan. Anda tidak dapat mengubah pengaturan jaringan dan keamanan untuk server Chef setelah Anda meninggalkan halaman ini.

    Jaringan dan keamanan
  9. Di bagian Pemeliharaan sistem, atur hari dan jam yang Anda inginkan untuk memulai pemeliharaan sistem. Karena Anda harus mengharapkan server offline selama pemeliharaan sistem, pilih waktu permintaan server yang rendah dalam jam kantor biasa. Node yang terhubung memasuki pending-server status sampai pemeliharaan selesai.

    Jendela pemeliharaan diperlukan. Anda dapat mengubah hari mulai dan waktu kemudian dengan menggunakan AWS Management Console, AWS CLI, atau API.

    Pemeliharaan sistem
  10. Konfigurasikan cadangan. Secara default, backup otomatis diaktifkan. Tetapkan frekuensi dan jam yang diinginkan agar pencadangan otomatis dimulai, dan atur jumlah generasi cadangan yang akan disimpan di Amazon Simple Storage Service. Maksimal 30 cadangan disimpan; ketika maksimum tercapai, AWS OpsWorks for Chef Automate hapus cadangan tertua untuk memberi ruang bagi yang baru.

    Pencadangan otomatis
  11. (Opsional) Di Tag, tambahkan tag ke server dan sumber daya terkait, seperti instans EC2, alamat IP Elastis, grup keamanan, bucket S3, dan cadangan. Untuk informasi selengkapnya tentang menandai AWS OpsWorks for Chef Automate server, lihatBekerja dengan Tag pada AWS OpsWorks for Chef Automate Sumber Daya.

  12. Setelah selesai mengonfigurasi pengaturan lanjutan, pilih Berikutnya.

  13. Pada halaman Tinjau, tinjau pilihan Anda. Ketika Anda siap untuk membuat server, pilih Launch.

    Sementara Anda menunggu AWS OpsWorks untuk membuat server Chef Anda, lanjutkan ke Konfigurasikan Server Chef Menggunakan Starter Kit dan unduh Starter Kit dan kredenal dasbor Chef Automate. Jangan menunggu sampai server Anda online untuk mengunduh item ini.

    Ketika pembuatan server selesai, server Chef Anda tersedia di AWS OpsWorks for Chef Automate halaman beranda, dengan status online. Setelah server online, dasbor Chef Automate tersedia di domain server, di URL dalam format berikut:https://your_server_name-random.region.opsworks-cm.io.

Buat server Chef Automate dengan menggunakan AWS CLI

Membuat AWS OpsWorks for Chef Automate server dengan menjalankan AWS CLI perintah berbeda dari membuat server di konsol. Di konsol, AWS OpsWorks buat peran layanan dan grup keamanan untuk Anda, jika Anda tidak menentukan yang sudah ada yang ingin Anda gunakan. Dalam AWS CLI, AWS OpsWorks dapat membuat grup keamanan untuk Anda jika Anda tidak menentukan satu, tetapi tidak secara otomatis membuat peran layanan; Anda harus memberikan peran layanan ARN sebagai bagian dari perintah Andacreate-server. Di konsol, saat AWS OpsWorks membuat server Chef Automate Anda, Anda mengunduh starter kit Chef Automate dan kredenal masuk untuk dasbor Chef Automate. Karena Anda tidak dapat melakukan ini ketika Anda membuat AWS OpsWorks for Chef Automate server dengan menggunakan AWS CLI, Anda menggunakan utilitas pemrosesan JSON untuk mendapatkan kredensi masuk dan starter kit dari hasil create-server perintah setelah server baru AWS OpsWorks for Chef Automate Anda online. Atau, Anda dapat menghasilkan satu set kredenal masuk baru dan starter kit baru di konsol setelah AWS OpsWorks for Chef Automate server baru Anda online.

Jika komputer lokal Anda belum menjalankan AWS CLI, unduh dan instal AWS CLI dengan mengikuti petunjuk penginstalan di Panduan Pengguna Antarmuka Baris Perintah AWS. Bagian ini tidak menjelaskan semua parameter yang dapat Anda gunakan dengan create-server perintah. Untuk informasi selengkapnya tentang create-server parameter, lihat create-serverdi AWS CLI Referensi.

  1. Pastikan untuk melengkapi prasyarat, terutamaSiapkan VPC, atau pastikan Anda memiliki VPC yang ingin Anda gunakan. Untuk membuat server Chef Automate Anda, Anda memerlukan subnet ID.

  2. Secara opsional, buat kunci penting Chef dengan menggunakan OpenSSL, dan simpan kunci ke file yang aman dan nyaman di komputer lokal Anda. Kunci penting secara otomatis dihasilkan sebagai bagian dari proses pembuatan server jika Anda tidak memberikannya dalam perintah. create-server Jika Anda ingin melewati langkah ini, Anda bisa mendapatkan kunci penting Chef Automate dari hasil perintah. create-server Jika Anda memilih untuk menghasilkan kunci penting menggunakan perintah berikut, pastikan untuk menyertakan -pubout parameter, karena nilai kunci penting Chef Automate adalah separuh publik dari key pair RSA. Untuk informasi lebih lanjut, lihat Langkah 6.

    umask 077 openssl genrsa -out "pivotal" 2048 openssl rsa -in "pivotal" -pubout
  3. Buat peran layanan dan profil instance. AWS OpsWorks menyediakan AWS CloudFormation template yang dapat Anda gunakan untuk membuat keduanya. Jalankan AWS CLI perintah berikut untuk membuat AWS CloudFormation tumpukan yang membuat peran layanan dan profil instance untuk Anda.

    aws cloudformation create-stack --stack-name OpsWorksCMRoles --template-url https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml --capabilities CAPABILITY_NAMED_IAM
  4. Setelah AWS CloudFormation selesai membuat tumpukan, temukan dan salin ARN peran layanan di akun Anda.

    aws iam list-roles --path-prefix "/service-role/" --no-paginate

    Dalam hasil list-roles perintah, cari entri ARN peran layanan yang menyerupai berikut ini. Catat ARN peran layanan. Anda memerlukan nilai-nilai ini untuk membuat server Chef Automate Anda.

    { "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" } } ] }, "RoleId": "AROZZZZZZZZZZQG6R22HC", "CreateDate": "2018-01-05T20:42:20Z", "RoleName": "aws-opsworks-cm-ec2-role", "Path": "/service-role/", "Arn": "arn:aws:iam::000000000000:role/service-role/aws-opsworks-cm-ec2-role" }, { "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": "opsworks-cm.amazonaws.com" } } ] }, "RoleId": "AROZZZZZZZZZZZZZZZ6QE", "CreateDate": "2018-01-05T20:42:20Z", "RoleName": "aws-opsworks-cm-service-role", "Path": "/service-role/", "Arn": "arn:aws:iam::000000000000:role/service-role/aws-opsworks-cm-service-role" }
  5. Temukan dan salin ARN profil instans di akun Anda.

    aws iam list-instance-profiles --no-paginate

    Dalam hasil list-instance-profiles perintah, cari contoh entri ARN profil yang menyerupai berikut ini. Catat ARN profil instance. Anda memerlukan nilai-nilai ini untuk membuat server Chef Automate Anda.

    { "Path": "/", "InstanceProfileName": "aws-opsworks-cm-ec2-role", "InstanceProfileId": "EXAMPLEDC6UR3LTUW7VHK", "Arn": "arn:aws:iam::123456789012:instance-profile/aws-opsworks-cm-ec2-role", "CreateDate": "2017-01-05T20:42:20Z", "Roles": [ { "Path": "/service-role/", "RoleName": "aws-opsworks-cm-ec2-role", "RoleId": "EXAMPLEE4STNUQG6R22HC", "Arn": "arn:aws:iam::123456789012:role/service-role/aws-opsworks-cm-ec2-role", "CreateDate": "2017-01-05T20:42:20Z", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } } ] },
  6. Buat AWS OpsWorks for Chef Automate server dengan menjalankan create-server perintah.

    • --engineNilai adalahChefAutomate, --engine-model adalahSingle, dan --engine-version adalah12.

    • Nama server harus unik di dalam AWS akun Anda, di setiap wilayah. Nama server harus dimulai dengan huruf; kemudian huruf, angka, atau tanda hubung (-) diperbolehkan, hingga maksimum 40 karakter.

    • Gunakan ARN profil instance dan ARN peran layanan yang Anda salin di Langkah 4 dan 5.

    • Jenis contoh yang valid adalahm5.large,r5.xlarge, ataur5.2xlarge. Untuk informasi selengkapnya tentang spesifikasi jenis instans ini, lihat Jenis Instans di Panduan Pengguna Amazon EC2.

    • --engine-attributesParameternya opsional; jika Anda tidak menentukan satu atau kedua nilai, proses pembuatan server menghasilkan nilai untuk Anda. Jika Anda menambahkan--engine-attributes, tentukan CHEF_AUTOMATE_PIVOTAL_KEY nilai yang Anda hasilkan di Langkah 2, aCHEF_AUTOMATE_ADMIN_PASSWORD, atau keduanya.

      Jika Anda tidak menetapkan nilai untukCHEF_AUTOMATE_ADMIN_PASSWORD, kata sandi dibuat dan dikembalikan sebagai bagian dari create-server respons. Anda juga dapat mengunduh starter kit lagi di konsol, yang meregenerasi kata sandi ini. Panjang kata sandi minimal delapan karakter, dan maksimum 32. Kata sandi dapat berisi huruf, angka, dan karakter khusus (!/@#$%^+=_). Sandi harus berisi setidaknya satu huruf kecil, satu huruf besar, satu angka, dan satu karakter khusus.

    • Sebuah key pair SSH bersifat opsional, tetapi dapat membantu Anda terhubung ke server Chef Automate Anda jika Anda perlu mengatur ulang kata sandi administrator dasbor Chef Automate. Untuk informasi selengkapnya tentang membuat key pair SSH, lihat Pasangan Kunci Amazon EC2 di Panduan Pengguna Amazon EC2.

    • Untuk menggunakan domain kustom, tambahkan parameter berikut ke perintah Anda. Jika tidak, proses pembuatan server Chef Automate secara otomatis menghasilkan titik akhir untuk Anda. Ketiga parameter tersebut diperlukan untuk mengonfigurasi domain khusus. Untuk informasi tentang persyaratan tambahan untuk menggunakan parameter ini, lihat CreateServerdi Referensi AWS OpsWorks CM API.

      • --custom-domain- Sebuah endpoint publik opsional dari server, sepertihttps://aws.my-company.com.

      • --custom-certificate- Sertifikat HTTPS berformat PEM. Nilai dapat menjadi sertifikat tunggal yang ditandatangani sendiri, atau rantai sertifikat.

      • --custom-private-key- Kunci pribadi dalam format PEM untuk menghubungkan ke server dengan menggunakan HTTPS. Kunci privat tidak boleh dienkripsi; tidak dapat dilindungi oleh kata sandi atau frasa sandi.

    • Pemeliharaan sistem mingguan diperlukan. Nilai yang valid harus ditentukan dalam format berikut:DDD:HH:MM. Waktu yang ditentukan adalah dalam Waktu Universal Terkoordinasi (UTC). Jika Anda tidak menentukan nilai untuk--preferred-maintenance-window, nilai default adalah acak, periode satu jam pada hari Selasa, Rabu, atau Jumat.

    • Nilai yang valid untuk --preferred-backup-window harus ditentukan dalam salah satu format berikut: HH:MM untuk backup harian, atau DDD:HH:MM untuk backup mingguan. Waktu yang ditentukan adalah dalam UTC. Nilai default adalah waktu mulai acak harian. Untuk memilih keluar dari backup otomatis, tambahkan parameter --disable-automated-backup sebagai gantinya.

    • Untuk--security-group-ids, masukkan satu atau beberapa ID grup keamanan, dipisahkan oleh spasi.

    • Untuk--subnet-ids, masukkan subnet ID.

    aws opsworks-cm create-server --engine "ChefAutomate" --engine-model "Single" --engine-version "12" --server-name "server_name" --instance-profile-arn "instance_profile_ARN" --instance-type "instance_type" --engine-attributes '{"CHEF_AUTOMATE_PIVOTAL_KEY":"pivotal_key","CHEF_AUTOMATE_ADMIN_PASSWORD":"password"}' --key-pair "key_pair_name" --preferred-maintenance-window "ddd:hh:mm" --preferred-backup-window "ddd:hh:mm" --security-group-ids security_group_id1 security_group_id2 --service-role-arn "service_role_ARN" --subnet-ids subnet_ID

    Berikut adalah contohnya.

    aws opsworks-cm create-server --engine "ChefAutomate" --engine-model "Single" --engine-version "12" --server-name "automate-06" --instance-profile-arn "arn:aws:iam::12345678912:instance-profile/aws-opsworks-cm-ec2-role" --instance-type "m5.large" --engine-attributes '{"CHEF_AUTOMATE_PIVOTAL_KEY":"MZZE...Wobg","CHEF_AUTOMATE_ADMIN_PASSWORD":"zZZzDj2DLYXSZFRv1d"}' --key-pair "amazon-test" --preferred-maintenance-window "Mon:08:00" --preferred-backup-window "Sun:02:00" --security-group-ids sg-b00000001 sg-b0000008 --service-role-arn "arn:aws:iam::12345678912:role/service-role/aws-opsworks-cm-service-role" --subnet-ids subnet-300aaa00

    Contoh berikut membuat server Chef Automate yang menggunakan domain kustom.

    aws opsworks-cm create-server --engine "ChefAutomate" --engine-model "Single" --engine-version "12" \ --server-name "my-custom-domain-server" \ --instance-profile-arn "arn:aws:iam::12345678912:instance-profile/aws-opsworks-cm-ec2-role" \ --instance-type "m5.large" \ --engine-attributes '{"CHEF_AUTOMATE_PIVOTAL_KEY":"MZZE...Wobg","CHEF_AUTOMATE_ADMIN_PASSWORD":"zZZzDj2DLYXSZFRv1d"}' \ --custom-domain "my-chef-automate-server.my-corp.com" \ --custom-certificate "-----BEGIN CERTIFICATE----- EXAMPLEqEXAMPLE== -----END CERTIFICATE-----" \ --custom-private-key "-----BEGIN RSA PRIVATE KEY----- EXAMPLEqEXAMPLE= -----END RSA PRIVATE KEY-----" \ --key-pair "amazon-test" \ --preferred-maintenance-window "Mon:08:00" \ --preferred-backup-window "Sun:02:00" \ --security-group-ids sg-b00000001 sg-b0000008 \ --service-role-arn "arn:aws:iam::12345678912:role/service-role/aws-opsworks-cm-service-role" \ --subnet-ids subnet-300aaa00

    Contoh berikut membuat server Chef Automate yang menambahkan dua tag: Stage: Production danDepartment: Marketing. Untuk informasi selengkapnya tentang menambahkan dan mengelola tag di AWS OpsWorks for Chef Automate server, lihat Bekerja dengan Tag pada AWS OpsWorks for Chef Automate Sumber Daya di panduan ini.

    aws opsworks-cm create-server --engine "ChefAutomate" --engine-model "Single" --engine-version "12" \ --server-name "my-test-chef-server" \ --instance-profile-arn "arn:aws:iam::12345678912:instance-profile/aws-opsworks-cm-ec2-role" \ --instance-type "m5.large" \ --engine-attributes '{"CHEF_AUTOMATE_PIVOTAL_KEY":"MZZE...Wobg","CHEF_AUTOMATE_ADMIN_PASSWORD":"zZZzDj2DLYXSZFRv1d"}' \ --key-pair "amazon-test" \ --preferred-maintenance-window "Mon:08:00" \ --preferred-backup-window "Sun:02:00" \ --security-group-ids sg-b00000001 sg-b0000008 \ --service-role-arn "arn:aws:iam::12345678912:role/service-role/aws-opsworks-cm-service-role" \ --subnet-ids subnet-300aaa00 \ --tags [{\"Key\":\"Stage\",\"Value\":\"Production\"},{\"Key\":\"Department\",\"Value\":\"Marketing\"}]
  7. AWS OpsWorks for Chef Automate membutuhkan waktu sekitar 15 menit untuk membuat server baru. Jangan mengabaikan output dari create-server perintah atau menutup sesi shell Anda, karena output dapat berisi informasi penting yang tidak ditampilkan lagi. Untuk mendapatkan kata sandi dan starter kit dari create-server hasil, lanjutkan ke langkah berikutnya.

    Jika Anda menggunakan domain khusus dengan server, dalam output create-server perintah, salin nilai Endpoint atribut. Berikut adalah contohnya.

    "Endpoint": "automate-07-exampleexample.opsworks-cm.us-east-1.amazonaws.com"
  8. Jika Anda memilih untuk AWS OpsWorks for Chef Automate membuat kunci dan kata sandi untuk Anda, Anda dapat mengekstraknya dalam format yang dapat digunakan dari create-server hasil dengan menggunakan prosesor JSON seperti jq. Setelah Anda menginstal jq, Anda dapat menjalankan perintah berikut untuk mengekstrak kunci penting, kata sandi administrator dasbor Chef Automate, dan starter kit. Jika Anda tidak memberikan kunci dan kata sandi penting Anda sendiri di Langkah 4, pastikan untuk menyimpan kunci penting dan kata sandi administrator yang diekstraksi di lokasi yang nyaman namun aman.

    #Get the Chef password: cat resp.json | jq -r '.Server.EngineAttributes[] | select(.Name == "CHEF_AUTOMATE_ADMIN_PASSWORD") | .Value' #Get the Chef Pivotal Key: cat resp.json | jq -r '.Server.EngineAttributes[] | select(.Name == "CHEF_AUTOMATE_PIVOTAL_KEY") | .Value' #Get the Chef Starter Kit: cat resp.json | jq -r '.Server.EngineAttributes[] | select(.Name == "CHEF_STARTER_KIT") | .Value' | base64 -D > starterkit.zip
  9. Secara opsional, jika Anda tidak mengekstrak starter kit dari hasil create-server perintah, Anda dapat mengunduh starter kit baru dari halaman Properti server di AWS OpsWorks for Chef Automate konsol. Mengunduh starter kit baru akan mengatur ulang kata sandi administrator dasbor Chef Automate.

  10. Jika Anda tidak menggunakan domain khusus, lanjutkan ke langkah berikutnya. Jika Anda menggunakan domain kustom dengan server, buat entri CNAME di alat manajemen DNS perusahaan Anda untuk mengarahkan domain kustom Anda ke AWS OpsWorks for Chef Automate titik akhir yang Anda salin di langkah 7. Anda tidak dapat menjangkau atau masuk ke server dengan domain khusus sampai Anda menyelesaikan langkah ini.

  11. Ketika proses pembuatan server selesai, lanjutkan keKonfigurasikan Server Chef Menggunakan Starter Kit.