Menghubungkan ke alur kerja Apache Oozie dengan AWS Schema Conversion Tool - AWS Schema Conversion Tool

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

Menghubungkan ke alur kerja Apache Oozie dengan AWS Schema Conversion Tool

Anda dapat menggunakan antarmuka baris AWS SCT perintah (CLI) untuk mengonversi alur kerja Apache Oozie menjadi. AWS Step Functions Setelah memigrasikan beban kerja Apache Hadoop Anda ke AmazonEMR, Anda dapat menggunakan layanan asli untuk mengatur pekerjaan Anda. AWS Cloud Untuk informasi selengkapnya, lihat Menghubungkan ke Apache Hadoop.

AWS SCT mengonversi alur kerja Oozie Anda menjadi AWS Step Functions dan menggunakan AWS Lambda untuk meniru fitur yang tidak mendukung. AWS Step Functions Juga, AWS SCT ubah properti pekerjaan Oozie Anda menjadi. AWS Systems Manager

Untuk mengonversi alur kerja Apache Oozie, pastikan Anda menggunakan AWS SCT versi 1.0.671 atau yang lebih tinggi. Juga, biasakan diri Anda dengan antarmuka baris perintah AWS SCT. Untuk informasi selengkapnya, lihat CLIReferensi untuk AWS Schema Conversion Tool.

Prasyarat untuk menggunakan Apache Oozie sebagai sumber

Prasyarat berikut diperlukan untuk terhubung ke Apache Oozie dengan. AWS SCT CLI

  • Buat bucket Amazon S3 untuk menyimpan definisi mesin status. Anda dapat menggunakan definisi ini untuk mengonfigurasi mesin status Anda. Lihat informasi yang lebih lengkap di Membuat bucket dalam Panduan Pengguna Amazon S3.

  • Buat peran AWS Identity and Access Management (IAM) dengan AmazonS3FullAccess kebijakan. AWS SCT menggunakan IAM peran ini untuk mengakses bucket Amazon S3 Anda.

  • Catat kunci AWS rahasia dan kunci akses AWS rahasia Anda. Untuk informasi selengkapnya tentang kunci AWS akses, lihat Mengelola kunci akses di Panduan IAM Pengguna.

  • Simpan AWS kredensil Anda dan informasi tentang bucket Amazon S3 Anda di profil layanan AWS di pengaturan aplikasi global. Kemudian, AWS SCT gunakan profil AWS layanan ini untuk bekerja dengan AWS sumber daya Anda. Untuk informasi selengkapnya, lihat Mengelola Profil di AWS Schema Conversion Tool.

Untuk bekerja dengan alur kerja Apache Oozie sumber Anda, AWS SCT memerlukan struktur spesifik file sumber Anda. Setiap folder aplikasi Anda harus menyertakan job.properties file. File ini mencakup pasangan nilai kunci dari properti pekerjaan Anda. Selain itu, setiap folder aplikasi Anda harus menyertakan workflow.xml file. File ini menjelaskan node tindakan dan node alur kontrol alur kerja Anda.

Menghubungkan ke Apache Oozie sebagai sumber

Gunakan prosedur berikut untuk terhubung ke file sumber Apache Oozie Anda.

Untuk terhubung ke Apache Oozie di AWS SCT CLI
  1. Buat AWS SCT CLI skrip baru atau edit template skenario yang ada. Misalnya, Anda dapat mengunduh dan mengedit OozieConversionTemplate.scts template. Untuk informasi selengkapnya, lihat Mendapatkan CLI skenario.

  2. Konfigurasikan pengaturan AWS SCT aplikasi.

    Contoh kode berikut menyimpan pengaturan aplikasi dan memungkinkan untuk menyimpan kata sandi dalam proyek Anda. Anda dapat menggunakan pengaturan yang disimpan ini di proyek lain.

    SetGlobalSettings -save: 'true' -settings: '{ "store_password": "true" }' /
  3. Buat AWS SCT proyek baru.

    Contoh kode berikut membuat oozie proyek dalam c:\sct folder.

    CreateProject -name: 'oozie' -directory: 'c:\sct' /
  4. Tambahkan folder dengan file Apache Oozie sumber Anda ke proyek menggunakan perintah. AddSource Pastikan Anda menggunakan APACHE_OOZIE nilai untuk vendor parameter. Juga, berikan nilai untuk parameter yang diperlukan berikut: name danmappingsFolder.

    Contoh kode berikut menambahkan Apache Oozie sebagai sumber dalam proyek Anda. AWS SCT Contoh ini membuat objek sumber dengan namaOOZIE. Gunakan nama objek ini untuk menambahkan aturan pemetaan. Setelah Anda menjalankan contoh kode ini, AWS SCT gunakan c:\oozie folder untuk memuat file sumber Anda dalam proyek.

    AddSource -name: 'OOZIE' -vendor: 'APACHE_OOZIE' -mappingsFolder: 'c:\oozie' /

    Anda dapat menggunakan contoh ini dan contoh berikut di Windows.

  5. Connect ke file Apache Oozie sumber Anda menggunakan perintah. ConnectSource Gunakan nama objek sumber yang Anda tetapkan pada langkah sebelumnya.

    ConnectSource -name: 'OOZIE' -mappingsFolder: 'c:\oozie' /
  6. Simpan CLI skrip Anda. Selanjutnya, tambahkan informasi koneksi untuk AWS Step Functions layanan Anda.

Izin untuk menggunakan AWS Lambda fungsi dalam paket ekstensi

Untuk fungsi sumber yang AWS Step Functions tidak mendukung, AWS SCT buat paket ekstensi. Paket ekstensi ini mencakup AWS Lambda fungsi, yang meniru fungsi sumber Anda.

Untuk menggunakan paket ekstensi ini, buat peran AWS Identity and Access Management (IAM) dengan izin berikut.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "lambda", "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": [ "arn:aws:lambda:*:498160209112:function:LoadParameterInitialState:*", "arn:aws:lambda:*:498160209112:function:EvaluateJSPELExpressions:*" ] }, { "Sid": "emr", "Effect": "Allow", "Action": [ "elasticmapreduce:DescribeStep", "elasticmapreduce:AddJobFlowSteps" ], "Resource": [ "arn:aws:elasticmapreduce:*:498160209112:cluster/*" ] }, { "Sid": "s3", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::*/*" ] } ] }

Untuk menerapkan paket ekstensi, AWS SCT memerlukan IAM peran dengan izin berikut.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GetRole", "iam:ListRolePolicies", "iam:CreateRole", "iam:TagRole", "iam:PutRolePolicy", "iam:DeleteRolePolicy", "iam:DeleteRole", "iam:PassRole" ], "Resource": [ "arn:aws:iam::ACCOUNT_NUMBER:role/sct/*" ] }, { "Effect": "Allow", "Action": [ "iam:GetRole", "iam:ListRolePolicies" ], "Resource": [ "arn:aws:iam::ACCOUNT_NUMBER:role/lambda_LoadParameterInitialStateRole", "arn:aws:iam::ACCOUNT_NUMBER:role/lambda_EvaluateJSPELExpressionsRole", "arn:aws:iam::ACCOUNT_NUMBER:role/stepFunctions_MigratedOozieWorkflowRole" ] }, { "Effect": "Allow", "Action": [ "lambda:GetFunction", "lambda:CreateFunction", "lambda:UpdateFunctionCode", "lambda:DeleteFunction" ], "Resource": [ "arn:aws:lambda:*:ACCOUNT_NUMBER:function:LoadParameterInitialState", "arn:aws:lambda:*:ACCOUNT_NUMBER:function:EvaluateJSPELExpressions" ] } ] }

Menghubungkan AWS Step Functions sebagai target

Gunakan prosedur berikut untuk terhubung AWS Step Functions sebagai target.

Untuk terhubung ke AWS Step Functions dalam AWS SCT CLI
  1. Buka CLI skrip Anda yang mencakup informasi koneksi untuk file sumber Apache Oozie Anda.

  2. Tambahkan informasi tentang target migrasi Anda dalam AWS SCT proyek menggunakan AddTarget perintah. Pastikan Anda menggunakan STEP_FUNCTIONS nilai untuk vendor parameter. Juga, berikan nilai untuk parameter yang diperlukan berikut: name danprofile.

    Contoh kode berikut ditambahkan AWS Step Functions sebagai sumber dalam AWS SCT proyek Anda. Contoh ini menciptakan objek target dengan namaAWS_STEP_FUNCTIONS. Gunakan nama objek ini saat Anda membuat aturan pemetaan. Juga, contoh ini menggunakan profil AWS SCT layanan yang Anda buat di langkah prasyarat. Pastikan Anda mengganti profile_name dengan nama profil Anda.

    AddTarget -name: 'AWS_STEP_FUNCTIONS' -vendor: 'STEP_FUNCTIONS' -profile: 'profile_name' /

    Jika Anda tidak menggunakan profil AWS layanan, pastikan Anda memberikan nilai untuk parameter yang diperlukan berikut:accessKey,secretKey,awsRegion, dans3Path. Gunakan parameter ini untuk menentukan kunci akses AWS rahasia, kunci AWS rahasia Wilayah AWS, dan jalur ke bucket Amazon S3 Anda.

  3. Connect untuk AWS Step Functions menggunakan ConnectTarget perintah. Gunakan nama objek target Anda yang Anda tentukan pada langkah sebelumnya.

    Contoh kode berikut terhubung ke objek AWS_STEP_FUNCTIONS target menggunakan profil AWS layanan Anda. Pastikan Anda mengganti profile_name dengan nama profil Anda.

    ConnectTarget -name: 'AWS_STEP_FUNCTIONS' -profile: 'profile_name' /
  4. Simpan CLI skrip Anda. Selanjutnya, tambahkan aturan pemetaan dan perintah migrasi. Untuk informasi selengkapnya, lihat Mengonversi alur kerja Oozie;.