Tutorial: Mengirim pesan ke antrian Amazon SQS dari Amazon Virtual Private Cloud - Amazon Simple Queue Service

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

Tutorial: Mengirim pesan ke antrian Amazon SQS dari Amazon Virtual Private Cloud

Tutorial ini menunjukkan cara mengirim pesan ke antrian Amazon SQS melalui jaringan pribadi yang aman. Jaringan meliputi:

  • VPC yang berisi instans Amazon EC2 .

  • Titik akhir VPC antarmuka, yang memungkinkan EC2 instans Amazon terhubung ke Amazon SQS tanpa menggunakan internet publik.

Bahkan dalam jaringan yang sepenuhnya pribadi, Anda dapat terhubung ke EC2 instans Amazon dan mengirim pesan ke antrian Amazon SQS. Untuk informasi selengkapnya, lihat Titik akhir Amazon Virtual Private Cloud untuk Amazon SQS.

penting
  • Anda dapat menggunakan Amazon Virtual Private Cloud hanya dengan titik akhir HTTPS Amazon SQS.

  • Saat mengonfigurasi Amazon SQS untuk mengirim pesan dari Amazon VPC, Anda harus mengaktifkan DNS pribadi dan menentukan titik akhir dalam format sqs.us-east-2.amazonaws.com atau untuk titik akhir tumpukan ganda. sqs.us-east-2.api.aws

  • Amazon SQS juga mendukung endpoint FIPS melalui PrivateLink penggunaan layanan endpoint. com.amazonaws.region.sqs-fips Anda dapat terhubung ke titik akhir FIPS dalam format. sqs-fips.region.amazonaws.com

  • Saat menggunakan titik akhir dual-stack di Amazon Virtual Private Cloud, permintaan akan dikirim menggunakan dan. IPv4 IPv6

  • DNS pribadi tidak mendukung titik akhir lama seperti atau. queue.amazonaws.com us-east-2.queue.amazonaws.com

Langkah 1: Buat EC2 key pair Amazon

Sebuah key pair memungkinkan Anda terhubung ke EC2 instans Amazon. Ini terdiri dari kunci publik yang mengenkripsi informasi login Anda dan kunci pribadi yang mendekripsi itu.

  1. Masuk ke EC2konsol Amazon.

  2. Pada menu navigasi, di bawah Jaringan & Keamanan, pilih Pasangan Kunci.

  3. Pilih Buat pasangan kunci.

  4. Dalam Buat Pasangan Kunci kotak dialog, untuk Nama pasangan kunci, masukkanSQS-VPCE-Tutorial-Key-Pair, lalu pilih Buat.

  5. Browser Anda mengunduh file kunci pribadi SQS-VPCE-Tutorial-Key-Pair.pem secara otomatis.

    penting

    Simpan file ini di tempat yang aman. EC2 tidak menghasilkan .pem file untuk key pair yang sama untuk kedua kalinya.

  6. Untuk mengizinkan klien SSH terhubung ke EC2 instans Anda, atur izin untuk file kunci pribadi Anda sehingga hanya pengguna Anda yang dapat memiliki izin membaca untuk itu, misalnya:

    chmod 400 SQS-VPCE-Tutorial-Key-Pair.pem

Langkah 2: Buat AWS sumber daya

Untuk menyiapkan infrastruktur yang diperlukan, Anda harus menggunakan AWS CloudFormation template, yang merupakan cetak biru untuk membuat tumpukan yang terdiri dari sumber daya AWS , seperti instans Amazon EC2 dan antrian Amazon SQS.

Tumpukan untuk tutorial ini mencakup sumber daya berikut:

  • VPC dan sumber daya jaringan terkait, termasuk subnet, grup keamanan, gateway internet, dan tabel rute

  • EC2 Instans Amazon diluncurkan ke subnet VPC

  • Antrean Amazon SQS

  1. Unduh AWS CloudFormation template bernama SQS-VPCE-Tutorial-CloudFormation.yamldariGitHub.

  2. Masuk ke konsol AWS CloudFormation.

  3. Pilih Buat Tumpukan.

  4. Pada halaman Pilih Template, pilih Unggah templat ke Amazon S3, pilih SQS-VPCE-SQS-Tutorial-CloudFormation.yaml file, lalu pilih Berikutnya.

  5. Di halaman Tentukan Detail, lakukan hal berikut:

    1. Untuk Nama tumpukan, masukkan SQS-VPCE-Tutorial-Stack.

    2. Untuk KeyName, pilih SQS-VPCE-Tutorial-Key-Pair.

    3. Pilih Berikutnya.

  6. Pada halaman Opsi, pilih Selanjutnya.

  7. Pada halaman Tinjauan, di bagian Kemampuan, pilih Saya mengakui yang AWS CloudFormation mungkin membuat sumber daya IAM dengan nama khusus. , dan kemudian pilih Buat.

AWS CloudFormation mulai membuat tumpukan dan menampilkan status CREATE_IN_PROGRESS. Saat proses selesai, AWS CloudFormation menampilkan status CREATE_COMPLETE.

Langkah 3: Konfirmasikan bahwa EC2 instans Anda tidak dapat diakses publik

AWS CloudFormation Template Anda meluncurkan EC2 instance bernama SQS-VPCE-Tutorial-EC2-Instance ke dalam VPC Anda. EC2 Instance ini tidak mengizinkan lalu lintas keluar dan tidak dapat mengirim pesan ke Amazon SQS. Untuk memverifikasi ini, Anda harus terhubung ke instance, mencoba menyambung ke titik akhir publik, dan kemudian mencoba mengirim pesan kepada Amazon SQS.

  1. Masuk ke EC2konsol Amazon.

  2. Pada menu navigasi, di bawah Instans, pilih Instans.

  3. Pilih SQS-VPCE -. Tutorial-EC2Instance

  4. Salin nama host di bawah DNS Publik, misalnya, ec2-203-0-113-0.us-west-2.compute.amazonaws.com.

  5. Dari direktori yang berisi key pair yang Anda buat sebelumnya, sambungkan ke instance menggunakan perintah berikut, misalnya:

    ssh -i SQS-VPCE-Tutorial-Key-Pair.pem ec2-user@ec2-203-0-113-0.us-east-2.compute.amazonaws.com
  6. Cobalah untuk terhubung ke titik akhir publik apa pun, misalnya:

    ping amazon.com

    Upaya koneksi gagal, seperti yang diharapkan.

  7. Masuk ke konsol Amazon SQS.

  8. Dari daftar antrian, pilih antrian yang dibuat oleh AWS CloudFormation template Anda, misalnya, VPCE-SQS-Tutorial-Stack - -1 IJK. CFQueue ABCDEFGH2

  9. Pada tabel Detail, salin URL, misalnya, https://sqs.us-east-2.amazonaws.com/123456789012/.

  10. Dari EC2 instance Anda, coba publikasikan pesan ke antrian menggunakan perintah berikut, misalnya:

    aws sqs send-message --region us-east-2 --endpoint-url https://sqs.us-east-2.amazonaws.com/ --queue-url https://sqs.us-east-2.amazonaws.com/123456789012/ --message-body "Hello from Amazon SQS."

    Upaya pengiriman gagal, seperti yang diharapkan.

    penting

    Kemudian, saat Anda membuat titik akhir VPC untuk Amazon SQS, upaya pengiriman Anda akan berhasil.

Langkah 4: Buat titik akhir Amazon VPC untuk Amazon SQS

Untuk menghubungkan VPC Anda ke Amazon SQS, Anda harus menentukan titik akhir VPC antarmuka. Setelah menambahkan titik akhir, Anda dapat menggunakan Amazon SQS API dari instance EC2 di VPC Anda. Ini memungkinkan Anda mengirim pesan ke antrian dalam AWS jaringan tanpa melintasi internet publik.

catatan

EC2 Instans masih belum memiliki akses ke AWS layanan dan titik akhir lain di internet.

  1. Masuk ke Amazon konsol Amazon VPC.

  2. Pada menu navigasi, pilih Endpoints.

  3. Pilih Buat Titik Akhir.

  4. Pada halaman Buat Titik Akhir, untuk Nama Layanan, pilih nama layanan untuk Amazon SQS.

    catatan

    Nama layanan bervariasi berdasarkan AWS Wilayah saat ini. Misalnya, jika Anda berada di AS Timur (Ohio), nama layanannya adalah com.amazonaws. us-east-2.sqs.

  5. Untuk VPC, pilih SQS-VPCE-Tutorial-VPC.

  6. Untuk Subnet, pilih subnet yang Subnetnya ID berisi SQS-VPCE-Tutorial-Subnet.

  7. Untuk grup Keamanan, pilih Pilih grup keamanan, lalu pilih grup keamanan yang Nama grupnya berisi SQS VPCE Tutorial Security Group.

  8. Pilih Buat titik akhir.

    Titik akhir VPC antarmuka dibuat dan ID-nya ditampilkan, misalnya, vpce-0ab1cdef2ghi3j456k.

  9. Pilih Tutup.

    Konsol Amazon VPC membuka halaman Titik akhir.

Amazon VPC mulai membuat titik akhir dan menampilkan status yang tertunda. Ketika proses selesai, Amazon VPC menampilkan status yang tersedia.

Langkah 5: Kirim pesan ke antrian Amazon SQS Anda

Sekarang VPC Anda menyertakan titik akhir untuk Amazon SQS, Anda dapat terhubung ke EC2 instans Anda dan mengirim pesan ke antrian Anda.

  1. Sambungkan kembali ke EC2 instans Anda, misalnya:

    ssh -i SQS-VPCE-Tutorial-Key-Pair.pem ec2-user@ec2-203-0-113-0.us-east-2.compute.amazonaws.com
  2. Cobalah untuk mempublikasikan pesan ke antrian lagi menggunakan perintah berikut, misalnya:

    aws sqs send-message --region us-east-2 --endpoint-url https://sqs.us-east-2.amazonaws.com/ --queue-url https://sqs.us-east-2.amazonaws.com/123456789012/ --message-body "Hello from Amazon SQS."

    Upaya pengiriman berhasil dan MD5 intisari badan pesan dan ID pesan ditampilkan, misalnya:

    { "MD5OfMessageBody": "a1bcd2ef3g45hi678j90klmn12p34qr5", "MessageId": "12345a67-8901-2345-bc67-d890123e45fg" }

Untuk informasi tentang menerima dan menghapus pesan dari antrian yang dibuat oleh AWS CloudFormation template Anda (misalnya, VPCE-SQS-Tutorial-Stack - -1 IJK), lihat. CFQueue ABCDEFGH2 Menerima dan menghapus pesan di Amazon SQS

Untuk informasi tentang menghapus sumber daya Anda, lihat berikut ini: