TECH PLAY

AWS

AWS の技術ブログ

å…š2973ä»¶

このブログは 2024 幎 3 月 13 日に Brad BeaulieuBooz Allen 瀟、Christopher SmithPrincipal Solutions Architect、Dru GroteBooz Allen Hamilton 瀟によっお執筆された内容を日本語化したものです。原文は こちら を参照しおください。 2015 幎の AWS Snowball デバむスの発衚以来、ナヌザヌは Amazon Web ServicesAWSSnow Family を甚いお、オンプレミスず AWS リヌゞョン 間でペタバむトのデヌタを転送するこずに成功しおいたす。ナヌザヌは、AWS Snow Family を甚いおデヌタを移行するだけではありたせん。AWS Snowball Edge Compute Optimized デバむスを䜿甚しお、ネットワヌク接続が拒吊される、䞭断する、断続的になる、制限される環境DDIL = Denied, Disrupted, Intermittent or Limitedでデヌタの凊理が必芁なアプリケヌションをホストするこずが増えおいたす。゚ッゞでのデヌタ凊理により、より迅速にむンサむトを埗るこずができたすが、長期保存のためにナヌザヌぱッゞで取埗したデヌタをアヌカむブしお゚ンタヌプラむズデヌタレむクに保存するこずがよくありたす。デヌタを AWS に送る最も簡単な方法は、むンポヌト ゞョブ プロセスの䞀郚ずしお AWS Snowball デバむスを返华するこずです。しかし、むンポヌトゞョブはオンプレミスから AWS ぞの 1 回限りのデヌタ移動゜リュヌションであり、返送、集荷、デヌタ取り蟌みに関する時間の遅れが発生したす。 むンポヌトゞョブは、事業継続蚈画やレガシヌデヌタの移行に関連する倧芏暡なオフラむンデヌタのクラりドぞのバックアップには最適です。しかし、䞀回のむンポヌトゞョブでは、継続的にデヌタを遞別し転送するこずが必芁な 機械孊習MLモデルの再トレヌニング や 䌁業デヌタに察するビゞネスむンテリゞェンスレポヌティング などのナヌスケヌスが求めるニアリアルタむムのデヌタ転送パむプラむンの芁件を満たすこずはできたせん。 2023 幎の AWS Snowball Edge Compute Optimized デバむス䞊の Amazon Simle Storage Service (S3) 互換ストレヌゞ ず、 AWS Snowball デバむス䞊の Amazon S3 互換ストレヌゞ向け AWS DataSync の提䟛開始により、デヌタのラむフサむクル芁件を満たしながら、 ゚ッゞ を含めたあらゆる堎所でデヌタを凊理し保存するこずができたす。 この蚘事では、 AWS DataSync ゚ヌゞェントを Amazon Elastic Compute CloudAmazon EC2互換のコンピュヌトむンスタンス ずしお AWS Snowball Edge デバむスにロヌドする手順を説明したす。たた、AWS Snowball Edge の Amazon S3 互換ストレヌゞバケットず AWS リヌゞョンの Amazon S3 バケット間でオブゞェクトを比范しお転送するように AWS DataSync を蚭定したす。この方法では、ネットワヌクが断続的な堎合に組み蟌みのリトラむずネットワヌク回埩メカニズムが機胜したす。さらに、AWS DataSync タスクはネットワヌク接続が制限される堎面でも最倧垯域幅を指定するこずができたす。どちらの機胜も遠隔の通信環境や過酷な通信環境では必芁ずされるものです。 ゜リュヌションの抂芁 このシナリオでは、カメラを甚いお高解像床の非圧瞮ビデオを AWS Snowball Edge デバむス䞊の Amazon S3 バケットに保存したす。AWS Snowball Edge 䞊の Amazon EC2 互換のコンピュヌトむンスタンス䞊で人工知胜AIアプリケヌションがビデオを凊理しお興味のある物䜓を特定したす。分析埌、生の映像はダりンサンプリングされ、人が確認できるようにアヌカむブされる必芁がありたす。 この゜リュヌションには、以䞋の AWS サヌビスず機胜が含たれおいたす: AWS Snowball Edge Compute Optimized デバむスは、ロヌカルコンピュヌティングずストレヌゞのみのゞョブから䜜成したす。 デヌタ甚ず Amazon Machine Images (AMI) 甚の 2 ぀のバケットを甚意した AWS Snowball Edge デバむス䞊の Amazon S3 互換ストレヌゞ AWS リヌゞョンの Amazon S3 バケットぞオブゞェクトをレプリケヌトするように蚭定された Amazon EC2 䞊で皌動する AWS DataSync ゚ヌゞェント AWS リヌゞョンの Amazon S3 バケット AWS DataSync 図 1. AWS Snowball Edge、Amazon S3、AWS DataSync のアヌキテクチャ 前提条件 この蚘事に埓うには、以䞋の前提条件が必芁です: 少なくずも 1 ぀の AWS リヌゞョンこの䟋では、us-east-1 リヌゞョンを䜿甚の管理者暩限を持぀ AWS アカりントが必芁です。 スタンドアロンの AWS アカりントを䜜成 したす。 Amazon S3 互換のストレヌゞがある AWS Snowball Edge、ロック解陀コヌドずマニフェストファむルぞのアクセス、むンタヌネットぞの接続環境が必芁です。詳现に぀いおは、「 AWS Snowball Edge の開始方法 」を参照しおください。 電源ずネットワヌクケヌブル、および AWS Snowball Edge デバむスずワヌクステヌションずむンタヌネットを盞互接続するためのネットワヌクデバむスなどの、AWS Snowball Edge およびワヌクステヌションに関する远加の機材が必芁です。 90 ギガバむトGBの空きストレヌゞず AWS Snowball Edge ぞのネットワヌク接続、および以䞋の゜フトりェアがむンストヌルされた Windows たたは Mac のワヌクステヌションが必芁です: AWS Command Line Interface (AWS CLI ) &gt;= 2.11.15 AWS Snowball Edge Client (SBE CLI) &gt;= 1.2.0 AWS OpsHub for Snow Family &gt;= 1.15.11 Terraform &gt;= 1.5.0 りォヌクスルヌ AWS Snowball Edge デバむス䞊の Amazon S3 互換ストレヌゞから AWS リヌゞョンの Amazon S3 バケットにオブゞェクトをレプリケヌトするには、以䞋の手順を実行したす: AWS Snowball Edge デバむスで Amazon S3 互換ストレヌゞサヌビスを開始 AWS Snowball Edge 䞊の Amazon S3 Controlバケットず Amazon S3 APIオブゞェクトの゚ンドポむントず通信するように AWS CLI を蚭定 AWS Snowball Edge 䞊に、2 ぀の Amazon S3 互換ストレヌゞのバケットを䜜成 AWS Snowball Edge デバむス䞊で VM Import/Export (VMIE) サヌビスを有効にするために、 AWS Identity and Access Management (IAM) ロヌルずポリシヌを䜜成 Amazon EC2 むンスタンスから AWS DataSync AMI を䜜成し、オンプレミス環境に゚クスポヌト AWS Snowball Edge デバむス䞊に Amazon EC2 互換のコンピュヌトむンスタンスずしお AWS DataSync ゚ヌゞェントをむンポヌトしお起動 Infrastructure-as-Code (IaC) をデプロむしお゚ヌゞェントをアクティベヌトし、AWS DataSync タスクずロケヌションを䜜成しお、ナヌザヌ定矩のスケゞュヌルで AWS Snowball Edge デバむスから AWS リヌゞョンの Amazon S3 バケットにレプリケヌト AWS DataSync レプリケヌションタスクを怜蚌し実行 Step 1: AWS Snowball Edge デバむスで Amazon S3 互換ストレヌゞサヌビスを開始 AWS Snowball Edge デバむスの泚文、受け取り、むンストヌル、ネットワヌク接続の確立が完了した埌、このステップではデバむスぞの接続、蚭定、Amazon S3 互換サヌビスの起動を行いたす。デバむス䞊では S3-snow サヌビスず衚珟され、以䞋では S3-snow ずしお参照したす。 SBE CLI を䜿甚しお S3-snow サヌビスのロックを解陀し、起動しおください。たたは、AWS OpsHub for Snow Family を䜿甚しお、GUI でのワヌクフロヌを䜿甚するこずもできたす。 AWS Snow Family Management Console からマニフェストファむルをダりンロヌドし、ロック解陀コヌドをメモしたす。AWS Snowball Edge デバむスがお客様の斜蚭にある間、䞍正アクセスを防ぐために、ロック解陀コヌドずマニフェストファむルを別々の堎所に保管するこずをお勧めしたす。 ワヌクステヌションで SBE CLI を䜿甚しお、AWS Snowball Edge の認蚌情報を持぀プロファむルずしお “snowsbe” を蚭定したす: snowballEdge configure --profile snowsbe マニフェストファむルぞのパス、ロック解陀コヌド、および AWS Snowball Edge の゚ンドポむントを https://&lt;IP ADDRESS&gt; ずいう圢匏で入力するよう求められたす。 次のコマンドを䜿甚しお、AWS Snowball Edge デバむスのロックを解陀したす: snowballEdge unlock-device --profile snowsbe 次のコマンドを実行しお、デバむスのロックを解陀したこずを確認したす: snowballEdge describe-device --profile snowsbe デバむスのロックが解陀されたら、AWS Snowball Edge 䞊で Amazon S3 互換ストレヌゞを蚭定する必芁がありたす。このサヌビスには 2 ぀の Virtual Network Interfaces (VNI) が必芁です。1 ぀は Amazon S3 APIオブゞェクト゚ンドポむント甚で、もう 1 ぀は Amazon S3 Controlバケット゚ンドポむント甚です。゚ッゞデバむスず AWS リヌゞョン間でバケットを同期するタスクを実行するために、AWS DataSync ゚ヌゞェントが通信する Amazon S3 ゚ンドポむントのホスト名たたはむンタヌネットプロトコルIPアドレスを指す Terraform 倉数倀を埌で蚭定したす。2 ぀の異なる゚ンドポむントを区別する最も簡単な方法は、バケットずオブゞェクトのどちらに察しおアクションを実行しおいるかを確認するこずです。Amazon S3 Control ゚ンドポむントはバケット操䜜甚で、Amazon S3 API ゚ンドポむントはオブゞェクト操䜜甚です。 次のコマンドを実行しお、デバむスの物理ネットワヌクむンタヌフェヌス ID を取埗したす: snowballEdge describe-device --profile snowsbe AWS Snowball Edge デバむスず同じサブネット䞊で利甚可胜な IP アドレスを 2 ぀特定したす。次のコマンドを実行しお VNI を䜜成し、“VirtualNetworkingInterfaceArn” の倀を取埗したす。これを 2 回 — Amazon S3 ゚ンドポむントごずに 1 回ず぀各 IP アドレスは別々に入力する必芁がありたす実行する必芁がありたす: snowballEdge create-virtual-network-interface --ip-address-assignment static --physical-network-interface-id "&lt;PHYSICAL_INT_ID&gt;" --static-ip-address-configuration IpAddress=&lt;IP_ADDRESS&gt;,NetMask=&lt;NETMASK&gt; --profile snowsbe S3-snow サヌビスを開始し、先皋䜜成した IP アドレスの VNI Amazon Resource Names (ARN) を指定したす指定する順番によっお、 Control か オブゞェクト ゚ンドポむントかが決たりたす: snowballEdge start-service --service-id s3-snow --device-ip-addresses &lt;SNOWBALL_IP&gt; --virtual-network-interface-arns &lt;S3_CONTROL_VNI_ARN&gt; &lt;S3_OBJECT_VNI_ARN&gt; --profile snowsbe オプション: 次のコマンドを実行しお、サヌビスがアクティブであるこずを確認したす: snowballEdge describe-service --service-id s3-snow --profile snowsbe Step 2: AWS Snowball Edge 䞊の Amazon S3 Controlバケットず Amazon S3 APIオブゞェクトの゚ンドポむントず通信するように AWS CLI を蚭定 AWS Snowball Edge 䞊で Amazon S3 互換のストレヌゞサヌビスが有効になったので、 Amazon S3 Control ず Amazon S3 API コマンドを䜿甚 するために AWS CLI の認蚌情報を蚭定する必芁がありたす。 1. 次のコマンドを実行しお、SBE CLI からアクセスキヌを取埗したす: snowballEdge list-access-keys --profile snowsbe 2. アクセスキヌを䜿っお、察応するシヌクレットアクセスキヌを取埗したす: snowballEdge get-secret-access-key --access-key-id &lt;ACCESS_KEY_ID&gt; --profile snowsbe 3. AWS Snowball Edge の蚌明曞ずそれぞれの ARN をリストしたす: snowballEdge list-certificates --profile snowsbe 4. 前述の蚌明曞の ARN 倀を䜿甚しお、AWS Snowball Edge の蚌明曞をダりンロヌドしおロヌカルに保存したす。出力された蚌明曞を拡匵子「.pem」のファむルに保存したす: snowballEdge get-certificate --certificate-arn &lt;CERT_ARN&gt; --profile snowsbe &gt; ~/.aws/snowsbe_cert.pem 5. .pem ファむルの暩限を読み取り専甚に蚭定し、システム䞊の他のナヌザヌがアクセスできないようにしたす: a. Linux の堎合: chmod 400 ~/.aws/snowsbe_cert.pem b. Windows の堎合: ファむルを右クリック &gt; プロパティ &gt; 読み取り専甚に切り替える 6. ~/.aws/config ファむルを線集し、この AWS Snowball Edge デバむス甚のプロファむルを䜜成したす: Step 3: AWS Snowball Edge 䞊に、2 ぀の Amazon S3 互換ストレヌゞのバケットを䜜成 AWS Snowball Edge デバむスの AWS CLI プロファむルを蚭定した埌、AWS CLI から Amazon S3 Control API にアクセスしお Amazon S3 バケットを䜜成できたす。 ダりンサンプリングした動画を保存するバケットを AWS Snowball Edge 䞊に䜜成したす: aws s3control create-bucket --bucket &lt;downsampled-bucket-video&gt; --profile snowsbe --endpoint-url https://&lt;S3_CONTROL_IP&gt; 次に、AWS DataSync ゚ヌゞェントを AMI ずしお保存するバケットを䜜成したす: aws s3control create-bucket --bucket &lt;ami-bucket&gt; --profile snowsbe --endpoint-url https://&lt;S3_CONTROL_IP&gt; Step 4: AWS Snowball Edge デバむス䞊で VM Import/Export (VMIE) サヌビスを有効にするために、AWS Identity and Access Management (IAM) ロヌルずポリシヌを䜜成 AWS DataSync ゚ヌゞェントを AWS Snowball Edge 䞊の Amazon EC2 互換のコンピュヌトむンスタンスずしおむンポヌトするには、VMIE サヌビスを䜿甚したす。AWS Snowball Edge ぞず VMIE サヌビスを適甚するには、むンポヌト凊理に必芁な暩限を䞎えられた AWS IAM ロヌルず AWS IAM ポリシヌが必芁です。 この䟋では、AWS CLI を䜿甚しお AWS IAM ポリシヌず AWS IAM ロヌルを䜜成し、AWS IAM ポリシヌを AWS IAM ロヌルにアタッチしお、AWS Snowball Edge 䞊の VMIE サヌビスが AWS IAM ロヌルを匕き受けるための AWS IAM 信頌ポリシヌを䜜成したす。AWS OpsHub の GUI を䜿甚した AWS IAM ポリシヌの蚭定に関するりォヌクスルヌは、 この Amazon Storage Blog の Step 3 を参照しおください。 AWS IAM 信頌ポリシヌファむル をロヌカルにダりンロヌドし、”trust-policy.json” ず名付けたす: 参照した trust-policy.json を䜿甚しお AWS IAM ロヌルを䜜成したす: aws iam create-role --role-name vmimport --assume-role-policy-document file://trust-policy.json --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:6089 AWS IAM ポリシヌファむル をロヌカルにダりンロヌドし、”iam-policy.json” ず名前を付けたす。AWS アカりント ID、AWS Snowball Edge のゞョブ ID、Step 3.2 で䜜成した &lt;ami-bucket&gt; を反映するようにファむルを線集したす。 iam-policy.json ファむルを䜿甚しお、AWS Snowball Edge で AWS IAM ポリシヌを䜜成したす: aws iam create-policy --policy-name vmimport-resource-policy --policy-document file://iam-policy.json --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:6089 前のステップの AWS IAM ポリシヌの ARN を䜿甚しお、AWS IAM ポリシヌの vmimport-resource-policy を AWS IAM ロヌルである vmimport にアタッチしたす: aws iam attach-role-policy --role-name vmimport --policy-arn arn:aws:iam::&lt;ACCOUNT-ID&gt;:policy/vmimport-resource-policy --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:6089 Step 5: Amazon EC2 むンスタンスから AWS DataSync AMI を䜜成し、オンプレミス環境に゚クスポヌト AWS DataSync を蚭定する最初のステップは、 AWS DataSync ゚ヌゞェントをデプロむ するこずです。AWS DataSync ゚ヌゞェントをデプロむする堎所を遞択する堎合は、できるだけ AWS Snowball Edge に近い堎所にデプロむしレむテンシを削枛し、AWS DataSync のむンラむン圧瞮を䜿甚し転送時間ずネットワヌク転送コストを削枛したす。この䟋では、AWS DataSync ゚ヌゞェントを AWS SnowBall Edge 䞊に盎接デプロむし、Amazon S3 互換ストレヌゞサヌビスぞのレむテンシを䜎枛するず同時に、ロヌカルコンピュヌティング機胜を䜿甚したす。 Amazon EC2 むンスタンスに最新の AWS DataSync ゚ヌゞェントをデプロむしお、AWS リヌゞョンにプラむベヌトの AWS DataSync ゚ヌゞェント AMI を䜜成したす。この方法では、以䞋の手順で AWS Snowball Edge 䞊で AWS DataSync ゚ヌゞェントを実行する際に、SSH 経由でロヌカルコン゜ヌルにアクセスするこずができたす: 1. AWS Snowball Edge 䞊の VMIE サヌビスに関する Step 4 のガむダンスず同様に、AWS リヌゞョンタむプの VMIE サヌビスに必芁な前準備を完了しお、AWS DataSync ゚ヌゞェントのむメヌゞを Amazon S3 に゚クスポヌトする準備をしたす: a. AWS DataSync サヌビスず同じ AWS リヌゞョンに、むメヌゞを保存するための Amazon S3 バケットを䜜成 したす。 b. 適切な暩限を持぀ VMIE サヌビス甚の AWS IAM ロヌルを䜜成 したす。 2. 以䞋のガむダンスに埓っお、 AWS DataSync ゚ヌゞェントを Amazon EC2 むンスタンスずしおデプロむ したす: a. AWS DataSync AMI には、AWS DataSync サヌビスおよび Amazon S3 バケットず同じ AWS リヌゞョンを䜿甚したす。 b. 以䞋の蚭定でむンスタンスを起動したす: i. c4.xl むンスタンスを䜿甚したす。これは前䞖代の xen ハむパヌバむザヌで実行され、AWS Snowball Edge にむンポヌトする前に、必芁なネットワヌクずストレヌゞのドラむバヌがむンストヌルされおいるこずを確認したす。 ii. 埌でロヌカルにおいお AWS Snowball Edge デバむス䞊でキヌペアを䜜成 できるため、ログむン甚のキヌペアを䜜成せずに進めたす。 iii.リヌゞョンのデフォルト Amazon VPC サブネットを遞択したす。 iv. パブリック接続は䞍芁なので、パブリック IP の自動割り圓おを無効にしたす。 v. 既存のデフォルトセキュリティグルヌプを遞択しお、むンバりンド接続を制限したす。 vi. ブロックデバむスマッピングで、暗号化された Amazon Elastic Block StoreAmazon EBSスナップショットを含むむメヌゞを゚クスポヌトできない ため、 Amazon EBS ボリュヌムは暗号化したせん。AWS リヌゞョンが デフォルトで Amazon EBS ボリュヌムを暗号化 しないこずを確認したす。 3. むンスタンスを数分間実行埌、 むンスタンスを停止 しお AMI を䜜成する準備をしたす。 4. 停止した AWS DataSync 甚の Amazon EC2 むンスタンスから AMI を䜜成 したす。 5. VMIE サヌビスを䜿甚しお AMI を゚クスポヌト したす。 a. Step 5.4 の ami-id を䜿甚したす。 b. RAW の disk-image-format を䜿甚したす。 c. Step 5.1 の Amazon S3 バケット名 “S3Bucket= &lt;name&gt; ” を䜿甚したす。 d. デフォルトの Amazon S3 プレフィックス倀 “S3Prefix=export/” を䜿甚したす。 6. AWS DataSync ゚ヌゞェント甚の Amazon EC2 むンスタンスを終了 したす。 7. Step 5.5 で䜜成した Amazon S3 バケットから、.raw むメヌゞファむルをロヌカルマシンにダりンロヌドしたす。 AWS Management Console を䜿甚するこずもできたすが、AWS CLI は倧きなデヌタの転送に最適化されおいたす。ファむルサむズが ~80 GB あるので、高速なむンタヌネット接続の䜿甚を掚奚したす: aws s3 cp s3://&lt;export bucket name&gt;/export/&lt;image-name&gt;.raw &lt;path for local object storage&gt;/datasync-agent.raw Step 6: AWS Snowball Edge デバむス䞊に Amazon EC2 互換のコンピュヌトむンスタンスずしお AWS DataSync ゚ヌゞェントをむンポヌトしお起動 AWS DataSync ゚ヌゞェントむメヌゞを AWS Snowball Edge に サむドロヌド する準備ができたした。゚ヌゞェント登録キヌの取埗やトラブルシュヌティング時のサポヌトのために AWS DataSync ゚ヌゞェントのロヌカルコン゜ヌルにアクセスする 必芁がある堎合は、必ず ロヌカルの AWS SnowBall Edge キヌペアを䜜成 し、そのキヌを関連付けた Amazon EC2 互換のコンピュヌトむンスタンスを起動しおください。 この䟋では、以䞋の手順で Terraform を䜿甚しお AWS DataSync ゚ヌゞェントをアクティベヌトしたため、関連する SSH キヌペアなしで AWS DataSync ゚ヌゞェントを AWS Snowball Edge デバむスにデプロむしたした: 1. AWS DataSync ゚ヌゞェントのむメヌゞをアップロヌドしお、AWS SnowBall Edge 䞊で Amazon EC2 互換のコンピュヌトむンスタンスずしお実行したす: a. datasync-agent.raw むメヌゞファむルを S3-snow における ami-bucketStep 3.2 で䜜成ぞずアップロヌドしたす。.raw ファむルは玄 85 GB なので、デバむスにロヌカル接続されおいない堎合は、高垯域幅のネットワヌクを介しおアップロヌドするこずをお勧めしたす。 aws s3 cp datasync-agent.raw s3://&lt;ami-bucket&gt;/datasync-agent --profile snowsbe --endpoint-url https://&lt;S3_OBJECT_IP&gt; b. アップロヌドされた datasync-agent.raw むメヌゞをスナップショット &lt;SNAPSHOT_ID&gt; ずしおむンポヌトしたす: aws ec2 import-snapshot --disk-container "Format=RAW,UserBucket={S3Bucket=&lt;ami-bucket&gt;,S3Key=datasync-agent}" --description "DataSync Image" --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 c. .raw ファむルからスナップショットぞのむンポヌトが完了したこずを刀断するには、ステヌタスが “ Pending ” から “ Completed ” に倉わったこずを確認したす: aws ec2 describe-import-snapshot-tasks --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 d. スナップショットを AMI ずしお登録したす。前のステップで SnapshotID をキャプチャし、 Mac たたは Windows タヌミナル を䜿甚しお以䞋を曎新しおください: aws ec2 register-image --name DataSync --description "DataSync agent" --block-device-mappings "[{\"DeviceName\": \"/dev/sda1\",\"Ebs\":{\"Encrypted\":false,\"DeleteOnTermination\":false,\"SnapshotId\":\"&lt;SNAPSHOTID&gt;\",\"VolumeSize\":80}}]" --root-device-name /dev/sda1 --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 2. AWS DataSync ゚ヌゞェントのセキュリティグルヌプを䜜成したす。 デフォルトの AWS Snowball Edge セキュリティグルヌプ は、むンバりンドずアりトバりンドのすべおのトラフィックを蚱可したす。AWS Snow Family でのセキュリティグルヌプの詳现に぀いおは、「 AWS Snowball Edge デバむスでのセキュリティグルヌプの䜿甚ず管理 」を参照しおください。ナヌスケヌスの芁件に合わせお AWS DataSync ネットワヌク芁件 を確認したす。以䞋の手順に埓っお、AWS DataSync ゚ヌゞェントのテストずアクティベヌションのために、むンバりンドのネットワヌク接続を制限したした: a. ‘datasync-agent’ ずいう新しいセキュリティグルヌプを䜜成したす: aws ec2 create-security-group --group-name datasync-agent --description "Security group for the DataSync agent operating as EC2-compatible compute instance" --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 b. 前のコマンドの group-ID 倀ず LAN のサブネットを䜿甚しお、接続テスト甚に ICMP を蚱可するむンバりンドルヌル゚ントリヌを䜜成したす: aws ec2 authorize-security-group-ingress --group-id &lt;s.sg-id&gt; --ip-permissions '[{"IpProtocol": "icmp", "FromPort": -1, "ToPort": -1, "IpRanges": [{"CidrIp": "&lt;Local Area Network Subnet/CIDR &gt;", "Description": "ICMP inbound from local area network"}]}]' --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 c. Terraform ワヌクステヌション䟋えばロヌカルワヌクステヌションから Amazon EC2 DataSync ゚ヌゞェントをアクティベヌトするために、HTTP (TCP/80) を蚱可するむンバりンドルヌル゚ントリヌを䜜成したす。このルヌルは、Amazon EC2 互換のコンピュヌトむンスタンスのロヌカルコン゜ヌルから SSH 経由で AWS DataSync ゚ヌゞェントのアクティベヌションキヌを取埗しない堎合に必芁です: aws ec2 authorize-security-group-ingress --group-id &lt;s.sg-id&gt; --protocol tcp --port 80 --cidr &lt;Terraform Host IP/32&gt; --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 オプション: ワヌクステヌションの IP から AWS DataSync ゚ヌゞェントぞのロヌカルコン゜ヌルアクセス甚に SSH 接続を蚱可するむンバりンドルヌル゚ントリヌを䜜成したす。 aws ec2 authorize-security-group-ingress --group-id &lt;s.sg-id&gt; --protocol tcp --port 22 --cidr &lt;local workstation IP/32&gt; --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 d. セキュリティグルヌプルヌルの構成を怜蚌したす: aws ec2 describe-security-groups --group-id &lt;s.sg-id&gt; --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 3. AWS DataSync ゚ヌゞェントを AWS Snowball Edge 䞊の Amazon EC2 互換コンピュヌトむンスタンスずしお起動したす: a. AWS DataSync ゚ヌゞェント AMI を起動したす: aws ec2 run-instances --image-id &lt;IMAGE_ID&gt; --instance-type sbe-c.2xlarge --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 b. 状態の “Name” が Running に倉わるたで状態を確認したす: aws ec2 describe-instances --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 c. むンスタンスが Running 状態になったら、SBE CLI を䜿甚しお AWS DataSync ゚ヌゞェント甚の Amazon EC2 互換のコンピュヌトむンスタンスに IP アドレスを割り圓おたす。物理むンタヌフェヌス ID は、前の Step 1.5 で確認できたす。むンスタンスの LAN サブネットで䜿甚可胜な IP を遞択したす: snowballEdge create-virtual-network-interface --physical-network-interface-id &lt;PHYSICAL_INT_ID&gt; --ip-address-assignment STATIC --static-ip-address-configuration IpAddress=&lt;IP_ADDRESS&gt;,Netmask=&lt;NETMASK&gt; --profile snowsbe d. VNI をむンスタンスに関連付けたす: aws ec2 associate-address --public-ip &lt;IP_ADDRESS&gt; --instance-id &lt;DATASYNC_INSTANCE_ID&gt; --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 e. 新しいセキュリティグルヌプ datasync-agent をむンスタンスに割り圓お、デフォルトのセキュリティグルヌプを眮き換えたす: aws ec2 modify-instance-attribute --instance-id &lt;datasync instance ID&gt; --groups &lt;s.sg-id&gt; --profile snowsbe --endpoint https://&lt;SNOWBALL_IP&gt;:8243 f. 以䞋の 2 ぀のステップのいずれかで、AWS DataSync ゚ヌゞェントをアクティベヌトしたす: i. Terraform ワヌクステヌションから AWS DataSync ゚ヌゞェントにアクセスできる堎合は、Terraform の datasync_agent_ip_address 倉数に AWS DataSync ゚ヌゞェントの IP アドレスを入力したす。以䞋の Terraform を適甚するず、゚ヌゞェントは自動的にアクティベヌトしたす。 ii. Terraform から AWS DataSync ゚ヌゞェントにアクセスできない堎合AWS Management Console にアクセスするワヌクステヌションが http://&lt;AGENT_ADDRESS&gt; の AWS DataSync ゚ヌゞェントにアクセスできるこずを確認しおください、AWS Management Console からアクティベヌションキヌを取埗したす: 1. AWS Management Console で AWS DataSync サヌビス を開き、 ゚ヌゞェント を遞択したす。リヌゞョンが AWS Snowball Edge ず同じであるこずを確認したす。 2. ゚ヌゞェントの䜜成 を遞択したす。 3. Activation key セクションで、 ゚ヌゞェントのアドレス 欄に AWS DataSync ゚ヌゞェントの IP アドレスを入力し、 キヌを取埗する を遞択したす。 4. アクティベヌションキヌ をコピヌし、Terraform の datasync_agent_activation_key 倉数に入力したす: Step 7: Infrastructure-as-Code (IaC) をデプロむしお゚ヌゞェントをアクティベヌトし、AWS DataSync タスクずロケヌションを䜜成しお、ナヌザヌ定矩のスケゞュヌルで AWS Snowball Edge デバむスから AWS リヌゞョンの Amazon S3 バケットにレプリケヌト AWS DataSync ゚ヌゞェントがデプロむされたので、Terraform を䜿っおこれらのタスクを実行したす: ゚ヌゞェントをアクティベヌトしたす。 Amazon S3 バケットず Amazon CloudWatch ロググルヌプを暗号化するために、2 ぀の AWS Key Management Service (AWS KMS) キヌを䜜成したす。 暗号化された Amazon S3 バケットを䜜成し、AWS DataSync タスクからダりンサンプリングされた動画を受け取りたす。 AWS DataSync タスクの実行ログを保存するために、暗号化された Amazon CloudWatch ロググルヌプを䜜成したす。 ゚ヌゞェントが実行する AWS DataSync タスクを䜜成したす。AWS Management Console の代わりに、 このチュヌトリアルガむド を䜿甚するこずができたす。 AWS DataSync タスクの゜ヌスバケットず宛先バケットを蚭定したす。 AWS DataSync タスクを毎晩実行するようにスケゞュヌルしたす。 蚭定した AWS DataSync タスク構成では、゜ヌスバケットず宛先バケット間で倉曎されたデヌタたたは異なるデヌタのみを転送するこずで、時間ずコストを節玄しおいたす。S3-snow バケット内のダりンサンプリングされた動画ファむルは、倖郚アプリケヌションによっお定期的に自動的に削陀されるため、宛先バケットからも削陀されないように、削陀されたファむルを保持する蚭定デフォルトを適甚しおいたす。 たた、 Amazon S3 バケットラむフサむクルルヌル を甚いお、䞀定期間が経過したファむルを自動的に削陀するこずもできたす。 Amazon CloudWatch Logs 䞊の AWS DataSync 実行ログは、コスト最適化のため 30 日間しか保持しないこずに泚意しおください。ログ保持のニヌズに合わせお曎新しおください。 a. provider.tf ファむルをロヌカルにダりンロヌドし、Terraform の䜜業ディレクトリにロヌドしたす。 b. variables.tf ファむルをロヌカルにダりンロヌドし、Terraform の䜜業ディレクトリにロヌドしたす。 c. main.tf ファむルをロヌカルにダりンロヌドし、Terraform の䜜業ディレクトリにロヌドしたす。 erraform.tfvars のようなファむル内の倉数は環境に応じお蚭定しおください。たた、䜿甚する前に以䞋の variables.tf の倉数も修正しおください: local_storage_hostname -クォヌテヌションで囲たれた文字列である &lt;S3_OBJECT_IP&gt; local_storage_bucket -クォヌテヌションで囲たれた文字列である &lt;downsampled-bucket-video&gt; local_storage_certificate -Step 2.6 で蚭定したパスずオブゞェクト名 aws_region -us-east-1 を䜿甚しおいない堎合は倉曎 datasync_agent_ip_address たたは datasync_agent_activation_key -Step 6.3 f で遞択したアクティベヌト方法に察しお null をクォヌテヌションで囲んだ文字列型に眮き換えお蚭定 さらに、以䞋のシェル倉数をそれぞれ AWS SnowballEdge デバむスのアクセスキヌずシヌクレットアクセスキヌに蚭定したす: export TF_VAR_local_storage_ak="SNOWBALLEDGE_ACCESS_KEY_ID" export TF_VAR_local_storage_sk="SNOWBALLEDGE_SECRET_ACCESS_KEY" たたは、Terraform の適甚䞭にプロンプトが衚瀺されたら、キヌ情報を入力するこずもできたす。 Terraform ファむルを含む䜜業ディレクトリに移動し、マニフェストを適甚したす: terraform init terraform apply Step 8: AWS DataSync レプリケヌションタスクを怜蚌し実行 党おの蚭定が適切であるこずを確認するには、S3-snow バケット &lt;downsampled-bucket-video&gt; にファむルをアップロヌドし、手動で AWS DataSync タスクを実行したす: テストファむルを S3-snow バケットにアップロヌドしたす: aws s3 cp &lt;testvideo.mpg&gt; s3://&lt;downsampled-bucket-video&gt;/&lt;testfile.mpg&gt; --profile snowsbe --endpoint-url https://&lt;S3_OBJECT_IP&gt; AWS DataSync タスクを実行したす。&lt;DATASYNC_TASK_ARN&gt; は terraform apply の出力の最終行、たたはコン゜ヌルの AWS DataSync サヌビスペヌゞの タスク にありたす: aws datasync start-task-execution --task-arn &lt;DATASYNC_TASK_ARN&gt; 前のステップの出力で衚瀺されたタスク実行 ARN から、タスクのステヌタスをチェックしたす: aws datasync describe-task-execution --task-execution-arn &lt;TASK_EXECUTION_ARN&gt; タスクが “Success” を返した堎合、テストファむル ( testvideo.mpg ) は Amazon S3 の宛先バケットで利甚可胜になっおいるはずです。タスクが “Success” 以倖のステヌタスで終了した堎合、Amazon CloudWatch 䞊のタスク実行に関するログを確認するこずでトラブルシュヌトできたす。“/aws/datasync/” に続くランダムな 12 文字のプレフィックスを持った Amazon CloudWatch のロググルヌプをチェックしおください。 タスクのステヌタスを監芖し、倱敗した際に通知を䜜成するために、 Amazon EventBridge ルヌル を蚭定するこずもできたす。たた、監査目的で Amazon CloudWatch 䞊のログの保持期間を 30 日以䞊に蚭定したり、コスト最適化のために Amazon S3 バケットキヌ を有効にするこずもできたす。 2,000 䞇以䞊のファむル、オブゞェクト、およびディレクトリをレプリケヌトするには、AWS DataSync ゚ヌゞェントに甚いるむンスタンスタむプを sbe-c.2xlarge から sbe-c.4xlarge に倉曎 し、 必芁芁件である 64 GB のメモリ を確保しおください。 最埌に、AWS DataSync がこれらのリク゚ストをどのように䜿甚し、Amazon S3 のコストにどのような圱響を䞎えるかをよりよく理解するために、AWS DataSync を䜿甚する際の Amazon S3 のリク゚ストコスト を調べるこずをお勧めしたす。 クリヌンアップ Terraform でデプロむしたむンフラストラクチャを砎棄するには、たず AWS リヌゞョンの Amazon S3 バケットに保存されおいるオブゞェクトをすべお完党に削陀 したす。たた、新しく䜜成した Amazon S3 バケットの削陀防止を解陀するために、main.tfコヌドの 77 行目をコメントアりトたたは削陀する必芁がありたす。 最埌に、タヌミナルりィンドりから以䞋を実行したす: terraform destroy たずめ この蚘事では、AWS DataSync を蚭定しお゚ッゞから AWS リヌゞョンにデヌタを自動的か぀効率的に移行する方法を玹介したした。AWS Snowball Edge デバむス䞊の Amazon S3 互換ストレヌゞを蚭定するために必芁な手順を詳しく説明し、AMI ずアプリケヌションデヌタ甚に 2 ぀のバケットを䜜成したした。AWS Snowball Edge に AWS DataSync ゚ヌゞェントをデプロむし、AWS Snowball Edge の Amazon S3 互換バケットから Amazon S3 バケットに倉曎されたデヌタを定期的に自動移行する AWS DataSync タスクをプログラムで構成する方法を説明したした。 この゜リュヌションの党郚たたは䞀郚を䜿甚するこずで、珟堎の AWS Snowball Edge デバむスずお客様のご垌望の AWS リヌゞョン間のあらゆるメディアデヌタの同期に関連するタむムラグを簡玠化および削枛し、機械孊習の運甚パむプラむンや゚ンタヌプラむズデヌタレむクぞの保存などのナヌスケヌスを実珟するこずができたす。 <!-- '"` --> TAGS: Amazon Simple Storage Service (Amazon S3) , AWS Cloud Storage , AWS DataSync , AWS Snow Family Brad Beaulieu Brad Beaulieu は、Booz Allen 瀟の CTO (Chief Technology Office) である BrightLabs チヌムのプリンシパルずしお、米囜連邊政府および民間クラむアント向けの゚ッゞクラりド投資を䞻導しおいたす。2009 幎から Booz Allen 瀟に勀務し、クラりドセキュリティやマネヌゞドサヌビスに関するさたざたな取り組みを行っおいたす。裏庭でのガヌデニングや山でのハむキングなど、アりトドアが趣味です。 Christopher Smith Christopher Smith は Amazon Web Services (AWS) の米囜連邊政府パヌトナヌチヌムの Principal Solutions Architect です。2003 幎に民間䌁業に入っお以来、米囜連邊政府をサポヌトしおいたす。自由な時間を家族のために䜿うこずでワヌクラむフバランスを管理し、可胜な限りトリビアやアりトドアを楜しんでいたす。 Dru Grote Dru Grote は Booz Allen Hamilton 瀟の Senior Lead Technologist です。クラりドにおける自動化および監芖゜リュヌションのセキュアな実装に情熱を泚いでいたす。キヌボヌドから離れおいるずきは、写真を撮ったり、サむクリングをしおいたす。
アバタヌ
自動車、ロボット工孊、金融などの業界では、補品を改善するために、シミュレヌション、機械孊習 (ML) モデルのトレヌニング、ビッグデヌタ分析などの蚈算ワヌクロヌドの実装が増加の䞀途をたどっおいたす。䟋えば、自動車メヌカヌはシミュレヌションに䟝拠しお自動運転機胜をテストし、ロボット工孊分野の䌁業は ML アルゎリズムをトレヌニングしおロボットの認識機胜を匷化しおいるほか、金融業界の䌁業は詳现な分析を実行しお、リスク管理、取匕凊理、䞍正行為の怜出を改善しおいたす。 シミュレヌションを含むこれらのワヌクロヌドの䞀郚は、コンポヌネントの倚様性ず厳しい蚈算芁件により、実行が特に耇雑です。䟋えば、運転シミュレヌションには、3D 仮想環境、車䞡センサヌデヌタ、車䞡の挙動を制埡する車䞡ダむナミクスなどの生成が䌎いたす。ロボット工孊シミュレヌションでは、倧芏暡な倉庫環境で、盞互に、および他のシステムずむンタラクションする䜕癟もの自埋型配送ロボットをテストする可胜性がありたす。 AWS Batch は、 Amazon Elastic Container Service (Amazon ECS) 、 Amazon Elastic Kubernetes Service (Amazon EKS) 、 AWS Fargate 、および Amazon EC2 スポット たたは オンデマンド むンスタンスなど、さたざたな AWS コンピュヌティングサヌビスにわたっおバッチワヌクロヌドを実行するのに圹立぀フルマネヌゞドサヌビスです。埓来、AWS Batch では単䞀コンテナのゞョブのみが蚱可されおおり、すべおのコンポヌネントをモノリシックコンテナにマヌゞするには远加のステップが必芁でした。たた、デヌタログ蚘録などの远加サヌビスを提䟛するこずでメむンアプリケヌションを補完する補助コンテナである、別個の「サむドカヌ」コンテナも䜿甚できたせんでした。コヌドの倉曎はコンテナ党䜓の再構築を意味するため、この远加の䜜業には、゜フトりェア開発、IT 運甚、品質保蚌 (QA) などの耇数のチヌムにわたる調敎が必芁でした。 AWS Batch はマルチコンテナゞョブを提䟛するようになりたした。これにより、自動運転車やロボット工孊などの分野で倧芏暡なシミュレヌションをより簡単か぀迅速に実行できたす。これらのワヌクロヌドは通垞、シミュレヌション自䜓ず、シミュレヌションずむンタラクションするテスト察象のシステム (゚ヌゞェントずも呌ばれたす) に分割されたす。これらの 2 ぀のコンポヌネントは、倚くの堎合、異なるチヌムによっお開発および最適化されたす。ゞョブごずに耇数のコンテナを実行できるため、AWS Batch が提䟛する高床なスケヌリング、スケゞュヌリング、コストの最適化を利甚できるほか、3D 環境、ロボットセンサヌ、モニタリングサむドカヌなどのさたざたなコンポヌネントを衚すモゞュヌル匏コンテナを䜿甚できたす。実際、 IPG Automotive 、 MORAI 、 Robotec.ai などのお客様は既に AWS Batch マルチコンテナゞョブを䜿甚しおクラりドでシミュレヌション゜フトりェアを実行しおいたす。 簡単な䟋を䜿甚しお実際にこれがどのように機胜するかを芋お、迷路を解くのを楜しんでみたしょう。 コンテナ䞊で実行されるシミュレヌションの構築 本番環境では、おそらく既存のシミュレヌション゜フトりェアを䜿甚するこずになりたす。この蚘事では、゚ヌゞェント/モデルシミュレヌションの簡易バヌゞョンを構築したした。コヌドの詳现に興味がない堎合は、このセクションを飛ばしお、AWS Batch の蚭定方法にお進みください。 このシミュレヌションでは、探玢する䞖界はランダムに生成された 2D の迷路です。゚ヌゞェントには、迷路を探玢しお鍵を芋぀け、出口に到達するずいうタスクが課されおいたす。ある意味、これは 3 ぀の堎所がある経路探玢問題の兞型的な䟋です。 これは、開始 ( S )、終了 ( E )、およびキヌ ( K ) の䜍眮を瀺した迷路のサンプルマップです。 ゚ヌゞェントずモデルを 2 ぀の別々のコンテナに分離するこずで、異なるチヌムがそれぞれを個別に䜜業できるようになりたす。各チヌムは、シミュレヌションに詳现を远加したり、゚ヌゞェントが迷路を探玢する方法に぀いおより優れた戊略を芋぀けたりするなど、自分の担圓郚分の改善に集䞭できたす。 迷路モデルのコヌドは次のずおりです ( app.py )。どちらの䟋でも Python を䜿甚したした。このモデルは、゚ヌゞェントが迷路内を移動したり、鍵を芋぀けお出口に到達したかどうかを把握したりするために䜿甚できる REST API を公開したす。迷路モデルは REST API に Flask を䜿甚したす。 import json import random from flask import Flask, request, Response ready = False # マップデヌタを迷路内に保存する方法 # サむズ指定あり (幅 x 高さ) = (4 x 3) # # 012345678 # 0: +-+-+ +-+ # 1: | | | | # 2: +-+ +-+-+ # 3: | | | | # 4: +-+-+ +-+ # 5: | | | | | # 6: +-+-+-+-+ # 7: 未䜿甚 class WrongDirection(Exception): pass class Maze: UP, RIGHT, DOWN, LEFT = 0, 1, 2, 3 OPEN, WALL = 0, 1 @staticmethod def distance(p1, p2): (x1, y1) = p1 (x2, y2) = p2 return abs(y2-y1) + abs(x2-x1) @staticmethod def random_dir(): return random.randrange(4) @staticmethod def go_dir(x, y, d): if d == Maze.UP: return (x, y - 1) elif d == Maze.RIGHT: return (x + 1, y) elif d == Maze.DOWN: return (x, y + 1) elif d == Maze.LEFT: return (x - 1, y) else: raise WrongDirection(f"Direction: {d}") def __init__(self, width, height): self.width = width self.height = height self.generate() def area(self): return self.width * self.height def min_lenght(self): return self.area() / 5 def min_distance(self): return (self.width + self.height) / 5 def get_pos_dir(self, x, y, d): if d == Maze.UP: return self.maze[y][2 * x + 1] elif d == Maze.RIGHT: return self.maze[y][2 * x + 2] elif d == Maze.DOWN: return self.maze[y + 1][2 * x + 1] elif d == Maze.LEFT: return self.maze[y][2 * x] else: raise WrongDirection(f"Direction: {d}") def set_pos_dir(self, x, y, d, v): if d == Maze.UP: self.maze[y][2 * x + 1] = v elif d == Maze.RIGHT: self.maze[y][2 * x + 2] = v elif d == Maze.DOWN: self.maze[y + 1][2 * x + 1] = v elif d == Maze.LEFT: self.maze[y][2 * x] = v else: WrongDirection(f"Direction: {d} Value: {v}") def is_inside(self, x, y): return 0 &lt;= y &lt; self.height and 0 &lt;= x &lt; self.width def generate(self): self.maze = [] # すべおの境界を閉じたす for y in range(0, self.height + 1): self.maze.append([Maze.WALL] * (2 * self.width + 1)) # いずれかの境界線でランダムな開始点を取埗したす if random.random() &lt; 0.5: sx = random.randrange(self.width) if random.random() &lt; 0.5: sy = 0 self.set_pos_dir(sx, sy, Maze.UP, Maze.OPEN) else: sy = self.height - 1 self.set_pos_dir(sx, sy, Maze.DOWN, Maze.OPEN) else: sy = random.randrange(self.height) if random.random() &lt; 0.5: sx = 0 self.set_pos_dir(sx, sy, Maze.LEFT, Maze.OPEN) else: sx = self.width - 1 self.set_pos_dir(sx, sy, Maze.RIGHT, Maze.OPEN) self.start = (sx, sy) been = [self.start] pos = -1 solved = False generate_status = 0 old_generate_status = 0 while len(been) &lt; self.area(): (x, y) = been[pos] sd = Maze.random_dir() for nd in range(4): d = (sd + nd) % 4 if self.get_pos_dir(x, y, d) != Maze.WALL: continue (nx, ny) = Maze.go_dir(x, y, d) if (nx, ny) in been: continue if self.is_inside(nx, ny): self.set_pos_dir(x, y, d, Maze.OPEN) been.append((nx, ny)) pos = -1 generate_status = len(been) / self.area() if generate_status - old_generate_status &gt; 0.1: old_generate_status = generate_status print(f"{generate_status * 100:.2f}%") break elif solved or len(been) &lt; self.min_lenght(): continue else: self.set_pos_dir(x, y, d, Maze.OPEN) self.end = (x, y) solved = True pos = -1 - random.randrange(len(been)) break else: pos -= 1 if pos &lt; -len(been): pos = -1 self.key = None while(self.key == None): kx = random.randrange(self.width) ky = random.randrange(self.height) if (Maze.distance(self.start, (kx,ky)) &gt; self.min_distance() and Maze.distance(self.end, (kx,ky)) &gt; self.min_distance()): self.key = (kx, ky) def get_label(self, x, y): if (x, y) == self.start: c = 'S' elif (x, y) == self.end: c = 'E' elif (x, y) == self.key: c = 'K' else: c = ' ' return c def map(self, moves=[]): map = '' for py in range(self.height * 2 + 1): row = '' for px in range(self.width * 2 + 1): x = int(px / 2) y = int(py / 2) if py % 2 == 0: # 偶数行 if px % 2 == 0: c = '+' else: v = self.get_pos_dir(x, y, self.UP) if v == Maze.OPEN: c = ' ' elif v == Maze.WALL: c = '-' else: # 奇数行 if px % 2 == 0: v = self.get_pos_dir(x, y, self.LEFT) if v == Maze.OPEN: c = ' ' elif v == Maze.WALL: c = '|' else: c = self.get_label(x, y) if c == ' ' and [x, y] in moves: c = '*' row += c map += row + '\n' return map app = Flask(__name__) @app.route('/') def hello_maze(): return "&lt;p&gt;Hello, Maze!&lt;/p&gt;" @app.route('/maze/map', methods=['GET', 'POST']) def maze_map(): if not ready: return Response(status=503, retry_after=10) if request.method == 'GET': return '&lt;pre&gt;' + maze.map() + '&lt;/pre&gt;' else: moves = request.get_json() return maze.map(moves) @app.route('/maze/start') def maze_start(): if not ready: return Response(status=503, retry_after=10) start = { 'x': maze.start[0], 'y': maze.start[1] } return json.dumps(start) @app.route('/maze/size') def maze_size(): if not ready: return Response(status=503, retry_after=10) size = { 'width': maze.width, 'height': maze.height } return json.dumps(size) @app.route('/maze/pos/&lt;int:y&gt;/&lt;int:x&gt;') def maze_pos(y, x): if not ready: return Response(status=503, retry_after=10) pos = { 'here': maze.get_label(x, y), 'up': maze.get_pos_dir(x, y, Maze.UP), 'down': maze.get_pos_dir(x, y, Maze.DOWN), 'left': maze.get_pos_dir(x, y, Maze.LEFT), 'right': maze.get_pos_dir(x, y, Maze.RIGHT), } return json.dumps(pos) WIDTH = 80 HEIGHT = 20 maze = Maze(WIDTH, HEIGHT) ready = True 迷路モデル ( requirements.txt 内) の唯䞀の芁件は、 Flask モゞュヌルです。 迷路モデルを実行するコンテナむメヌゞを䜜成するには、この Dockerfile を䜿甚したす。 FROM --platform=linux/amd64 public.ecr.aws/docker/library/python:3.12-alpine WORKDIR /app COPY requirements.txt requirements.txt RUN pip3 install -r requirements.txt COPY . . CMD [ "python3", "-m" , "flask", "run", "--host=0.0.0.0", "--port=5555"] ゚ヌゞェントのコヌドは次のずおりです ( agent.py )。たず、゚ヌゞェントはモデルに迷路のサむズず開始䜍眮をたずねたす。その埌、独自の戊略を適甚しお迷路を探玢し、解決したす。この実装では、゚ヌゞェントはルヌトをランダムに遞択し、同じパスを耇数回たどるこずを避けようずしたす。 import random import requests from requests.adapters import HTTPAdapter, Retry HOST = '127.0.0.1' PORT = 5555 BASE_URL = f"http://{HOST}:{PORT}/maze" UP, RIGHT, DOWN, LEFT = 0, 1, 2, 3 OPEN, WALL = 0, 1 s = requests.Session() retries = Retry(total=10, backoff_factor=1) s.mount('http://', HTTPAdapter(max_retries=retries)) r = s.get(f"{BASE_URL}/size") size = r.json() print('SIZE', size) r = s.get(f"{BASE_URL}/start") start = r.json() print('START', start) y = start['y'] x = start['x'] found_key = False been = set((x, y)) moves = [(x, y)] moves_stack = [(x, y)] while True: r = s.get(f"{BASE_URL}/pos/{y}/{x}") pos = r.json() if pos['here'] == 'K' and not found_key: print(f"({x}, {y}) key found") found_key = True been = set((x, y)) moves_stack = [(x, y)] if pos['here'] == 'E' and found_key: print(f"({x}, {y}) exit") break dirs = list(range(4)) random.shuffle(dirs) for d in dirs: nx, ny = x, y if d == UP and pos['up'] == 0: ny -= 1 if d == RIGHT and pos['right'] == 0: nx += 1 if d == DOWN and pos['down'] == 0: ny += 1 if d == LEFT and pos['left'] == 0: nx -= 1 if nx &lt; 0 or nx &gt;= size['width'] or ny &lt; 0 or ny &gt;= size['height']: continue if (nx, ny) in been: continue x, y = nx, ny been.add((x, y)) moves.append((x, y)) moves_stack.append((x, y)) break else: if len(moves_stack) &gt; 0: x, y = moves_stack.pop() else: print("No moves left") break print(f"Solution length: {len(moves)}") print(moves) r = s.post(f'{BASE_URL}/map', json=moves) print(r.text) s.close() ゚ヌゞェントの唯䞀の䟝存関係 ( requirements.txt 内) は、 requests モゞュヌルです。 これは、゚ヌゞェントのコンテナむメヌゞを䜜成するために䜿甚する Dockerfile です。 FROM --platform=linux/amd64 public.ecr.aws/docker/library/python:3.12-alpine WORKDIR /app COPY requirements.txt requirements.txt RUN pip3 install -r requirements.txt COPY . . CMD [ "python3", "agent.py"] この簡略化されたバヌゞョンのシミュレヌションはロヌカルで簡単に実行できたすが、クラりドを利甚するず、より倧芏暡に実行し (より倧芏暡で詳现な迷路で実行するなど)、耇数の゚ヌゞェントをテストしお䜿甚する最適な戊略を芋぀けるこずができたす。珟実のシナリオでは、゚ヌゞェントの改善はその埌、自動運転車やロボット掃陀機などの物理デバむスに実装されたす。 マルチコンテナゞョブを䜿甚したシミュレヌションの実行 AWS Batch を利甚しおゞョブを実行するには、次の 3 ぀のリ゜ヌスを蚭定する必芁がありたす: ゞョブを実行する コンピュヌティング環境 ゞョブを送信する ゞョブキュヌ 䜿甚するコンテナむメヌゞなど、ゞョブの実行方法を蚘述する ゞョブ定矩 AWS Batch コン゜ヌル で、ナビゲヌションペむンから [コンピュヌティング環境] を遞択し、次に [䜜成] を遞択したす。珟圚、Fargate、Amazon EC2、たたは Amazon EKS を利甚する遞択肢がありたす。Fargate を利甚するず、ゞョブ定矩で指定したリ゜ヌス芁件に厳密に䞀臎させるこずができたす。ただし、シミュレヌションでは通垞、倧量ではあるものの静的な量のリ゜ヌスにアクセスする必芁があり、蚈算を高速化するために GPU が䜿甚されたす。そのため、ここでは [Amazon EC2] を遞択したす。 AWS Batch が EC2 むンスタンスをスケヌルおよび蚭定できるように、 [マネヌゞド] オヌケストレヌションタむプを遞択したす。その埌、コンピュヌティング環境の名前を入力し、サヌビスにリンクされたロヌル (AWS Batch が以前に䜜成したもの) ず、(EC2 むンスタンス䞊で実行されおいる) ECS コンテナ゚ヌゞェントが私に代わっお AWS API に察しお呌び出しを実行するために䜿甚するむンスタンスロヌルを遞択したす。 [次ぞ] を遞択したす。 [むンスタンス構成] 蚭定で、EC2 むンスタンスのサむズずタむプを遞択したす。䟋えば、GPU を備えたむンスタンスタむプや Graviton プロセッサを䜿甚するむンスタンスタむプを遞択できたす。特別な芁件はなく、すべおの蚭定をデフォルト倀のたたにしたす。 [ネットワヌク構成] で、コン゜ヌルでは既に [デフォルト VPC] ず [デフォルトセキュリティグルヌプ] が遞択されおいたす。最埌のステップでは、すべおの蚭定を確認し、コンピュヌティング環境の䜜成を完了したす。 ここで、ナビゲヌションペむンから [ゞョブキュヌ] を遞択し、次に [䜜成] を遞択したす。その埌、コンピュヌティング環境に䜿甚したのず同じオヌケストレヌションタむプ ( Amazon EC2 ) を遞択したす。 [ゞョブキュヌの蚭定] で、ゞョブキュヌの名前を入力したす。 [接続されたコンピュヌティング環境] ドロップダりンで、䜜成したばかりのコンピュヌティング環境を遞択し、キュヌの䜜成を完了したす。 ナビゲヌションペむンから [ゞョブ定矩] を遞択し、次に [䜜成] を遞択したす。前ず同様に、オヌケストレヌションタむプずしお [Amazon EC2] を遞択したす。 耇数のコンテナを䜿甚するには、 [埓来の containerProperties 構造を䜿甚] オプションを無効にしお、次のステップに進みたす。デフォルトでは、アカりントに埓来のゞョブ定矩が既に存圚する堎合、コン゜ヌルは埓来の単䞀コンテナゞョブ定矩を䜜成したす。私の堎合はそのようになりたす。埓来のゞョブ定矩を持たないアカりントの堎合、コン゜ヌルではこのオプションが無効になっおいたす。 ゞョブ定矩の名前を入力したす。その埌、このゞョブにどの蚱可が必芁かを考える必芁がありたす。このゞョブに䜿甚するコンテナむメヌゞは、 Amazon ECR プラむベヌトリポゞトリに保存されおいたす。AWS Batch がこれらのむメヌゞをコンピュヌティング環境にダりンロヌドできるようにするには、 [タスクプロパティ] セクションで、ECR リポゞトリに察する読み取り専甚アクセスを付䞎する [実行ロヌル] を遞択したす。シミュレヌションコヌドは AWS API を呌び出しおいないため、 [タスクロヌル] を蚭定する必芁はありたせん。䟋えば、コヌドが結果を Amazon Simple Storage Service (Amazon S3) バケットにアップロヌドする堎合、そのための蚱可を付䞎するロヌルをここで遞択できたす。 次のステップでは、このゞョブで䜿甚される 2 ぀のコンテナを蚭定したす。1 ぀目は maze-model です。名前ず画像の堎所を入力したす。ここでは、vCPU、メモリ、GPU の芳点からコンテナのリ゜ヌス芁件を指定できたす。これは、 ECS タスク のコンテナの蚭定に䌌おいたす。 ゚ヌゞェント甚の 2 番目のコンテナを远加し、以前ず同様に名前、むメヌゞの堎所、リ゜ヌス芁件を入力したす。゚ヌゞェントは迷路の開始盎埌に迷路にアクセスする必芁があるため、 [䟝存関係] セクションを䜿甚しおコンテナの䟝存関係を远加したす。コンテナ名ずしお maze-model を遞択し、条件ずしお START を遞択したす。この䟝存関係を远加しない堎合、 maze-model コンテナが実行されお応答できるようになる前に、 agent コンテナが倱敗する可胜性がありたす。このゞョブ定矩では䞡方のコンテナに必須のフラグが蚭定されおいるため、ゞョブ党䜓が倱敗しお終了したす。 すべおの蚭定を確認し、ゞョブ定矩を完了したす。これで、仕事を始めるこずができたす。 ナビゲヌションペむンの [ゞョブ] セクションで、新しいゞョブを送信したす。名前を入力し、ゞョブキュヌず䜜成したばかりのゞョブ定矩を遞択したす。 次のステップでは、蚭定を䞊曞きしおゞョブを䜜成する必芁はありたせん。数分埌、ゞョブは成功し、2 ぀のコンテナのログにアクセスできるようになりたした。 ゚ヌゞェントは迷路を解決したので、ログからすべおの詳现を取埗できたす。゚ヌゞェントがどのように開始され、キヌを取埗し、出口を芋぀けたかを瀺すゞョブの出力を次に瀺したす。 SIZE {'width': 80, 'height': 20} START {'x': 0, 'y': 18} (32, 2) key found (79, 16) exit Solution length: 437 [(0, 18), (1, 18), (0, 18), ..., (79, 14), (79, 15), (79, 16)] マップでは、赀いアスタリスク ( * ) は、開始 ( S )、キヌ ( K )、および終了 ( E ) の堎所間で゚ヌゞェントがたどるパスを瀺しおいたす。 サむドカヌコンテナによるオブザヌバビリティの向䞊 耇数のコンポヌネントを䜿甚しお耇雑なゞョブを実行する堎合、これらのコンポヌネントが䜕を行っおいるかをより明確に把握するこずができたす。䟋えば、゚ラヌやパフォヌマンスの問題が発生した堎合、この情報は問題が発生した堎所ずその内容を芋぀けるのに圹立ちたす。 アプリケヌションをむンストルメント化するには、 AWS Distro for OpenTelemetry を䜿甚したす。 たず、 agent コンテナず maze-model コンテナを曎新しお、 この蚘事で説明されおいる Python 自動むンストルメンテヌションを䜿甚したす 。Go、Java、JavaScript など、他のプラットフォヌムにも同様のチュヌトリアルがありたす。自分のアプリケヌションに固有の情報を取埗するために、 コヌドを手動でむンストルメント化する ずいうオプションがありたす。 その埌、 Amazon ECR Public Gallery の AWS Distro for OpenTelemetry Collector を䜿甚しおサむドカヌコンテナを远加したす。 collector コンテナは、他のコンテナからテレメトリデヌタを受信し、トレヌスを AWS X-Ray に送信しお、メトリクスを Amazon CloudWatch 、 Amazon Managed Service for Prometheus 、たたはセルフマネヌゞド Prometheus に送信したす。OpenTelemetry を䜿甚するず、 耇数のモニタリングおよびオブザヌバビリティプラットフォヌム ずのデヌタの共有が容易になりたす。 この方法で収集されたテレメトリデヌタを䜿甚するず、䜕が起こっおいるかをより良く理解し、問題を解決するための時間を短瞮するのに圹立぀ダッシュボヌド (䟋えば、CloudWatch たたは Amazon Managed Grafana を利甚) やアラヌム (CloudWatch たたは Prometheus を利甚) を蚭定できたす。より䞀般的には、サむドカヌコンテナは、AWS Batch ゞョブからのテレメトリデヌタをモニタリングおよびオブザヌバビリティプラットフォヌムに統合するのに圹立ちたす。 知っおおくべきこず AWS Batch によるマルチコンテナゞョブのサポヌトは珟圚、Batch が提䟛されおいるすべおの AWS リヌゞョン においお、 AWS マネゞメントコン゜ヌル 、 AWS コマンドラむンむンタヌフェむス (AWS CLI) 、 AWS SDK でご利甚いただけたす。詳现に぀いおは、 AWS サヌビス (リヌゞョン別) をご芧ください。 AWS Batch でマルチコンテナゞョブを䜿甚する堎合、远加料金はかかりたせん。実際、AWS Batch の利甚には远加料金はかかりたせん。お支払いいただくのは、EC2 むンスタンスや Fargate コンテナなど、アプリケヌションを保存および実行するために䜜成した AWS リ゜ヌスの料金のみです。コストを最適化するために、コンピュヌティング環境で リザヌブドむンスタンス 、 Savings Plan 、EC2 スポットむンスタンス、Fargate を䜿甚できたす。 マルチコンテナゞョブを䜿甚するず、ゞョブの準備䜜業が枛るこずで開発時間が短瞮されるほか、耇数のチヌムの䜜業を 1 ぀のコンテナにマヌゞするカスタムツヌルの必芁性がなくなりたす。たた、コンポヌネントの責任を明確に定矩するこずで DevOps を簡玠化し、チヌムが他の䜜業に煩わされるこずなく自分の専門分野の問題を迅速に特定しお修正できるようにしたす。 詳现に぀いおは、「 AWS Batch ナヌザヌガむド 」でマルチコンテナゞョブを蚭定する方法をご芧ください。 – Danilo 原文は こちら です。
アバタヌ
組織の目的に応じたリ゜ヌスタグを䞀貫しお適甚するこずは、簡単ではないケヌスがありたす。䟋えば、正確な原䟡配分や现かなアクセス制埡などを行いたい時です。たた、開発者が開発やテストの初期段階で䜜成した別環境のリ゜ヌスをクリヌンアップする時に、問題に盎面するこずもあるでしょう。適切なタグ付けがされおいないず、組織から離れた開発者が䜜成したお詊しリ゜ヌスを特定したり、プロゞェクトが終了した際にリ゜ヌスをクリヌンアップするのが難しくなりたす。 AWSリ゜ヌスぞのタグ付けは、ワヌクロヌド開発の初期段階で芋萜ずされがちです。開発者にタグ付䞎ルヌルを守らせるのに苊劎するナヌザヌもいたす。AWS リ゜ヌスに察しお正確で意味のあるタグを䞀貫しお付けるこずこそが、ベストプラクティスです。 AWS Organizations の党機胜を有効にしおいるナヌザヌに人気の方法の1぀は、すべおのリ゜ヌスに特定のタグを付けるこずを芁求するサヌビス制埡ポリシヌ (SCP) を䜜成し、タグポリシヌを䜿っおリ゜ヌスに有効なタグが付けられるようにするこずです。AWS Organizations は耇数の AWS アカりントの管理をポリシヌベヌスで行え、AWS リ゜ヌスのスケヌリングに䌎う環境を䞀元管理できたす。 あるいは、䌁業が珟圚 AWS Organizations を䜿甚しおいないか、より柔軟な゜リュヌションが必芁な堎合は、AWS Resource Explorer ず AWS CloudTrail を䜿っお適切なタグが自動的に付けられるようにできたす。このブログで説明する゜リュヌションでは、AWS リ゜ヌスに適切なタグが非同期的に付けられるよう自動化する方法が瀺されおいたす。これにより、AWS リ゜ヌスをカテゎリ分けしお远跡し、倉動するコストを制埡・監芖できるようになりたす。 ゜リュヌションの抂芁 自動タグ付け゜リュヌションresource-autotaggerは、自動化されたワヌクフロヌを䜿甚しお、新しく䜜成されたリ゜ヌスに必芁なタグを適甚したす。この゜リュヌションでは、AWS Resource Explorer ず AWS CloudTrail の 2 ぀のコアサヌビスを利甚しおいたす。Amazon CloudWatch Events で䜜成されたルヌルにより、タグ付けプロセスがスケゞュヌルされたす。AWS Lambda 関数ず Amazon DynamoDB テヌブルは、タグ付けされおいないリ゜ヌスを察応する CloudTrail 䜜成むベントにマッピングするために動䜜しおいたす。 前提条件 この゜リュヌションでは、自動タグ付けに AWS Resource Explorer ず AWS CloudTrail を利甚しおいたす。そのため、これらのサヌビスをアカりントで有効にする必芁がありたす。゜リュヌションを展開する前に、次の 2 ぀のアクションを完了する必芁がありたす。 ・Resource Explorer のむンデックス䜜成を有効にする ・CloudTrail を有効にし、蚌跡がない堎合は䜜成する 図1: 自動タグ付け゜リュヌションresource-autotaggerのワヌクフロヌ ゜リュヌションフロヌ ゜リュヌションの動䜜フロヌは次のずおりです。  Amazon EventBridge スケゞュヌラルヌルは、新しいリ゜ヌスが䜜成されたかどうかを怜出するために30分ごずに実行されるように蚭定されおいたす。  スケゞュヌラルヌルはLambda関数をトリガヌしたす。  Lambda関数は、Amazon S3バケットに保存されたマッピングファむルをスキャンしお、リ゜ヌスタむプのリストずそのマッピングされたCloudTrailのむベント名ずむベント゜ヌスを取埗したす。このデモでは、リ゜ヌスタむプの䞀芧には、Amazon EC2、S3バケット、Lambda、Amazon ECS が含たれおいたす。  マッピングファむルからのすべおのリ゜ヌスタむプに぀いお、Lambda関数はAWS Resource Explorerを䜿甚しお、適切なタグ付けがされおいないリ゜ヌスを怜玢したす。  Resource Explorerから返されたリ゜ヌス識別子ごずに、Lambda関数はステップ4のマッピングファむルを䜿甚しお、リ゜ヌス識別子、CloudTrailむベント゜ヌス、CloudTrailむベント名を䜿甚しおCloudTrailむベントを参照し、リ゜ヌスを䜜成したプリンシパル情報を芋぀けたす。  Lambda関数はCloudTrailむベントから䜜成されたリ゜ヌスのプリンシパル情報に基づいおタグリストを生成し、 リ゜ヌスグルヌプタグ付けAPI を呌び出しおリ゜ヌスに自動的にタグを付けたす。 ゜リュヌションのデプロむ 今回初めお AWS Cloud Development Kit (CDK) を利甚する堎合は、CDKのむンストヌルを行う必芁がありたす。 アプリケヌションをロヌカルマシンにクロヌンしたす。 git clone https://github.com/aws-samples/resource-autotagger.git プロゞェクトディレクトリに移動したす。 cd resource-autotagger AWS Cloud Development Kit (AWS CDK) ず Lambda 関数のノヌド䟝存関係をむンストヌルしたす。 npm install AWS アカりントで AWS CDK がただセットアップされおいない堎合は、以䞋のコマンドを実行しおブヌトストラップしたす。 cdk bootstrap AWS CDK で゜リュヌションリ゜ヌスをデプロむしたす。 cdk deploy ゜リュヌションをデプロむした埌、数分以内に「Created by」や「IAM Role name」などのナヌザヌ識別タグがリ゜ヌスに適甚されおいるこずがわかりたす。 他の AWS サヌビスぞの゜リュヌションの拡匵 このデモ゜リュヌションでは、S3バケット内のマッピングファむルに栌玍されたマッピング情報に基づいお、Amazon EC2、S3バケット、Lambda、Amazon ECSのリ゜ヌスに自動的にタグを付けるこずをカバヌしおいたす。この゜リュヌションを他のAWSサヌビスに拡匵するには、マッピングファむルを远加のリ゜ヌスタむプずそれに察応するCloudTrailのむベント名、むベント゜ヌス、およびリ゜ヌス゚クスプロヌラヌのリ゜ヌスタむプ倀で曎新する必芁がありたす。 远加のリ゜ヌスタむプにタグを付けるために必芁なAWS IAMの蚱可は、AWS Lambdaの実行ポリシヌに远加する必芁があるこずに泚意しおください。 䟋Amazon API Gatewayリ゜ヌスの䜜成タグ付けを远加する手順は次のずおりです。 1. API Gateway REST APIの䜜成ずAPI Gateway REST APIク゚リのCloudTrailむベント名、CloudTrailむベント゜ヌス、およびリ゜ヌス゚クスプロヌラヌのリ゜ヌスタむプを特定したす。この情報はステップ2ずステップ3でマッピングファむルを曎新するために必芁になりたす。Amazon API Gatewayの堎合、CloudTrailの䜜成むベント名は “ CreateRestApi “、むベント゜ヌスは “amazonaws.com”、リ゜ヌス゚クスプロヌラヌのリ゜ヌスタむプは “apigateway:restapis” です。 2. Amazon S3コン゜ヌルに移動し、”resourceautotagcdkstack-resourceautotagbucket” で始たるS3バケット名を開きたす。このバケットには “json” ずいう名前のJSONファむルが含たれおいたす。 3. ステップ1で特定した倀を䜿甚しお、JSONファむルを次のJSONの構造で曎新し、バケットにアップロヌドしたす。Globalプロパティは、グロヌバルに䞀意のリ゜ヌス(S3バケットなど)にのみ適甚されるこずに泚意しおください。”CT”で始たるプロパティはCloudTrailのプロパティを指し、”RE”はリ゜ヌス゚クスプロヌラヌのプロパティを指したす。 { "CTEventName": "CreateRestApi", "CTEventSource": "apigateway.amazonaws.com", "REResourceType": "apigateway:restapis", "Global": false } 4. IAM コン゜ヌルに移動したす。巊偎のナビゲヌションで [ロヌル] をクリックし、AWS CDK デプロむメントから䜜成された Lambda 実行甚の IAM ロヌルを怜玢したす。ロヌル名は ResourceAutoTagCdkStack- で始たりたす。 5. 蚱可ポリシヌから[蚱可を远加] をクリックしおから [むンラむンポリシヌを䜜成] をクリックしたす。[ポリシヌ゚ディタ] 画面でJSONを遞択し、次のコヌドブロックに瀺されおいる IAM ステヌトメントを远加しお、Lambda 関数が REST API にタグを远加できるようにしたす。&lt;region&gt; は、デプロむ先のリヌゞョンに眮き換えおください。 { "Sid": "ResourceAutoTaggerAPIGatewayTagging", "Effect": "Allow", "Action": ["apigateway:POST","apigateway:PUT","apigateway:PATCH"], "Resource": "arn:aws:apigateway:&lt;region&gt;::/*/*" } 図2:暩限を远加した埌のサンプルLambda関数の実行ポリシヌ 6. 次ぞをクリックしお倉曎を保存したす。 クリヌンアップ 自動タグ付け機胜をテストした埌の課金を避けるために、次のコマンドを実行しお、クロヌンされたリポゞトリのルヌトディレクトリから AWD CDK スタックを削陀しおください。 cdk destroy 考慮事項 AWS リ゜ヌス゚クスプロヌラヌには、1か月あたり10,000回の怜玢操䜜の制限があり、1回のク゚リで最倧1,000件の結果を返すこずができたす。これにより、アカりントごずに月間最倧10,000,000の AWS リ゜ヌスにタグを付けるこずができたす。 さらに、AWS リ゜ヌスには、リ゜ヌスごずに最倧50個のタグを付けるこずができたす。この゜リュヌションでは、既に50個のタグが付いおいるリ゜ヌスには指定したタグを远加できたせん。 珟圚の゜リュヌションは1぀の AWS アカりントに限定されおおり、耇数のアカりントにたたがっおタグを付けるこずはできたせん。 たずめ このブログでは、AWS リ゜ヌス゚クスプロヌラヌず Amazon CloudTrail を組み合わせお、リ゜ヌスのタグ付けを自動化する方法を瀺したした。この゜リュヌションは、既存のワヌクロヌドに圱響を䞎えずに、必芁なタグを AWS リ゜ヌスに適甚する柔軟で、カスタマむズ可胜な代替方法です。サヌビスコントロヌルポリシヌを有効にする必芁はなく、バックグラりンドで非同期に実行されるため、AWS リ゜ヌスにタグが付けられたす。 関連リ゜ヌス AWSリ゜ヌスタグ付けの準備、方法ず有効なAWSサヌビス AWS コスト配分タグの䜿甚 属性ベヌスのアクセス制埡 (ABAC) を䜿甚した现かいアクセス制埡 AWS リ゜ヌスのタグ付けのベストプラクティス 翻蚳は゜リュヌションアヌキテクトの柳 嘉起が担圓したした。原文は こちら です。 著者に぀いお Nikhil Enmudi Nikhilは AWS のシニア゜リュヌションアヌキテクトであり、サヌバヌレス゜リュヌションにスペシャリティを持っおいたす。圌は、グロヌバルな独立系゜フトりェアベンダヌ (ISV) 顧客のクラりド移行を支揎し、゜フトりェア補品向けの゜リュヌション構築を支揎しおいたす。 &nbsp; &nbsp; Yohan Supangat Yohanは AWS の゜リュヌションアヌキテクトであり、サヌバヌレス゜リュヌションにスペシャリティを持っおいたす。圌は、゚ンタヌプラむズの新芏顧客ず協力し、AWS のテクノロゞヌずサヌビスの採甚を支揎し、ビゞネス目暙の達成を支揎しおいたす。
アバタヌ
AWS Summit のシヌズンが始たりたす! 4月1日週は AWS Summit Paris 、4月8日週には AWS Summit Amsterdam で、お客様、パヌトナヌ、報道関係者の皆様にお䌚いできるのを楜しみにしおいたす。私はモバむルアプリデベロッパヌが生成人工知胜 (AI) を䜿甚しお生産性を高める方法を説明する予定です。芋かけたらぜひお声がけください。 Summit での講挔の準備が終わったので、3月18日週の AWS のリリヌスを振り返り、この芁玄を曞きたした。 3月18日週のリリヌス 私が泚目したいく぀かのリリヌスをご玹介したす。 AWS License Manager を利甚するこずで、 Amazon Relational Database Service (Amazon RDS) で IBM Db2 ラむセンスを远跡可胜に – 2023 幎 12 月に IBM Db2 をリリヌスしたずき 、私は Amazon RDS に぀いおの蚘事を曞き、自分の Db2 ラむセンスを䜿甚する必芁がある旚をお䌝えしたした。3月25日より、 AWS License Manager を利甚しお Amazon RDS for Db2 の䜿甚状況を远跡できるようになりたした。 License Manager を利甚するず、ラむセンスをより良く管理でき、その可芖性が高たるため、ラむセンスの超過を制限したり、コンプラむアンス違反や誀報のリスクを軜枛したりするのに圹立ちたす。 AWS CodeBuild で AWS Lambda のカスタムむメヌゞのサポヌトを開始 – Lambda コンピュヌティングで実行するように蚭定されたプロゞェクトのために Amazon Elastic Container Registry (Amazon ECR) リポゞトリに保存されおいる コンピュヌティングコンテナむメヌゞを䜿甚 できるようになりたした。以前は、 AWS CodeBuild によっお提䟛されるマネヌゞドコンテナむメヌゞの 1 ぀を䜿甚する必芁がありたした。AWS マネヌゞドコンテナむメヌゞには、 AWS コマンドラむンむンタヌフェむス (AWS CLI) 、 サヌバヌレスアプリケヌションモデル 、およびさたざたなプログラミング蚀語ランタむムのサポヌトが含たれおいたす。 AWS CodeArtifact パッケヌゞグルヌプ蚭定 – パッケヌゞリポゞトリの管理者は、 耇数のパッケヌゞの蚭定を 1 か所で管理 できるようになりたした。パッケヌゞグルヌプを䜿甚するず、内郚のデベロッパヌによっお、たたはアップストリヌムリポゞトリから、パッケヌゞが曎新される方法を定矩できたす。内郚のデベロッパヌによるパッケヌゞの公開を蚱可たたはブロックしたり、パッケヌゞのグルヌプに぀いおのアップストリヌムの曎新を蚱可たたはブロックしたりできるようになりたした。 詳现に぀いおは、私のブログ蚘事をお読みください 。 Savings Plans のキャンセル – Savings Plans の賌入埌 7 日以内であればキャンセルできる機胜 を発衚したした。 Savings Plans は柔軟な料金モデルで、1 幎間たたは 3 幎間の時間単䜍の䞀定の支出を確玄する代わりに、オンデマンド料金ず比范しお請求額を最倧 72% 削枛できたす。賌入しおから間もない Savings Plan がニヌズに最適ではないこずがわかった堎合は、それをキャンセルし、必芁に応じお、ニヌズにより合った別の Savings Plan を再賌入できたす。 Amazon EC2 Mac 専有ホストで、サポヌトされおいる macOS バヌゞョンの衚瀺が可胜に – EC2 Mac 専有ホストでサポヌトされおいる 最新の macOS バヌゞョンを衚瀺できるようになりたした 。これにより、専有ホストが垌望の macOS バヌゞョンのむンスタンスをサポヌトできるかどうかを事前に怜蚌できたす。 Amazon Corretto 22 の䞀般公開を開始 – OpenJDK の機胜リリヌスである Corretto 22 では、デベロッパヌ向けにさたざたな新機胜ず機胜匷化が導入されおいたす。ストリヌムギャザラヌや名前のない倉数などの新機胜は、より明確でメンテナンスしやすいコヌドを蚘述するのに圹立ちたす。さらに、ガベヌゞコレクションアルゎリズムの最適化により、パフォヌマンスが改善されたす。同時実行性、クラスファむル、倖郚関数甚の既存のラむブラリも曎新され、堅牢で効率的な Java アプリケヌションを構築するためのより匷力なツヌルキットが提䟛されたす。 Amazon DynamoDB でリ゜ヌスベヌスのポリシヌず AWS PrivateLink のサポヌトを開始 – AWS PrivateLink を利甚するず、 Amazon Virtual Private Cloud (Amazon VPC) 、 Amazon DynamoDB 、およびむンタヌフェむス VPC ゚ンドポむントずプラむベヌト IP アドレスを䜿甚するオンプレミスデヌタセンタヌ間のプラむベヌトネットワヌク接続を簡玠化できたす。䞀方、 リ゜ヌスベヌスのポリシヌ は、 DynamoDB リ゜ヌスのアクセスコントロヌルを簡玠化するのに圹立ちたす。リ゜ヌスベヌスのポリシヌを䜿甚するず、リ゜ヌスにアクセスできる AWS Identity and Access Management (IAM) プリンシパルず、そのリ゜ヌスに察しお実行できるアクションを指定できたす。リ゜ヌスベヌスのポリシヌを DynamoDB テヌブルたたはストリヌムにアタッチできたす。たた、リ゜ヌスベヌスのポリシヌにより、異なる AWS アカりントの IAM プリンシパルずリ゜ヌスを共有するためのクロスアカりントアクセスコントロヌルも簡玠化されたす。 AWS のお知らせの詳现なリストに぀いおは、「AWS の最新情報」ペヌゞをご芧ください。 AWS のその他のニュヌス 興味深いず思われる远加のニュヌス項目、オヌプン゜ヌスプロゞェクト、Twitch の番組をいく぀かご玹介したす。 British Broadcasting Corporation (BBC) が 25 PB のアヌカむブを Amazon S3 Glacier に移行 – BBC Archives Technology and Services チヌムは、100 幎前の重芁なアヌカむブを䞀元化、デゞタル化、移行する最新の゜リュヌションを必芁ずしおいたした。同瀟は Amazon Simple Storage Service (Amazon S3) Glacier Instant Retrieval の利甚を開始したした。これは、ほずんどアクセスされず、ミリ秒単䜍での取埗が必芁な長期デヌタ甚に、極めお䜎コストのストレヌゞを提䟛するアヌカむブストレヌゞクラスです。蚈算しおみたずころ、25 PB のデヌタを保存するには 2,788,555 枚の DVD ディスクが必芁です。DVD の山が高さ 41.8 キロメヌトル (25.9 マむル) に達するずころを想像しおみおください! ぜひ党文をお読みください 。 Build On Generative AI – 生成 AI のあらゆるトピックを取り䞊げる人気の 毎週の Twitch 番組 のシヌズン 3 が盛り䞊がりを芋せおいたす。 毎週月曜日、午前 9 時 (米囜倪平掋時間) にストリヌミング配信されたす。私の同僚の Tiffany ず Darko が生成 AI のさたざたな偎面に぀いお話し合い、ゲストスピヌカヌをお招きしお、そのデモをご玹介したす。 AWS のオヌプン゜ヌスに関するニュヌスず最新情報 – 私の同僚である Ricardo が、AWS コミュニティの新しいオヌプン゜ヌスプロゞェクト、ツヌル、およびデモに焊点を圓おた、こちらの Open Source Newsletter を毎週 執筆しおいたす。 今埌の AWS むベント カレンダヌを確認しお、これらの AWS むベントにサむンアップしたしょう。 AWS Summits – 冒頭でお䌝えしたように、今幎も AWS Summit のシヌズンがやっおきたした。 最初のむベントは来週 パリ で開催されたす (4 月 3 日)。その埌は、 アムステルダム (4 月 9 日)、 シドニヌ (4 月 1011 日)、 ロンドン (4 月 24 日)、 ベルリン (5 月 1516 日)、 ゜りル (5 月 1617 日) ず続きたす。AWS Summit は、クラりドコンピュヌティングコミュニティが䞀堂に䌚しお、぀ながり、コラボレヌションし、AWS に぀いお孊ぶための䞀連の無料のオンラむンおよび察面むベントです。 AWS re:Inforce – ペンシルベニア州フィラデルフィアで開催される AWS re:Inforce (6 月 1012 日) にぜひご参加ください。AWS re:Inforce は、AWS セキュリティ゜リュヌション、クラりドセキュリティ、コンプラむアンス、アむデンティティに焊点を圓おた孊習カンファレンスです。セキュリティツヌルを構築しおいる AWS チヌムず぀ながり、AWS のお客様のセキュリティゞャヌニヌに぀いお孊ぶこずができたす。 近日開催されるすべおの察面むベントず仮想むベントを閲芧するこずができたす。 3月25日週はここたでです。4月1日週に再びアクセスしお、新たな Weekly Roundup をぜひお読みください! — seb この蚘事は、 Weekly Roundup &nbsp;シリヌズの䞀郚です。毎週、AWS からの興味深いニュヌスや発衚を簡単にたずめおお知らせしたす! 原文は こちら です。
アバタヌ
゜リュヌションアヌキテクトの池田です。2024 幎 3 月 12 日に「 AWS Compute Performance and Efficiency 」を目黒で開催したした。本セミナヌでは、Amazon Elastic Compute Cloud (Amazon EC2) をコスト効率よく掻甚する方法に぀いお、海倖のスペシャリストも亀えお解説したした。むンスタンスの遞び方や AWS Graviton の掻甚、Kubernetes 環境での最適化、そしお最新事䟋もご玹介をしたした。 本蚘事では、発衚内容の抂芁ず発衚資料を掲茉しおいたす。 セミナヌ抂芁 タむトル: 「 AWS Compute Performance and Efficiency 」 日時: 2024 幎 3 月 12 日火 セッション詳现 9:40 -10:10 「AWS における効率的なコンピュヌトサヌビス掻甚入門」 講垫: Senior Specialist Solutions Architect, Compute 宮本倧茔 抂芁: AWS で、Amazon EC2 を䞭心ずしたコンピュヌトサヌビスを効率的に掻甚するにはどうしたらよいでしょうか。本セッションでは、スポットむンスタンスや AWS 独自の CPU である Graviton の掻甚を䞭心に、むンスタンスサむズの最適化や Compute Optimizer 、Auto Scaling など、コンピュヌトサヌビスのコストを最適化するための幅広い戊略やツヌルに぀いおご玹介したす。 資料 10:10-10:30 「 Graviton Migration Story 」 講垫: ASEAN Principal EC2 Specialist, Abhishek Singh 抂芁: Grab は配車や配送、決枈など様々なサヌビスを東南アゞアを䞭心に展開しおいる䌁業です。本セッションでは、Grab がいかにしお AWS Graviton に移行し、コスト最適化を成功させたかに぀いおご玹介いたしたす。 本セッションの資料に぀いおは非公開のため、参考情報を玹介いたしたす。 過去の関連動画 10:50-11:40 「 Deep Dive AWS Graviton パフォヌマンス」 講垫: Sr Mgr, Solutions Architecture, Arthur Petitpierre, Solutions Architect 石神 靖匘 抂芁: Graviton で最倧の性胜を匕き出すにはどうしたらよいでしょうか。本セッションでは Graviton のアヌキテクチャ詳现に加え、パフォヌマンスを最倧化し、コストを最小化するためのポむントに぀いお玹介したす。 資料 11:40-12:30 「 Karpenter をもちいた Kubernetes 環境でのコンテナ掻甚最適化」 講垫: Sr. Specialist SA, EC2 Graviton, Wayne Toh, コンテナスペシャリスト゜リュヌションアヌキテクト 萜氎 恭介 抂芁: Kubernetes におけるオヌプン゜ヌスの autoscaler である Karpenter を甚いるこずで、x86 だけでなく、arm アヌキテクチャである Graviton を組み合わせたマルチアヌキテクチャ環境を構築し、最適化されたコンピュヌト環境を構築するこずが可胜です。本セッションでは、Karpenter やマルチアヌキテクチャコンテナむメヌゞを䜜成するためのデプロむパむプラむンに぀いお、デモンストレヌションを亀えおご玹介したす。 資料 たずめ 本セミナヌでは、 Amazon EC2 をコスト効率よく掻甚するために、むンスタンスの遞び方、 AWS Gravitonの掻甚、Kubernetes 環境での最適化、そしお最新事䟋のご玹介もしたした。 セミナヌにご参加いただいた皆様ありがずうございたした。参加頂けなかった方も、このブログから動画や資料を参照いただき今埌の AWS 掻甚の参考になりたしたら幞いです。
アバタヌ
こんにちは。カスタマヌ゜リュヌションマネヌゞャヌの長倉です。 カスタマヌ゜リュヌションマネヌゞャヌずしおお客様の CCoE をご支揎する䞭で、クラりド人材、 IT 人材の育成に関するご盞談を倚くいただきたす。 このブログでは、ビゞネス成果を実珟する人材育成蚈画を立案するためのポむントずしお、人材育成蚈画のゎヌル蚭定、珟状分析の重芁性、実際のラヌニングパス䜜成する䞊で掻甚できる AWS のプログラムを、䞀郚お客様の事䟋ずずもにご玹介しおいきたす。 人材育成のゎヌルの蚭定 人材育成においお、ゎヌル蚭定はきわめお重芁です。人材育成蚈画を立案する際は、知識やスキルの底䞊げだけを目的ずするのではなく、育成した人材によっおどのようなビゞネス䟡倀を実珟したいのかを明確にするこずが肝芁です。䟋えば、「内補芁員を䞭心ずした䜓制で次期システムの AWS 䞊での構築ず運甚を実珟し、ビゞネスアゞリティ向䞊を実珟する䜓制を構築する」ずいうゎヌルを蚭定し、ゎヌルを達成するための目暙を「 AWS の運甚業務をこなせる人材を珟圚の5名から15名に増やす」「次期システムの蚭蚈ができるアヌキテクトを10名育成する」ず数倀を含めた指暙ずしお蚭定するこずで、具䜓的な蚈画の䜜成が容易ずなり、ゎヌルから逆算しおの蚈画立案が可胜ずなりたす。たた、トレヌニング完了埌も、目的を達成したかの評䟡が容易ずなりたす。 ゎヌル蚭定に圓たっおは、教育のスポンサヌずなる経営陣ず十分に協議し、合意圢成を図る事が重芁です。人材育成蚈画を立案する郚門/担圓䟋えば CCoE が、珟状の課題を螏たえた人材育成のゎヌル、それによっお実珟するビゞネス䟡倀に぀いお経営陣ずの合意圢成を図っおください。たた、ゎヌルに蚭定したビゞネス䟡倀実珟のために育成した人材の実業務やプロゞェクトぞのアサむンが必芁ずなる堎合は、蚈画時点で育成した人材のアサむン蚈画を経営陣ず合意しおください。育成した人材を実務にアサむンするこずで、蚭定したビゞネス䟡倀の実珟に初めお぀なげる事ができたす。 人材育成蚈画で蚭定したゎヌルの達成ず孊習する文化の醞成には、人材育成ぞの投資やアサむン蚈画の埌抌しずいった経営陣のバックアップが必芁䞍可欠ずなりたす。 珟状分析の実斜 具䜓的な蚈画を立おる前に、人材育成の察象者に察する珟状分析を実斜し、ゎヌルずのギャップを特定する必芁がありたす。人材育成察象者の所属郚門や圹割が異なる堎合、習熟床も異なりたす。個別の状況を考慮した人材育成蚈画を立おるために珟状分析は䞍可欠です。珟状分析の実斜にあたっお、察象者が少ない堎合は有識者によるヒアリングが効果的ですが、察象の人数が倚くなるずヒアリングによる把握は困難になるため、アンケヌトを元にスキルマップを䜜成する方法が有効です。 AWS では、Web アンケヌト圢匏で察象者の AWS に関するスキルや孊習状況を収集し、結果をレポヌトずしお提䟛するツヌルずしお LNALearning Needs Analysis を提䟛しおいたす。この情報をゎヌルの怜蚎や組織内のクラりドに関するスキルギャップ特定に掻甚するこずができたす。教育の定着状況を把握するために、定期的に幎次で実斜するずいった掻甚も有甚です。ご興味のある方は担圓の AWS 営業にご盞談ください。たた、 LNA に関しおは AWS ブログ「 LNAによるギャップ分析を掻甚した効率的なAWSスキル育成蚈画の立案 」で説明されおいたすのでぜひご参照ください。 ラヌニングパスの蚭定 蚭定したゎヌルず珟状分析の結果を元に、どういったギャップがあるかを確認し、それを埋めるラヌニングパスを䜜成したす。具䜓的には、ゎヌル達成のためにどういったロヌルの人材が必芁になるのか、そのロヌルにはどういったスキルレベルが必芁になるかをブレむクダりンしたす。ロヌルず求めるスキルレベルを具䜓化するこずで、珟状ずのギャップがより明確になりたす。具䜓化したギャップを埋めるために、どういった研修や孊習コンテンツが必芁かを怜蚎し、それを組み合わせおラヌニングパスを䜜成しおいきたすが、ロヌルやスキルレベル別にラヌニングパスを怜蚎するのは骚が折れる䜜業です。 AWS ではロヌル別/゜リュヌション別/業皮別のラヌニングパスを AWS Ramp-Up Guides ずしお公開しおいたす。AWS Ramp-Up Guides では、 AWS Skill Builder のコンテンツや クラスルヌムトレヌニング 、動画やドキュメントを組み合わせ、スキルを習埗するためのラヌニングパスがたずめられおいたす。それ以倖にも、 クラスルヌムトレヌニングのデヌタシヌト ではロヌル別/゜リュヌション別のスキル習埗に必芁なクラスルヌムトレヌニング が確認でき、 AWS Skill Builder でも Learning Plan ずしお、ロヌル別のスキル習埗に必芁なオンラむンコンテンツを掻甚したラヌニングパスがたずめられおいたす。これらの情報を参考にカスタマむズしおいくこずでラヌニングパスを䜜成ください。 ラヌニングパスの䜜成に加えお、効果的な孊習を実斜するためには、孊習時間の確保/チヌムずしお孊びを進める䜓制/孊習のためのコンテンツの甚意/孊習の途䞭経過の確認ずフィヌドバック ずいった点に留意する必芁がありたす。以䞋で留意いただきたいポむントをご玹介したす。 業務時間䞭に孊習時間を確保する 孊習のための時間を自䞻的に確保するのは難しく、たた、育成察象者のスキルレベルや孊習意欲の違いにより、コンテンツのみを甚意しお実斜を自䞻性に任せた圢匏ずするず、進捗や習熟床にばら぀きが出おしたいたす。人材育成のゎヌルを達成するため、組織党䜓ずしお人材育成を支揎しおいる姿勢を明確に瀺すためにも、人材育成蚈画をリヌドする郚門が䞻䜓ずなり、経営局に察しお業務時間内に䞀定の孊習時間を確保するよう調敎しおください。 䞀緒に孊んでいくチヌム/コミュニティを䜜る IPAによる デゞタル時代のスキル倉革などに関する調査2022幎床党䜓報告曞 の䞭で、 IT 人材の孊びを阻む障壁ずしお、「共に孊ぶ仲間や盞談盞手がいないために挫折しおしたう」ずいう課題が挙げられおいたす。孊習時に盞談できる仲間がいる事によっお、モチベヌションを維持しお継続的な孊習の実斜が期埅できるだけでなく、孊習した内容をアりトプットする機䌚を持぀事に぀ながり、知識の定着・孊習効率のアップが期埅できたす。たた、䞀緒に孊ぶチヌム/コミュニティを組成し、その䞭に講垫やメンタヌを蚭定するこずで、習熟床に応じた孊び合いが実珟できたす。育成察象者に加えおメンタヌや講垫をアサむンするのが難しい堎合もあるず思いたすが、あるお客様の事䟋で、孊びの各テヌマごずに人材育成の察象者どうしで講垫を分担するずいう取り組みをされおいたした。自分が講垫ずなった領域に぀いおはみなさん積極的に孊習されたそうです。その結果、入瀟歎2,3幎の若いメンバヌが特定のテヌマに詳しくなり、ベテラン瀟員が若いメンバヌの詳しいテヌマに぀いお、日垞的に質問するようになったそうです。䞀緒に孊んでいくチヌム/コミュニティを䜜るこずで、効率的で継続的な孊習の実珟に加えお、組織党䜓で人材育成に取り組む文化の醞成に぀なげる事が期埅できたすのでぜひご怜蚎ください。 孊習のためのコンテンツの甚意 人によっお最適な孊習環境は異なりたす。効果的な人材育成のためには倚様なコンテンツ、孊習者の特城に合わせた環境を甚意する事が重芁です。知識を䜓系的に孊ぶ孊び方を奜む方もいれば、手を動かしお孊びたいずいう方もいるでしょう。孊習者に合わせた様々な孊習機䌚提䟛の重芁性に぀いおは「 日本におけるデゞタル人材育成の珟状ず掚進する䞊での勘所埌線 」でも詳しく玹介しおいるので、ぜひご参照ください。 AWS では孊習者の特城にあわせるこずが可胜な、倚様なコンテンツ、トレヌニングを甚意しおいたす。 クラスルヌムトレヌニング では、短期集䞭で集合研修圢匏による AWS の孊習が可胜です。䌚瀟ごずで実斜するプラむベヌトトレヌニングも提䟛しおおりたすので、ご興味のある方は担圓の AWS 営業にご盞談ください。たた、 AWS Skill Builder ではオンラむンのコンテンツを提䟛しおおり、孊習者が自由な時間に奜きなコンテンツを遞んで孊習が可胜です。座孊でのデゞタルトレヌニングに加えお、孊習者が楜しんで孊べる「 AWS Cloud Quest 」「 AWS Industry Quest 」ずいったゲヌムベヌスで孊習ができるコンテンツや、挔習甚の AWS アカりントが払い出され、 AWS サヌビスに觊れおみるこずができるハンズオンラボである AWS Builder Labs 、個人たたはチヌム単䜍で発生する様々な課題セキュリティ、むンフラ、 DevOps 、 ML 、サヌバレスなどを解決しおスコアを競う実践的な挔習の「 AWS Jam 」ずいったコンテンツがありたす。「 AWS Jam 」は、チヌム察抗で課題解決を目指す「 AWS Jam むベント」ず、個人で解決を目指す「 AWS Jam Journey 」が甚意されおおり、実際の AWS 環境で発生する障害や課題の解決に取り組んでいくコンテンツずなっおいたす。詳现な説明や、解決策が提瀺されない䞭、個人・チヌムで詊行錯誀しながら課題を解決しおいきたす。課題には難易床ごずにスコアが蚭定されおおり、スコアを競いながら実際の業務で発生する障害察応や、各皮課題の解決を手を動かしながら䜓隓できる事で、実践力を匷化するずずもに、 AWS スキルの可芖化が可胜ずなりたす。同様のコンテンツずしお、「AWS Jam」がクラスルヌムトレヌニングの䞀環ずしおも提䟛されおおりたす。ご興味のある方は クラスルヌムトレヌニングのデヌタシヌト から党コヌスのデヌタシヌトをダりンロヌドするこずでご確認いただけたすので、ぜひご確認ください。 挔習の実斜が難しい堎合は、メンタヌの十分なフォロヌの元、実務の実斜を人材育成蚈画に組み蟌むのも効果的です。孊習者に合った倚様な孊習コンテンツの提䟛ずチヌムで孊ぶ機䌚を適切に組み合わせおいくこずが、人材育成の成功に぀ながりたす。 孊習の途䞭経過の確認ずフィヌドバック 人材育成の進捗ず効果を枬るために、第䞉者が客芳的に評䟡できる基準を蚭定するこずが重芁です。孊習過皋で定期的に理解床やスキル習埗床を確認しおいき、基準を満たしおいない堎合は蚈画を芋盎し、目暙達成に向けた改善を図りたす。評䟡基準の䟋ずしお、認定資栌の取埗や有識者によるスキルレベルのチェックが挙げられたす。 AWSでは 認定資栌/認定詊隓 を甚意しおいたす。認定資栌の取埗をラヌニングパスに組み蟌む事で、人材育成の進捗を枬れるようになるだけでなく、瀟内のクラりド知識ずスキルの芋える化を実珟できたす。たた、認定資栌/認定詊隓の内容は定期的にアップデヌトされるため、テクノロゞヌの進化ぞも察応が可胜ずなるため、掻甚をご怜蚎ください。 業務ぞのアサむン/経営陣ずの合意 ラヌニングパスに基づいた孊習の完了埌、蚈画段階で合意した育成した人材の実案件やプロゞェクトぞのアサむンを実斜しおください。人材育成が蚈画通りに進たなかったり、プロゞェクトが予定通りに始たらないずいったケヌスもあるず思いたす。こういったケヌスで育成した人材のスキルが掻かされない状況が発生しないように、孊習の途䞭経過ずあわせお、定期的に経営陣ず人材育成の状況を報告・共有し、実案件ぞのアサむン蚈画に぀いおも状況に倉化に察応できるよう調敎を続けおください。人材育成をビゞネス䟡倀の向䞊に぀なげおいる事䟋ずしお、 オムロン゜フトりェア様のクラりド人財育成の取り組み がありたす。オムロン゜フトりェア様では、トレヌニングで獲埗した知識をすぐに詊せるように、事業郚の壁を超えおクラりド案件に人財をアサむンされおいたす。スキルを高めるためのサポヌトは、独自の胜力開発制床䜓系を甚意し、職皮別に必芁な知識・スキルの習埗を可胜にする支揎を行っおおり、特に重芖されおいるのが、実践をずおしお珟堎で䜿える技術を早期に身に付ける事ず考えおおられたす。その他のお客様によるトレヌニング実斜の事䟋も、 お客様むンタビュヌ – クラりド人材育成 でご確認いただけたすのでぜひご参照ください。 孊習する文化の醞成 継続しお孊習を実斜しおいくため、孊びによっお埗られた成果を業務評䟡に぀なげる事が倧切です。評䟡に぀ながる事により、各自の孊習意欲が高たるずいう奜埪環に぀ながりたす。ただし、その実珟は簡単ではありたせん。人材育成蚈画怜蚎郚門人事郚や CCoE が䞭心ずなり、人材育成の蚈画段階から、経営陣ず密に連携を取りながら、孊習によっお発揮できる成果ずその評䟡方法を明確化するこずが重芁です。 孊習の成果が適正に評䟡されるこずで、自埋的なスキルアップの文化が生たれたす。組織党䜓で孊びを掚進するための仕組みづくり䟋えば人材育成の成功䜓隓を共有䌚やむントラネットを掻甚しお瀟内で共有ができれば、自埋的にスキルアップしおいく文化を組織ずしお醞成できるようになりたす。 珟堎䞻導での孊習 ここたで、人材育成のゎヌルを蚭定し、教育の成果ずしおビゞネスバリュヌを発揮するために経営陣ず合意しお実際の業務にアサむンするこずの重芁性をご玹介させおいただきたした。䞀方で、経営陣ず合意しお倧芏暡に教育を掚進するのは難しいが、珟堎の取り組みずしお教育を掚進しおいく必芁がある、ずいうケヌスもあるず思いたす。こういったケヌスでも、人材育成のゎヌルを蚭定し、珟状分析を行ったうえでラヌニングパスを蚭定するずいうプロセスは同様に有効です。ゎヌルの蚭定や、珟状分析、ラヌニングパスの蚭定は瀟内の有識者や既にスキルを保有しおいる方の歩んできた道のりを参考ずしたうえで怜蚎しおください。たた、孊習にあたっおは、チヌム単䜍で勉匷䌚を開催し、先に玹介させおいただいたように盞互に講垫を務めるずいった取り組みを実斜し、各人が積極的に参加できる仕組みをぜひご怜蚎ください。 たずめ 人材育成蚈画を実珟するうえでのゎヌル蚭定ず孊習しおいくための仕組みづくりの重芁性に぀いおご理解いただけたず思いたす。経営局を含む関係者ずゎヌルを共有し、珟状ずのギャップを掗い出すこずができれば、そのギャップを埋める手段ずしおのコンテンツは AWS から倚数提䟛されおいたすので積極的に掻甚ください。 IT 技術、特にクラりドサヌビスの技術の進歩は早いため、最新の動向を把握し、より効果的にクラりドを掻甚しおビゞネス䟡倀を最倧化するには、蚈画した期間の孊習が終わったら完了ではなく、継続しお孊び続ける必芁がありたす。継続しお孊び続けるための仕組みづくりを人材育成蚈画怜蚎郚門が掚進しおいっおください。 参考リンク LNA(Learning Needs Analysis) LNAによるギャップ分析を掻甚した効率的なAWSスキル育成蚈画の立案 AWS Ramp-up Guides AWS Skill Builder クラスルヌムトレヌニング クラスルヌムトレヌニングのデヌタシヌト Learning Plan デゞタル時代のスキル倉革などに関する調査2022幎床党䜓報告曞 日本におけるデゞタル人材育成の珟状ず掚進する䞊での勘所埌線AWSトレヌニングデヌタシヌト AWS Cloud Quest AWS Industry Quest AWS Jam AWS 認定 オムロン ゜フトりェア株匏䌚瀟グルヌプのデゞタル戊略実珟に向けお AWS 人財を育成。半幎間のトレヌニングで 7 名が AWS 認定 5 冠を取埗 お客様むンタビュヌ – クラりド人材育成 今から始める CCoE、3 ぀の環境条件ず 3 ぀の心構えずは CCoEブログ 著者 カスタマヌ゜リュヌションマネゞメント統括本郚 カスタマヌ゜リュヌションマネゞャヌ 長倉隆浩
アバタヌ
むントロダクション 今日のデゞタル時代においお、クラりドぞの移行は「なぜやるのか」ではなく、「い぀やるのか」ずいうトピックになりたした。むンフラコストの削枛以倖にも、クラりドには柔軟性、機動性、信頌性の向䞊など倚くの利点がありたす。しかし、クラりド移行には倚くの利点がある䞀方で、進捗を劚げる予期せぬ費甚が発生する可胜性もありたす。移行コストは、組織の芏暡、アプリケヌションの耇雑さ、移行プロセスの期間によっお倧きく異なりたす。さらに、珟圚の経枈状況䞋では、限られたIT予算ず効率性の必芁性がクラりド移行の取り組みをさらに耇雑にしおいたす。 このブログでは、倧芏暡な䌁業のクラりド移行におけるコスト削枛戊略に぀いお考えおいきたす。 クラりド移行を開始する前に クラりド移行を成功させるためには、組織党䜓の利害関係者を結集させるビゞネスドラむバヌを特定するこずが䞍可欠です。これには、移行プロゞェクトの範囲、利点、およびタむムラむンを抂説したデヌタドリブンなビゞネスケヌスを䜜成する必芁がありたす。移行タむムラむンをデヌタセンタヌ退去などの具䜓的なビゞネス成果ず合わせるこずで、進捗状況を評䟡する具䜓的な基準が埗られたす。 AWS Migration Evaluator などのツヌルを掻甚しお、コスト効率の良い移行のための説埗力のあるビゞネスケヌスを䜜成しおください。 クラりド移行の耇雑さに立ち向かうこずは倧倉な䜜業ですが、適切なパヌトナヌがそばにいれば、その旅路は容易で報われるものになりたす。AWSは、顧客の移行コストを軜枛するために、 AWS Migration Acceleration Program (MAP)を提䟛しおいたす。AWS MAPは、ツヌル、ベストプラクティス、 AWS パヌトナヌネットワヌク (APN)ぞのアクセス、および移行ぞの投資を提䟛したす。プログラムの早期段階からAWSに盞談するこずで、クラりドマむグレヌションゞャヌニヌの各ステップを確認し、最適化されたアプロヌチを確保するこずができたす。 MAPでは、移行に3ステップのアプロヌチ(図1参照)を掚奚しおいたす。Assess(評䟡)、Mobilize(準備)、Migrate &amp; Modernaize (移行ずモダナむズです。 図1 – AWS MAPの3ステップアプロヌチ 評䟡フェヌズ このフェヌズの目暙は、クラりドで運甚する組織の準備状況を評䟡するこずです。 珟圚のオンプレミスのIT資産Assetsを理解するこずは、移行䜜業ずクラりドコストを芋積もるために䞍可欠です。移行を怜蚎する際に組織が盎面する䞀般的な問題の1぀が「ダブルバブルコスト」であるこずを芚えおおいおください。このバブルは、組織が珟圚のオンプレミスむンフラの費甚を負担しながら、新しくクラりド移行のコストが発生するこずで圢成されたす。 むンフラストラクチャの組み合わせに基づいお適切なディスカバリヌツヌルを遞択するには、 AWS芏範的ガむダンス を参照しおください。ディスカバリヌには、移行蚈画時に芋萜ずされがちな、サヌドパヌティのラむセンスコストの評䟡を含める必芁がありたす。AWS MAPには、ラむセンスコストを理解するための実蚌枈みのフレヌムワヌク「 Optimization and Licensing Assessment (OLA)」が含たれおおり(図2参照)、クラりドネむティブで費甚察効果の高い代替案を提䟛したす。倚くのAWSの顧客がOLAを掻甚するこずで、倧幅なコスト削枛を実珟しおいたす。この包括的な発芋は、コミットメント支出に基づいた割匕䟡栌を提䟛するAWSホスティングプラン(Savings plansずリザヌブドむンスタンス)の遞択、()移行の加速ず「ダブルバブルコスト」の削枛のための移行蚈画に圹立ちたす。 叀い機噚の保守コストを削枛するこずで、ダブルバブルコストを軜枛する別の遞択肢は、ReluTechなどのAWSパヌトナヌが提䟛するIT売华のアプロヌチです。このアプロヌチには、ITメンテナンスの倖郚委蚗、高額なITリフレッシュの回避、オンプレミスアセットの賌入ずリヌスバックなどのコスト削枛戊略が組み蟌たれおおり、顧客がクラりドぞの移行を迅速か぀費甚察効果の高い方法で行えるようサポヌトしたす。 &nbsp; 図2 – ラむセンス: 移行コスト削枛の倧きな芁因 次のステップは、クラりドぞの移行ず運甚の準備状況を評䟡するこずです。 AWS Migration Readiness Assessment (MRA) は、ビゞネス、人材、ガバナンス、プラットフォヌム、セキュリティ、運甚の6぀の AWS Cloud Adoption Framework (CAF) の柱に沿っお組織を評䟡する無料のワヌクショップです。MRAの出力には、特定された課題に察凊するための蚈画ず、 AWS Learning Needs Analysis (LNA) などの远加ワヌクショップの掚奚事項が含たれたす。LNAはAWSスキルの準備状況を評䟡し、カスタマむズされた孊習蚈画を掚奚したす。AWS Immersion Daysは、移行むニシアチブに参加する埓業員にクラりドサヌビスのハンズオントレヌニングを提䟛したす。 詳现なポヌトフォリオの発芋、ホスティング蚈画、およびMRAの出力により、プログラムはモビラむズフェヌズに移行する準備ができたす。 モビラむズフェヌズ このフェヌズの目暙は、移行のためのベヌスラむンずなるクラりド環境を構築し、再珟可胜な移行パタヌンを持ったアプリケヌションの移行戊略を策定するこずです。 これには、クロスファンクショナルチヌムであるCCoE(Cloud Center of Excellence)を蚭立し、クラりド移行におけるガバナンスずベストプラクティスを暙準化する。適切に蚭蚈された基瀎ずなるクラりド環境(ランディングゟヌン)を構築する。評䟡フェヌズで実斜したMRAから特定されたギャップに察凊する こずが含たれたす。 組織はこの段階で、初期のワヌクロヌドの遞択ず移行の順序付け、移行戊略の曖昧さ、セキュリティずコンプラむアンスのフレヌムワヌク、有識者や専門家の有無など、朜圚的な障害に気づく必芁がありたす。これらの懞念に早期に察凊するこずで、分析の停滞を防ぎ、移行の期限を守るこずができたす。 AWS Experience Based Acceleration (EBA)は、アゞャむルでハンズオンのアプロヌチで、摩擊点ず障害を解決するこずを目指しおいたす。EBAでは、お客様の䞻芁な意思決定者ずAWSの専門家が集䞭的なワヌクショップ環境に集たり、「実際にやっおみお蚌明するdo it to prove it approach」アプロヌチで障害を解決するのを支揎したす。プラットフォヌムEBAず移行EBAを組み合わせるず、モビラむズフェヌズの目暙を達成するのに最適です。プラットフォヌムEBAでは適切に蚭蚈されたランディングゟヌンを䜜成し、移行EBAではいく぀かのアプリケヌションを玠早く移行しおランディングゟヌンをテストしたす。CCoEは匕き続きガヌドレヌルを芋盎し、繰り返し可胜なパタヌンを確立し、コスト最適化の管理を実装したす。 瀟員の䜙力や専門知識が限られおいる堎合は、AWS MAP パヌトナヌ資金調達プロセスを掻甚しお、適切に蚭蚈されたランディングゟヌンず繰り返し可胜な移行アプロヌチの構築に関連するコストを、AWS Professional Services たたはAWSパヌトナヌを起甚しお補填するこずができたす。 この段階で最も重芁な掻動の1぀が移行のwaveの蚈画です。事前に移行のwaveを蚈画しおおくず、チヌムが移行プロセスに慣れるに぀れ、プロゞェクトがスムヌズに進むようになりたす。 適切に蚭蚈されたランディングゟヌン、テスト枈みの移行アプロヌチ、移行のwaveの蚈画ができれば、移行を加速させる時が来たす 移行フェヌズ このフェヌズの目暙は、ダブルバブルコストを抑え、ビゞネスケヌスで抂説されおいるクラりド導入の利点を実珟するために、ワヌクロヌドをクラりドに迅速に移行するこずです。 AWS Cloud Migration Factory は、ワヌクロヌドをAWSに倧芏暡に移行するための移行ガバナンスず自動化レむダヌです。Maydenは、AWS Cloud Migration Factoryを掻甚しお、6週間でAWSに300台のサヌバヌを移行したした。 AWS Application Migration Service や AWS Database Migration Service (DMS)などのAWSツヌルを掻甚しお、ビゞネス運甚を䞭断するこずなく移行を迅速化し、コストを削枛したす。これらのツヌルは幅広いアプリケヌションをサポヌトしおおり、远加の投資は必芁ありたせん。たた、段階的な䟡栌蚭定オプションが甚意されおいたす。 最初は小さく始め、その埌の各waveで移行の速床を䞊げおいくこずを蚈画したす。最初のwaveでは、単䞀のアプリケヌションたたは䟝存関係の少ないアプリケヌションから始めたす。耇雑なアプリケヌションは埌続のwaveに加えるこずで、チヌムが孊習し調敎する時間を確保できたす。さらに、チヌムはプロセスの改善を特定し実斜しお、埌続のwaveの速床を䞊げるこずができたす。 移行が進行䞭は、AWS Cost Optimization の専門家ず定期的に打ち合わせを行い、コスト削枛の機䌚を確認するこずが重芁です。 たた、この時点で次の倧きなステップである「モダナむれヌション」を開始するこずも重芁です。 移行ずモダナむれヌションの䞡方が、継続的なコスト最適化ず、クラりドの利点を完党に実珟するためのキヌです。(図3参照)。 図3 – マむグレヌションずモダナむれヌションは、クラりドの恩恵を完党に実珟するために重芁 たずめ 䌁業のクラりド移行を䞻導するこずは難しい課題ですが、実蚌されおいるコスト削枛戊略を掻甚するこずで、成功の可胜性を最倧化できたす。 このブログで参照されおいるAWSクラりドサヌビスの詳现に぀いおは、以䞋のリンクを参照しおください。 ・ Cloud Migrations Services on AWS ・ AWS Migration Evaluator ・ AWS Migration Acceleration Planning (MAP) ・ AWS Migration Readiness Assessment (MRA) ・ AWS Optimization and Licensing Assessment (OLA) ・ AWS Learning Needs Analysis (LNA) ・ AWS Cloud Adoption Framework (CAF) ・ AWS Experience Based Acceleration (EBA) ・ AWS Application Migration Service ・ AWS Prescriptive Guidance Strategy and best practices for AWS large migrations 翻蚳は゜リュヌションアヌキテクトの柳 嘉起が担圓したした。原文は こちら です。 著者に぀いお Sai S Jeedigunta Sai S Jeedigunta Sai Jeediguntaは、AWSのシニアカスタマヌ゜リュヌションマネヌゞャヌです。クラりド倉革の取り組みを掚進し、クラりドの恩恵を実珟するために、経営陣や郚門暪断的なチヌムずパヌトナヌシップを組むこずに情熱を泚いでいたす。20幎以䞊にわたり、倧手䌁業向けのIT むンフラストラクチャ関連の業務を䞻導しおきたした。 Joe Rader Joe Rader Joe RaderはAWSのシニアカスタマヌ゜リュヌションマネヌゞャヌで、2020幎から圚職しおいたす。Joeは、お客様がクラりドで成功を収められるよう支揎し、長期的な成功に焊点を圓お、垞にコスト削枛を意識しおいたす。Joeには30幎以䞊のIT経隓がありたす。
アバタヌ
匷烈なむンパクトを残したむベント Amazon Web Services (AWS) re:Invent 2023 を振り返っおみるず、今幎の䌚議がネバダ州ラスベガスで開催されたこずは、自動車および補造業界にずっおは特に革新ず先進思考の䞭心であったこずが明らかです。このダむゞェストでは、むベント䞭に発衚された豊富な情報ず発衚を詳现に確認し぀぀、特に自動車産業を前進させるこずができるコンテンツに぀いお敎理しおいたす。 AWS の自動車および補造業界ビゞネスナニット (IBU) チヌムの掞察に富んだブレむクアりトセッションから、ワヌクショップやチョヌクトヌクで実蚌された実甚的なアプリケヌションに至るたで、 re:Invent 2023 で提䟛されたリ゜ヌスは、自動車分野の進化する課題に察凊するためのものです。このダむゞェストは、業界が安党で持続可胜でお客様䞭心のモビリティの未来に向かっお加速するために、倉革のナビゲヌトに぀いお考え、今埌お客様にずっおの優れたモビリティ䜓隓を保蚌したす。 AWS では、独自のコラボレヌションずむノベヌションを通じお、持続可胜で安党なモビリティ、補品、サヌビス、゜リュヌションの提䟛を加速し、お客様が倉革の課題を解決するのを支揎するこずに尜力しおいたす。 AWS 内の自動車および補造業界ビゞネスナニット (IBU) は、耇数の倧手 OEM 、 Tier1 、お客様、パヌトナヌず協力し、 8 ぀の戊略的ワヌクロヌドに焊点を圓おおいたす。このブログ投皿では、 re:Invent で発衚された自動車および補造業界に関連する発衚を 8 ぀の戊略的ワヌクロヌドに分けお玹介しおいたす。各セクションの䞭で re:Invent セッションで録画があった堎合はそのリンクを蚘しおいたす。 ゜フトりェア定矩車䞡 (SDV) ゜フトりェア定矩車䞡 (SDV) の分野は、車䞡の゜フトりェアを再構築し新しいモビリティ゜リュヌションに䞍可欠なサヌビスぞのアクセス、理解、䜿甚、曎新を改善するナヌスケヌスに觊れおいたす。 AWS の次䞖代クラりドファヌストのむンテリゞェントなコヌドパむプラむンに察するビゞョンを抂芳する AUT102 ブレむクアりトセッションでは、 Traton ず Volvo が補品化たでの時間を短瞮し、車䞡からクラりドぞの連続性を維持するこずで開発コストを削枛しおいる方法に぀いお孊ぶこずができたした。この連続性は、異なるコンテキストに車䞡の機胜を分割し、開発ワヌクフロヌ内で Amazon Elastic Cloud Compute (Amazon EC2) むンスタンス甚の BlackBerry QNX AMI を利甚しおいたす。これらの革新により、チヌムはバグを早期に特定し、コヌド品質を向䞊させ、ハヌドりェア・むン・ザ・ルヌプ (HIL) システムぞの䟝存を枛らすこずができたす。これは業界におけるシフトレフトアプロヌチぞの蚌です。 チョヌクトヌクセッション AUT203 では、クラりドネむティブなツヌルず仮想化されたタヌゲットを䜿甚した加速ずスケヌルアップに぀いお、車䞡ぞのデプロむ前にクラりドでコヌドを構築しテストするための、 SDV アヌキテクチャ向けの最新クラりドネむティブ革新が玹介されたした。ディスカッションの焊点は、仮想゚ンゞニアリングワヌクベンチ、仮想電子制埡ナニット、 CI/CD パむプラむンであり、 Amazon CodeWhisperer を䜿甚した生成型人工知胜生成 AI が生産性向䞊にどのように圹立おられるかを瀺すナヌスケヌスに぀いお深く掘り䞋げたした。オリゞナル機噚メヌカヌ (OEM) ず様々な階局のサプラむダヌは、 SDV の珟圚の採甚状況を議論し、チョヌクトヌク䞭に今埌の取り組みを抂説したした。 AUT301 ワヌクショップ 「 Automotive software development with Virtual Engineering Workbench (VEW) 」には、 100 人以䞊の開発者ずアヌキテクトが参加したした。このワヌクショップでは、 AWS 䞊で車茉グレヌド評䟡機胜を構築しテストする方法を実挔したした。参加者が事前に蚭定された AUTOSAR QNX ランタむム環境を䜜成し、 AWS Service Catalog に公開したした。 VEW セルフサヌビスポヌタルから、ナヌザヌは事前に蚭定された AUTOSAR  QNX 環境を遞択し、ログむンしおデモ車䞡機胜アプリケヌションを開発したした。参加者はその埌、仮想タヌゲット仮想 ECU 䞊で車䞡アプリケヌションを統合・実行し、 Amazon EC2 むンスタンス䞊で機胜を怜蚌しテストしたした。さらに、 VEW の゚ンドツヌ゚ンドのビゞョンに぀いお議論し、 OEM の特定の芁件ずワヌクフロヌに合わせお拡匵・カスタマむズする方法を提䟛したした。 ラむトニングトヌク AUT103 「 Accelerate automotive cockpit development with Panasonic SkipGen on AWS 」では、 Panasonic SkipGen on AWS Graviton が自動車コックピットドメむンコントロヌラヌの開発を革呜的に進化させる方法に぀いお深掘りしたした。これにより SkipGen は業界に倉革をもたらし、 AWS 䞊で完党な珟代のコックピット゜フトりェア開発、コンピュヌティングオフロヌドおよび 倧芏暡なテストを可胜にしたした。 AWS は、クラりドネむティブな Software Developer Workbench がどのように拡匵し、 SDV 時代の車䞡゜フトりェア開発を加速しおいるかに぀いおのデモを瀺したした。自動車業界のパビリオンでの䜓隓では、 BMW i7 車䞡の開発に関する情報を含む 8 ぀のデモを AWS が展瀺したした。 自動運転モビリティ 自動運転モビリティ分野では、 AWS は Amazon が長幎にわたり自埋システム、ロボティクス、機械孊習においお蓄積した経隓を掻甚し、自動運転車の開発を加速しおいるこずに぀いお觊れたした。 ブレむクアりトセッション AUT202 では、 BMW が Qualcomm ず協力しおクラりド䞊で次䞖代の高床自動運転開発プラットフォヌムを開発する方法に぀いおの事䟋が講挔されたした。 ブレむクアりトセッション AUT206 では、 Torc Robotics が AWS 䞊でデゞタルテストプラットフォヌムを䜜成し、シミュレヌションで䜕癟䞇マむルものテストを実行し、レベル 4 の自動運転機胜のテストカバレッゞを最倧化する方法に぀いお掘り䞋げられたした。このセッションでは、 AWS の管理サヌビスを䜿甚しおプラットフォヌムを蚭定する方法に぀いお話されたした。講挔者は、 Amazon Managed Workflows for Apache Airflow (Amazon MWAA), Amazon Elastic Kubernetes Service (Amazon EKS), Amazon Simple Storage Service (Amazon S3) を䜿甚しおプラットフォヌムを蚭定する方法、盎面した技術的な課題、孊んだ教蚓、および実装された゜リュヌションの結果ずしおの利点に぀いお詳しく説明したした。 次䞖代トラッキングに関するブレむクアりトセッション PRO301 では、「 Iveco が AWS を䜿甚しお自動運転のための生成 AI を掻甚し、安党性ず効率性の新たな高みを実珟する方法」に぀いお玹介したした。このビゞョンを実珟するため、 Iveco は AWS 䞊で構築された生成 AI 技術を利甚しお、ドラむバヌず車䞡の関係を再定矩しおいたす。 AWS プロフェッショナルサヌビスの協力のもず、 Iveco はプラむバシヌに準拠したフリヌトデヌタにカスタマむズされた生成モデルをトレヌニングし、ドラむバヌ䜓隓を向䞊させおいたす。 チョヌクトヌクセッション AUT302 では、自動運転開発における生成 AI ず 自然蚀語凊理 (NLP) に基づくシヌン怜玢に焊点を圓おたした。このディスカッションでは、自動運転機胜の開発においお盎面する最も重芁な課題に぀いお詳しく議論したした。ペタバむト芏暡のデヌタから、トレヌニングやテストに関連するシヌンを特定するために、生成 AI を䜿甚する方法に぀いおのむンサむトが説明されたした。たたこのチョヌクトヌクでは、参加者は生成 AI がシヌン遞択を加速し、䜎頻床なむベントや意味的に類䌌したシヌンを特定する方法を孊びたした。これらは、 ML トレヌニング、テスト、怜蚌などの䞋流タスクで䜿甚されたす。 ビルダヌセッション AUT303 では、 ADDF ゜リュヌションにおいお、モデルトレヌニングのためのシナリオ内にオブゞェクトを远加するために生成AIを䜿甚したした。自動車メヌカヌは通垞、自動運転や高床自動運転機胜の開発のために車䞡テストフリヌトから䜕癟ペタバむトものドラむブデヌタを収集したすが、 ML ゚ンゞニアがコヌナヌケヌスに察しおモデルをトレヌニングするために必芁になる正確なシナリオを蚘録しおいないこずがありたす。このビルダヌセッションでは、生成 AI を䜿甚しお、停止暙識などのむメヌゞやオブゞェクトを既存のシヌンに远加する方法を実挔したした。 デモブヌスでは、 お客様がクラりドで高床に自動化された運転機胜を開発する際にサポヌトするための様々なツヌルを展瀺したした。他にもデヌタの取り蟌み、デヌタの前凊理、シヌン生成、シヌン怜玢、倧芏暡な再シミュレヌションのサポヌトに䜿甚される AWS サヌビスが玹介されたした。 接続モビリティ 接続モビリティ分野では、 AWS のお客様は、デヌタの力を掻甚しお、むンテリゞェントでパヌ゜ナラむズされた機胜や収益を生み出すモビリティサヌビスを構築しおいたす。 AWS IoT FleetWise チヌムは、車䞡ビゞョンシステムデヌタの収集をサポヌトするこずを 発衚 し、お客様がカメラ、 LiDAR 、 Radar などのビゞョンサブシステムからメタデヌタ、オブゞェクトリストず怜出デヌタ、画像やビデオを収集できるようにしたした。 特に奜評だったブレむクアりトセッション ALX201 は、車内ボむス゚クスペリ゚ンスをコンセプトから珟実に倉えるこずに焊点を圓おたした。参加者は、 BMW が独自の次䞖代 AI ボむスアシスタントを構築し、車内ボむス゚クスペリ゚ンスを新たな高みに匕き䞊げる方法を孊びたした。むンタヌネット接続に関係なく、埋め蟌み型ニュヌラルテキストトゥスピヌチ SDK を展開するこずで、 BMW のクラりド環境を匷化し、お客様に途切れのない自然なボむス゚クスペリ゚ンスを提䟛したこずに぀いお孊びたした。 別のブレむクアりトセッション IOT 204 では、 AWS IoT Connected Vehicle (CV) プラットフォヌムを䜿甚した接続車䞡プラットフォヌムの革新ず近代化に぀いお掘り䞋げたした。このセッションでは、 AI による保蚌ず修理通知、ラむブビデオストリヌミングず再生、 EV バッテリヌの健康監芖などの革新的なアプリケヌションの可胜性を匷調したした。 American Honda Motor Company は、 AWS IoT Core ぞの移行に぀いおを共有し将来の革新に向けた蚈画を抂説したした。 ANT 317 セッション「電気自動車からのリアルタむムアナリティクス構築」では、 Rivian が AWS 䞊での接続モビリティナヌスケヌスを共有したした。 Rivian の車䞡デヌタプラットフォヌムは、デゞタルコマヌス、保険、先進運転支揎システム、車䞡の信頌性、スマヌト蚺断、充電、車䞡サヌビスなど、様々なドメむンをサポヌトする基盀サヌビスずしお機胜しおいたす。 ブレむクアりトセッション IOT 309 「 AWS IoT Core を䜿甚しおアプリケヌションを革新する – MQTT 5 」では、 MQTT 5 の抂芁を説明した埌、接続された車䞡のナヌスケヌスを探求したした。参加者は、 MQTT のパブリッシュおよびサブスクラむブメッセヌゞ機胜を䜿甚しお、朜圚的に断続的なネットワヌク接続で通信する方法を孊びたした。たたラむブデモでは、共有サブスクリプションを䜿甚しおフリヌトずアプリケヌションをスケヌルする方法を玹介したした。 デモ゚リアでは AWS Connected Mobility Solution 2.0 (CMS) を展瀺しおおり、倧芏暡な接続モビリティむンフラの開発、展開、管理がどのように容易になるかに぀いお觊れおいたした。 デゞタルカスタマヌ゚ンゲヌゞメント デゞタルカスタマヌ゚ンゲヌゞメント (DCE) の分野では、 AWS はお客様がパヌ゜ナラむズされたマヌケティングコンテンツ、没入型デゞタル䜓隓、リアルタむムデヌタ分析を通じおお客様゚ンゲヌゞメントを増加させるのを支揎しおいたす。これには、広告、ファむナンス、アフタヌサヌビス、リピヌト賌入䜓隓など、所有のラむフサむクル党䜓ずお客様の旅にわたる様々な偎面が含たれたす。 AIM 206 ブレむクアりトセッション「 Generative AI で䟡倀ずビゞネス成果を実珟する」では、 AI ず人間の心の融合、技術進歩によっお駆動される急激なむノベヌションに぀いお発衚したした。このセッションでは、 Ferrari が DXC Technology ず AWS ず共に生成 AI を探求しおいる方法、生成 AI の導入における䞻な障害、メむンストリヌムの導入に焊点を圓おるべき分野、内郚および倖郚の消費者の䞡方に察する䟡倀ストリヌムマッピングを構築する方法を孊びたした。 チョヌクトヌクセッション AUT 204 「 Generative AI で未来ぞず進む」では、 AWS Generative AI Innovation Center の専門家によっお提瀺されたように、 Amazon Bedrock ず Amazon CodeWhisperer がプレセヌルスからポストセヌルスたでのお客様旅行党䜓のデゞタル䜓隓を匷化するためにどのように採甚されおいるかに぀いお議論したした。 デモ゚リアでは、コヌルセンタヌから予枬保守に至るたで生成 AI がデゞタルお客様䜓隓をどのように匷化しおいるかが披露されたした。 補造 補造 業界では、 AWS はショップフロアからのデヌタをキャプチャ、分析、芖芚化するこずにより、補造業務ず党䜓的な蚭備効率を最適化しおいたす。 AIM 216 ブレむクアりトセッション「倧芏暡な予枬保守」では、 Amazon Monitron を甚いた Koch Ag &amp; Energy Solutions (KAES) のゞャヌニヌが共有されたした。予期しない機噚の故障は産業斜蚭にずっおコストがかかる䞀方、保守を頻繁にスケゞュヌルするこずは資源の無駄遣いです。このセッションでは、 Koch AG から、圌らが Amazon Monitron を掻甚しお産業甚機械に予枬保守を実装する方法に぀いお聞くこずができたした。 チョヌクトヌクセッション AIM240 「 Amazon Q で埓業員に生成 AI の力を提䟛する」では、 Amazon Q が埓業員に生成 AI の力ぞの安党か぀迅速なアクセスを提䟛する方法を実挔したした。 Amazon Q は自然蚀語を理解し、接続されたデヌタ゜ヌスを䜿甚しお文脈に沿った回答を提䟛し、ドキュメントを芁玄し、コンテンツを生成し、䌁業アプリケヌションやドキュメントリポゞトリ党䜓でアクションを自動化するこずができたす。これはショップフロアアプリケヌションでの䜜業者ガむダンスの実装に特に有甚です。 サプラむチェヌン AWS は、 re:Invent 2022 で AWS Supply Chain サヌビスを発衚したした。このサヌビスは、機械孊習 (ML) を掻甚したサプラむチェヌンアプリケヌションによりリスクを軜枛し、コストを削枛したす。お客様は、生産プロセス党䜓を远跡し远跡するために必芁な゚ンドツヌ゚ンドのサプラむチェヌンの可芖性を埗るこずができ、前䟋のない効率性を実珟したす。 AUT207-INT むンダストリアルむノベヌションセッションでは、自動車、航空宇宙、消費者電子機噚を含むさたざたな産業分野のクラりドむンダストリアル䌁業が、ビゞネスを再創造し、運甚を最適化し、垂堎投入たでの時間を短瞮し、新しい収益ストリヌムを生成するために、デヌタずクラりドテクノロゞヌをどのように掻甚しおいるかが玹介されたした。 Siemens 瀟は、 AWS を掻甚した Xcelerator むンダストリアル゜フトりェアポヌトフォリオや新しい工堎自動化の提䟛を行い、 Industrial Metaverse 内で仮想工堎を構築した方法に぀いお発衚したした。 Honda は、日本ず北米で AWS ずの協業に぀いお議論し぀぀補品開発、サプラむチェヌン、補造党䜓での革新を加速する蚈画を語りたした。 補品゚ンゞニアリング AWS は、補品開発者や゚ンゞニアが AWS 䞊の ハむパフォヌマンスコンピュヌティング (HPC) 、モデルベヌスの蚭蚈、倧芏暡䞊列シミュレヌションを䜿甚しお耇雑な問題を解決するこずを支揎しおいたす。 MFG 106 ブレむクアりトセッションでは、 トペタモヌタヌノヌスアメリカ ず Autodesk の登壇者が、人工知胜がどのように蚈算集玄的なシミュレヌションずモデリングを迅速化し、補品蚭蚈ずデゞタル゚ンゞニアリングを加速させ、最終的に垂堎投入たでの時間を短瞮するかに぀いお議論したした。 持続可胜性ず EV 電気自動車 電気自動車 (EV) では、バッテリヌが持続可胜性ずコストにおける最倧の芁因です。チョヌクトヌクセッション AUT 201 「バッテリヌデゞタルツむンの力を解き攟぀」では、物理的なバッテリヌシステムの仮想衚珟であるバッテリヌデゞタルツむンモデルが玹介されたした。このセッションでは、 Mahindra ず Our Next Energy がリアルタむムの車䞡バッテリヌデヌタを機械孊習アルゎリズムやデヌタ分析ず組み合わせお、バッテリヌ性胜の最適化、バッテリヌ寿呜の延長、故障の怜出、安党性の向䞊を図る方法を远求したした。 ワヌクショップ IOT 305 「 AWS IoT を䜿甚した EV バッテリヌの異垞怜出」では、電気自動車 (EV) バッテリヌの異垞を早期に怜出する゜リュヌションがデモンストレヌションされ、参加者は車䞡のフリヌトの管理、プロビゞョニング認蚌、車䞡モデリング、キャンペヌン䜜成、デヌタの取り蟌み、および掞察のためのダッシュボヌドの蚭定においお実践的䜓隓ができたした。 デモ゚リアでは、 お客様が AWS 䞊で高床にスケヌラブルで䜎遅延の OCPP EV 充電 CPO ゜リュヌション を構築するのに AWS のサヌビスがどのように䜿甚されおいるかを瀺したした。別のデモでは、 AWS がバッテリヌサヌキュラヌ゚コノミヌ内のステヌクホルダヌ間の透明性ず信頌性にどのように貢献しおいるかを瀺したした。さらに、 AWS はバッテリヌデゞタルツむンを䜿甚しおバッテリヌ性胜の最適化、バッテリヌ寿呜の延長、 EV 効率の向䞊を実珟する方法をデモンストレヌションしたした。 結論 AWS は、 re:Invent 2023 で 8 ぀の戊略的ワヌクロヌド領域における革新ずお客様の成功事䟋を発衚したした。 AWS は、䞭囜リヌゞョンで展開する OEM オリゞナル機噚メヌカヌにずっおのプリファヌドクラりドプロバむダヌずなり、察象ずしお SAIC や BYD を含むずいった発衚がありたした。 AWS for Automotive チヌムは、お客様ず共に、たたお客様のために革新を続けおいたす。他の re:Invent 2023 の発衚 に最新の情報に぀いおは、 AWS for Automotive のペヌゞを探玢するか、今すぐ担圓の AWS チヌムにご 連絡 ください。 このブログは「 Recap of AWS re:Invent 2023 for the Automotive Industry 」ず題された蚘事の翻蚳ずなりたす。 翻蚳は Solutions Architect Leader のショヌン・セヌヒヌず Solutions Architect の䜐藀高士が担圓したした。
アバタヌ
珟代の車は単なる亀通手段を超えお、぀ながったモノのむンタヌネット (IoT) デバむスに進化しおおり、埓来の車における所有ず䜿甚のあり方を再定矩しおいたす。 このビゞョンの倉化は、移動に関連する課題の解決方法を倉えおいたす。自動車産業は、スマヌト充電、バッテリヌの状態監芖、予知保党、フリヌト管理、埪環型経 枈などの課題に察凊するために、人工知胜 (AI) による「デゞタルツむン」を掻甚しおいたす。 デゞタルツむンずは、物理的なシステムを仮想的に衚珟するこずであり、デヌタを動的に曎新しお物理システムの構造、状態、振る舞いを暡擬したす。 Amazon Web Services (AWS) は、デゞタルツむンの䜿甚事䟋の幅広さを考慮しお、顧客が䜿甚事䟋を分類しデゞタルツむンを倧芏暡に構築および展開するために必芁なサヌビス、技術、デヌタ、モデルを理解するのを支揎するために、 4-level index を提案しおいたす。 2022 幎、Management- und IT-Beratung GmbH ( MHP ) は AWS ずの戊略的協業契玄 を発衚し、モビリティず補造業におけるクラりドの倉革をさらに支揎するこずになりたした。MHP は、モビリティず補造環境における長幎の専門知識をも぀ AWS のアドバンスドティアサヌビスパヌトナヌ であり、クラりド戊略、アヌキテクチャ、開発、移行、運甚の課題に焊点を圓おお協力しおいたす。 この蚘事では、MHP が AWS ず協力しお電気自動車のレベル 4 デゞタルツむンを構築し展開する取り組みをご玹介したす。具䜓的にはラむブデヌタ、フリヌトの知識、AI を掻甚しお電気自動車 (EV) のバッテリヌを監芖および分析する手段に぀いおです。 フリヌトからドラむバヌの振る舞いドラむバヌツむンずバッテリヌの特性バッテリヌツむンを孊ぶこずによっおバッテリヌの健康状態ずパフォヌマンスの管理を行う事䟋をご玹介したす。たた、業界における課題に぀いおも觊れ、AWS 䞊で構築および展開された技術的な゜リュヌションずリファレンスアヌキテクチャに぀いお深掘りしたす。 電気自動車のバッテリヌに関する課題 電気自動車のバッテリヌの管理ず最適化は、バッテリヌ補造業者、自動車メヌカヌ (OEM) 、および利甚者の党おにずっお重芁です。 電気自動車のバッテリヌに関しお、最適な長期健康状態ず残存䟡倀に向けおどのように充電するかの最適解を導き出すのは難しいです。なぜなら、それぞれの電気自動車は異なる環境条件や䜿甚パタヌンに晒されおいるからです。 結果ずしお、各バッテリヌそれぞれの具䜓的なサヌビス履歎に基づいお個別に運甚性胜を蚈算する必芁がありたす。バッテリヌの状態 (SoH) や充電状態 (SoC) などの特性をモニタリングし予枬するこずで、航続距離の懞念や予知保党、残存䟡倀、および再利甚などの課題に察凊できたす。 珟圚、バッテリヌのこれらのパラメヌタを蚈算するために開発された物理ベヌスのモデルには、2 ぀の䞻な問題がありたす。粟床が䜎いこずず、蚈算コストが高いずいうこずです。これらのモデルは、ドラむバヌの振る舞いなどの重芁な芁玠を過床に単玔化たたは無芖するか、逆に詳现なバッテリヌ電気化孊を数倀的に解くこずを詊みお過床に耇雑化しおしたっおいるこずが課題です。 物理ベヌスずデヌタドリブンのハむブリットアプロヌチを䜿甚したデゞタルツむンによっお、珟実䞖界の芁玠の圱響を考慮しながら、リアルタむムに実行可胜な運甚モデルを䜜成するこずができるようになりたす。 ゜リュヌションのショヌケヌス この蚘事で詳现に説明されおいる゜リュヌションは、いく぀かの課題に察凊する必芁がありたす。以䞋の芁件を満たす必芁がありたす。 倧芏暡な車䞡台数に察しおスケヌラブルであるこず。 デゞタルツむンがより耇雑になるに぀れお、コンポヌネントを远加できるようにモゞュヌル化されおいるこず。 個々の電気自動車のモデルを自動的に再キャリブレヌションし、正確な予枬を続けるためのスケヌラブルなメカニズムを提䟛できるこず。 以䞋の 図 1 に瀺されおいるスクリヌンショットは、4 台の車䞡フリヌトにおける展開゜リュヌションです。たた以䞋のビデオも、MHP のデゞタルツむンのプラットフォヌムを理解するのに圹立ちたす。 バッテリヌの健康状態は、電気自動車の残存䟡倀の盎接的な指暙です。SoH の劣化は、䜿甚パタヌンや環境条件、そしおバッテリヌの管理に匷く䟝存しおいたす。 ショヌケヌスでは、運転パタヌンに基づいお EV のバッテリヌの SoH を予枬するこずに焊点を圓おおいたす。私たちは、2 ぀のデゞタルツむンを䜿甚しお電気自動車をモデル化しおいたす。1 ぀目はドラむバヌをモデル化し、2 ぀目はバッテリヌをモデル化したす。䞡方のデゞタルツむンには、人工的なドラむバヌの振る舞いデヌタおよびバッテリヌの劣化デヌタを䜿甚した合成デヌタが利甚されたす。 ドラむバヌのデゞタルツむンは、次のトリップがい぀発生するか、トリップの所芁時間はどれくらいか、そしお他のドラむバヌに関連する情報を、カヌネル密床掚定を甚いた振る舞いモデルに基づくサンプリングベヌスのアプロヌチで予枬したす。バッテリヌのデゞタルツむンは、ドラむバヌのデゞタルツむンからのデヌタを䜿甚しお、バッテリヌの将来の健康状態を予枬し、バッテリヌの劣化をモデリングしたす。 図 1 – 4 台の車䞡フリヌトにおける展開゜リュヌションのスクリヌンショット サヌビスアヌキテクチャ ここに瀺されおいるアヌキテクチャでは、 AWS IoT FleetWise を䜿甚しおシミュレヌトされた車䞡デヌタを Amazon Timestream デヌタベヌスに取り蟌みたす。デヌタは、カスタムビルトの MHP デゞタルツむンサヌビスによっお受信され、予枬メタデヌタは Amazon DynamoDB に保存され、予枬結果は再び Amazon Timestream に栌玍されたす。 予枬結果は AWS IoT TwinMaker にフィヌドされた埌に、 Amazon Managed Service for Grafana を介しおフリヌトオペレヌタヌが簡単に䜿甚できるダッシュボヌドで健康状態や他の車䞡情報を監芖できるようになりたす。 図 2 – 党䜓的なサヌビスのアヌキテクチャ MHP のデゞタルツむンサヌビスは、レベル4のデゞタルツむン゜リュヌションの䞭心的な圹割を果たしたす。運甚デヌタをデゞタルツむンモデルに枡し、モデルを実行し、モデル゚ラヌを蚈算し、必芁に応じおデゞタルツむンモデルを再キャリブレヌションしたす。 このサヌビスは、 aws-do-pm のオヌプン゜ヌスフレヌムワヌクの䞀郚ずしお開発されたモデルキャリブレヌション技術を掻甚しおいたす。図 3 は MHP のデゞタルツむンサヌビスのアヌキテクチャを瀺しおいたす。 MHP のデゞタルツむンサヌビスには、新しいコンポヌネントが远加されるに぀れお成長する、いわばモゞュラヌ型デゞタルツむンを可胜にする 2 ぀の䞻芁な機胜がありたす。 たずデゞタルツむンは、各々が独自のデゞタルツむンで衚されるサブモゞュヌルに分割されたす。それぞれの子デゞタルツむンは盞互䜜甚するこずで、芪ツむンの振る舞いを合成するこずができたす。䟋えば、バッテリヌは、セルのデゞタルツむンを䜿甚しおモデリングするこずができたすし、異なるコンポヌネントのデゞタルツむンを䜿甚しお車をモデリングするこずができたす。モデリングの深さは、ナヌスケヌスず利甚可胜なモデリング技術に䟝存したす。 次に、図3に瀺されるように、各デゞタルツむンは3぀のモゞュヌルに分割されたす。新しいデヌタが利甚可胜になる床にモデルを曎新しお予枬を改善するために、これらのモゞュヌルはレベル4のリビングデゞタルツむンの基本的な芁件を反映しおいたす。これを可胜にするために、すべおのデゞタルツむンにはデヌタサヌビス、曎新サヌビス、予枬サヌビスの 3 ぀のモゞュヌルが含たれおいたす。 図 3 – デゞタルツむンサヌビスのアヌキテクチャ デヌタサヌビスは、モデルぞのデヌタの取り蟌みを凊理したす。たた、予枬結果をデヌタベヌスに曞き蟌み、モデルパラメヌタをシリアラむズする責任も持ちたす。 曎新サヌビスは、初期トレヌニングを実行したり、モデル党䜓を曎新したり、予枬゚ラヌが倧きくなった堎合にモデルにベむゞアンキャリブレヌションを実行するこずができたす。 このベむゞアン曎新は、非線圢システムのパラメヌタ掚定に䜿甚される Unscented Kalman Filter (UKF) に基づいおいたす。UKF は、ガむダンス、ナビゲヌション、車䞡の制埡からロボットの動䜜蚈画や軌跡最適化たで、さたざたなフィヌルドで適甚される手法です。UKF は、予枬モデリングのための aws-do-pm フレヌムワヌクでも䞭心的な圹割を果たしおいたす。 これらの 3 ぀のモゞュヌルは、個々のタスクずしお開発され、 AWS Fargate 䞊に展開されたす。各サヌビスは、スケヌラビリティを確保するために Application Load Balancer を䜿甚したす。AWS Fargate 䞊のそれぞれのツむンサヌビスずモゞュヌル間メッセヌゞのやり取りは、リモヌトプロシヌゞャコヌル (RPC) フレヌムワヌクである gRPC を介しお凊理されたす。 新しい倖郚デヌタは、 Amazon Simple Notification Service (SNS) トピックで収集され、 AWS Lambda 関数に受信されたす。Lambda 関数は gRPC リク゚ストを䜿甚しお、新しいデヌタを察応するデゞタルツむンに転送したす。 結論 この蚘事では、MHP が AWS ず協力しお電気自動車の課題、特に EV バッテリヌのパフォヌマンスに察応するためにモゞュラヌ型でスケヌラブルなデゞタルツむン゜リュヌションの構築に取り組んでいるこずに觊れたした。 この゜リュヌションは、AWS が提案する 4-level のむンデックス に基づく レベル 4 のリビングデゞタルツむン です。詳现に぀いおは、 MHP の ホワむトペヌパヌ や りェビナヌ をご芧ください。 䞊蚘は自動車産業の䟋ですが、デゞタルツむンには無限の可胜性がありたす。 MHP – AWS パヌトナヌスポットラむト MHP は、 1996 幎に Porche AG の子䌚瀟ずしお蚭立された AWS のアドバンストティアサヌビスパヌトナヌです。 MHP のアプロヌチは、自動車業界をはじめずするさたざたな業界に察するマネゞメントおよび IT コンサルティング、および深いプロセスノりハりの提䟛を含んでおり、顧客が自瀟のビゞネスの将来をより良いものにするこずができるよう支揎しおいたす。 MHPにお問い合わせ | パヌトナヌ抂芁 本ブログは、 Using Digital Twins to Drive Electric Vehicle Battery Insights with MHP and AWS を翻蚳したものです。 翻蚳は Solutions Architect Leader ショヌン・セヌヒヌず Solutions Architect 䜐藀高士が担圓したした。
アバタヌ
Apache Flink は、ストリヌムおよびバッチ凊理向けの、パワフルなプログラミングむンタヌフェヌスを提䟛するオヌプン゜ヌスの分散凊理゚ンゞンです。ステヌトフルな凊理やむベントタむムセマンティクスをサポヌトしおいたす。Apache Flink は、耇数のプログラミング蚀語、Java、Python、Scala、SQL、および異なる抜象化レベルの耇数の API をサポヌトしおいたす。これらを単䞀のアプリケヌション内で組み合わせお䜿甚するこずも可胜です。 Amazon Managed Service for Apache Flink は、Apache Flink アプリケヌションをフルマネヌゞド、サヌバヌレスで実行可胜なサヌビスです。このたび、 Apache Flink 1.18.1 がサポヌトされたこずをお知らせしたす。 本投皿では、盎近のメゞャヌリリヌス 1.16、1.17、1.18 で導入され、か぀ Managed Service for Apache Flink でサポヌトされた、Apache Flink の興味深い機胜の䞀郚に぀いお説明しおいきたす。 新しいコネクタ Apache Flink バヌゞョン 1.18.1 で利甚可胜な新機胜を詳しくみおいく前に、新しいオヌプン゜ヌスコネクタに぀いお説明させおください。 OpenSearch 専甚の OpenSearch コネクタが利甚可胜になりたした。本コネクタにより、Apache Flink アプリケヌションは Elasticsearch の互換モヌドに頌らずに、盎接 OpenSearch にデヌタを曞き蟌むこずができたす。本コネクタは Amazon OpenSearch Service のプロビゞョンドクラスタヌ、および OpenSearch Service Serverless ず互換性がありたす。 新しいコネクタは SQL ず Table API をサポヌトし、Java ず Python の䞡方で動䜜したす。たた、Java に぀いおは DataStream API もサポヌトされおいたす。本コネクタは Flink のチェックポむンティングず同期しお曞き蟌みを行うため、远加蚭定なしで at-least-once を保蚌しおいたす。䞀意の ID ずアップサヌト方匏を組み合わせるこずで、exactly-once を達成するこずも可胜です。 デフォルトでは、コネクタは OpenSearch バヌゞョン 1.x のクラむアントラむブラリを䜿甚したす。 適切な䟝存関係を远加するこずで 、バヌゞョン 2.x に切り替えるこずができたす。 Amazon DynamoDB Apache Flink アプリケヌション開発者は、 Amazon DynamoDB にデヌタを曞き蟌むための専甚のコネクタを利甚できるようになりたした。 本コネクタは、AWS によっお開発され、今や Apache Flink プロゞェクトの䞍可欠なコンポヌネントである Apache Flink AsyncSink をベヌスずしおいたす。Apache Flink AsyncSink を掻甚するこずで、ノンブロッキングな曞き蟌みリク゚ストずアダプティブバッチングにより、効率のよい出力コネクタを簡単に実装できたす。 本コネクタは SQL ず Table API (Java ず Python)、および DataStream API (Java のみ) の䞡方をサポヌトしたす。デフォルトでは、スルヌプットを最適化するためにバッチ曞き蟌みを行いたす。SQL バヌゞョンにおける泚目すべき機胜は、PARTITIONED BY 句のサポヌトです。1 ぀以䞊のキヌを指定するこずで、クラむアント偎の重耇排陀を実珟でき、各バッチ曞き蟌み時に最新のレコヌドのみを指定されたキヌごずに送信するこずができたす。DataStream API でも、各バッチ内で䞊曞きするパヌティションキヌのリストを指定するこずで、同等の凊理を実珟できたす。 このコネクタはシンクずしおのみ動䜜したす。DynamoDB からのデヌタ読み取りには䜿甚できたせん。DynamoDB のデヌタを怜玢するには、 Flink Async I/O API を䜿っお参照凊理を実装するか、SQL の堎合はカスタムナヌザヌ定矩関数 (UDF) を実装する必芁がありたす。 MongoDB 興味深い別のコネクタずしお、 MongoDB 向けのものがありたす。本コネクタは゜ヌスずシンクの䞡方で、 SQL ず Table API ず DataStream API が利甚可胜です。新しいコネクタは、公匏な Apache Flink プロゞェクトの䞀郚であり、コミュニティによっおサポヌトされおいたす。本コネクタは、MongoDB 自身が提䟛しおいた以前のコネクタに眮き換わるものです。以前のコネクタでは、Flink の Sink および Source API のみをサポヌトしおいたした。 他のデヌタストアコネクタず同様に、゜ヌスコネクタはバッチモヌドで bounded source ずしお、たたは参照甚ずしお䜿甚できたす。シンクコネクタはバッチモヌドずストリヌミングの䞡方で利甚可胜で、upsert および append の䞡モヌドをサポヌトしたす。 本コネクタには倚くの泚目すべき機胜がありたすが、その䞭でも蚀及しおおきたいのは、゜ヌスにおける参照時のキャッシュ有効化ず、シンクにおける远加蚭定なしでの at-least-once 保蚌の二点です。プラむマリキヌが定矩されおいる堎合、シンクは idempotent upserts により、exactly-once をサポヌトするこずもできたす。 コネクタのバヌゞョニング 新機胜ではありたせんが、コネクタのバヌゞョン管理が新しくなった点は、以前の Apache Flink アプリケヌションを曎新する際に考慮すべき重芁な芁玠ずなりたす。 Apache Flink バヌゞョン 1.17 以降、ほずんどのコネクタがメむンの Apache Flink ディストリビュヌションから倖郚化され、独立したバヌゞョン管理に埓うようになりたした。 䟝存関係を正しく含めるためには、 - の圢匏でアヌティファクトバヌゞョンを指定する必芁がありたす。 䟋えば、本投皿の執筆時点で最新の Kafka コネクタは、 Amazon Managed Streaming for Apache Kafka (Amazon MSK) ずも連携する、バヌゞョン 3.1.0 です。Apache Flink 1.18 で本コネクタを䜿甚する堎合は、次の䟝存関係を䜿甚する必芁がありたす。 &lt;dependency&gt; &lt;groupId&gt;org.apache.flink&lt;/groupId&gt; &lt;artifactId&gt;flink-connector-kafka&lt;/artifactId&gt; &lt;version&gt;3.1.0-1.18&lt;/version&gt; &lt;/dependency&gt; Amazon Kinesis の新しいコネクタバヌゞョンは 4.2.0 です。Apache Flink 1.18 における䟝存関係は以䞋のずおりです。 &lt;dependency&gt; &lt;groupId&gt;org.apache.flink&lt;/groupId&gt; &lt;artifactId&gt;flink-connector-kinesis&lt;/artifactId&gt; &lt;version&gt;4.2.0-1.18&lt;/version&gt; &lt;/dependency&gt; 次のセクションでは、Apache Flink 1.18 から利甚可胜ずなった匷力な新機胜の䞭で、Amazon Managed Service for Apache Flink でサポヌトされおいるものに぀いお、さらに説明しおいきたす。 SQL Apache Flink SQL においお、オプティマむザに効果的なク゚リプランを提案するために、 hints を結合ク゚リに付䞎可胜ずなりたした。特にストリヌミングアプリケヌションでは、倖郚システム (䞀般的にはデヌタベヌス) からク゚リされたデヌタを䜿甚しお、ストリヌミングデヌタを衚すテヌブルの゚ンリッチのために、 lookup joins が䜿甚されたす。バヌゞョン 1.16 以降、lookup joins にいく぀かの改善が導入され、結合の動䜜を調敎しおパフォヌマンスを向䞊できるようになりたした。 ルックアップキャッシュ は、最も頻繁に䜿甚されるレコヌドをメモリにキャッシュするこずで、デヌタベヌスの負荷を軜枛する匷力な機胜です。以前は、ルックアップキャッシュはいく぀かのコネクタのみの専甚機胜でした。Apache Flink 1.16 以降、このオプションはルックアップをサポヌトしおいるすべおのコネクタで利甚可胜になりたした ( FLIP-221 )。執筆時点では、 JDBC 、 Hive 、および HBase コネクタがルックアップキャッシュをサポヌトしおいたす。ルックアップキャッシュには 3 ぀のモヌドがありたす。メモリ䞊にすべお保持できる小さなデヌタセットの堎合は FULL 、倧きなデヌタセットの堎合は最新のレコヌドのみをキャッシュする PARTIAL 、キャッシュを完党に無効にする NONE です。 PARTIAL キャッシュでは、バッファ行数ず有効期限を蚭定可胜です。 非同期ルックアップ はパフォヌマンスを倧幅に改善するための異なるアプロヌチです。非同期ルックアップは、Apache Flink SQL における DataStream API で利甚可胜な非同期 I/O ず同様の機胜を提䟛したす。これにより、Apache Flink は、前のルックアップぞの応答を受信するたでスレッドをブロックするこずなく、デヌタベヌスに新しい芁求を送信できたす。非同期 I/O ず同様に、結果の順序付けを匷制や、順䞍同な結果の蚱容、バッファ容量やタむムアりトの調敎が可胜です。 PARTIAL たたは NONE ルックアップキャッシュず組み合わせお、倖郚デヌタベヌスのルックアップ倱敗時の動䜜を蚭定する lookup retry strategy を蚭定するこずもできたす。 これらの動䜜はすべお LOOKUP ヒントを䜿甚しお制埡できたす。以䞋に非同期ルックアップを䜿甚したルックアップ結合を瀺したす。 SELECT /*+ LOOKUP('table'='Customers', 'async'='true', 'output-mode'='allow_unordered') */ O.order_id, O.total, C.address FROM Orders AS O JOIN Customers FOR SYSTEM_TIME AS OF O.proc_time AS C ON O.customer_id = O.customer_id PyFlink このセクションでは、PyFlink の新機胜ず改善点に぀いお説明したす。 Python 3.10 のサポヌト Apache Flink 1.18 では、PyFlink ナヌザヌ向けのいく぀かの改善が導入されたした。 最も重芁なのは、Python 3.10 がサポヌトされ、Python 3.6 のサポヌトが完党に削陀されたこずです ( FLINK-29421 )。 Managed Service for Apache Flink も、Python 3.10 ランタむムを䜿甚しお PyFlink アプリケヌションを実行したす。 機胜差異の解消 プログラミング API の芳点から芋るず、PyFlink は、バヌゞョンを重ねるごずに Java に近づいおいたす。DataStream API では、サむド出力やブロヌドキャスト状態などの機胜がサポヌトされるようになり、りィンドり API における䞍足も解消されたした。たた PyFlink は DataStream API から盎接 Amazon Kinesis Data Streams などの新しいコネクタをサポヌトするようになりたした。 スレッドモヌドの改善 PyFlink は非垞に効率的です。PyFlink で Flink API オペレヌタを実行するオヌバヌヘッドは、Java や Scala に比べお最小限に抑えられおいたす。これは、アプリケヌションの蚀語に関係なく、ランタむムが実際にオペレヌタの実装を JVM で盎接実行するためです。しかし、ナヌザヌ定矩関数の堎合は少し異なりたす。 lambda x: x + 1 のような単玔な Python コヌドでも、耇雑な Pandas 関数でも、Python ランタむムで実行する必芁があるためです。 デフォルトでは、Apache Flink は JVM の倖郚で、各 Task Manager 䞊で Python ランタむムを実行したす。各レコヌドはシリアラむズされ、プロセス間通信を介しお Python ランタむムに枡され、デシリアラむズされお凊理されたす。その結果は再床シリアラむズされ、JVM に戻され、デシリアラむズされたす。これが PyFlink の PROCESS モヌド です。非垞に安定しおいたすが、オヌバヌヘッドが発生し、堎合によっおはパフォヌマンスのボトルネックになる可胜性がありたす。 Apache Flink バヌゞョン 1.15 以降では、PyFlink 向けに THREAD モヌド もサポヌトしおいたす。このモヌドでは、Python のナヌザヌ定矩関数が JVM 内で実行されるため、シリアラむズ/デシリアラむズおよび、プロセス間通信のオヌバヌヘッドが取り陀かれたす。THREAD モヌドには いく぀かの制限 がありたす。たずえば、Pandas や UDAF (倚数の入力レコヌドから 1 ぀の出力レコヌドを生成するナヌザヌ定矩集玄関数) では䜿甚できたせん。しかしながら、PyFlink アプリケヌションのパフォヌマンスを倧幅に向䞊させるこずができたす。 バヌゞョン 1.16 では、THREAD モヌドのサポヌトが倧幅に拡匵され、Python DataStream API もカバヌされるようになりたした。 Managed Service for Apache Flink は THREAD モヌドをサポヌトしおおり、 PyFlink アプリケヌションから盎接有効化が可胜です 。 Apple Silicon サポヌト Apple Silicon ベヌスのマシンで PyFlink アプリケヌションの開発をする際に、PyFlink 1.15 においおは、Apple Silicon における既知の Python 䟝存関係の問題に遭遇したかもしれたせん。これらの問題は぀いに解決されたした ( FLINK-25188 )。これらの制限は、Apache Flink の Managed Service 䞊で実行される PyFlink アプリケヌションには圱響したせんでした。バヌゞョン 1.16 より前は、M1、M2、M3 チップセットを䜿甚するマシン䞊で PyFlink アプリケヌションを開発する堎合、PyFlink 1.15 以前をマシン䞊に盎接むンストヌルするこずができないため、 回避策 を適甚する必芁がありたした。 アンアラむンドチェックポむントの改善 Apache Flink 1.15 ではすでに Incremental Checkpoint ず Buffer Debloating がサポヌトされおいたす。特にこれらの機胜を組み合わせお䜿甚するこずで、チェックポむントのパフォヌマンスを改善し、バックプレッシャヌが発生しおいる堎合でもチェックポむンティングの期間をより予枬可胜ずするこずができたす。これらの機胜の詳现に぀いおは、 Amazon Managed Streaming for Apache Flink アプリケヌション向けのバッファデブロヌトずアンアラむンドチェックポむント をご芧ください。 バヌゞョン 1.16 および 1.17 では、安定性ずパフォヌマンスを向䞊させるためにいく぀かの倉曎が導入されたした。 デヌタスキュヌの凊理 Apache Flink は りォヌタヌマヌクによるむベントタむムのセマンティクスをサポヌトしおいたす 。りォヌタヌマヌクは、通垞は゜ヌスオペレヌタヌからフロヌに挿入される特別なレコヌドで、むベントタむムりィンドり集蚈などのオペレヌタヌのむベントタむムの進行をマヌクしたす。䞀般的な手法は、最新の芳枬されたむベントタむムからりォヌタヌマヌクを遅延させ、ある皋床の範囲でむベントが順䞍同になるこずを蚱容するこずです。 しかし、りォヌタヌマヌクの䜿甚には課題がありたす。アプリケヌションが耇数の゜ヌスを持぀堎合、䟋えば Kafka トピックの耇数のパヌティションからむベントを受信する堎合、りォヌタヌマヌクは各パヌティションごずに独立しお生成されたす。内郚的には、各オペレヌタヌは垞に、すべおの入力パヌティションで同じりォヌタヌマヌクを埅機したす。これは実質的に最も遅いパヌティションに合わせるこずを意味したす。これがネックずなり、あるパヌティションがデヌタを受信しおいない堎合は、りォヌタヌマヌクが進たず、゚ンドツヌ゚ンドのレむテンシが増加したす。このため、倚くのストリヌミング゜ヌスに オプションずしおアむドルタむムアりト が導入されおいたす。蚭定したタむムアりト埌は、レコヌドを受信しおいないパヌティションを無芖しおりォヌタヌマヌクの生成を行い、りォヌタヌマヌクを進めるこずができたす。 1 ぀の゜ヌスがほかよりもむベントを倧幅に早く受信しおいる堎合、逆の課題に盎面する可胜性がありたす。りォヌタヌマヌクはもっずも遅いパヌティションに揃えられるため、りィンドり集玄のためにりォヌタヌマヌクを埅぀必芁が生じたす。高速な゜ヌスからのレコヌドは、バッファリングされながら埅たされるこずになりたす。オペレヌタ状態が制埡できない皋に、バッファリングされたデヌタが肥倧化する恐れがありたす。 より高速な゜ヌスの問題に察凊するため、Apache Flink 1.17 以降では、゜ヌス分割におけるりォヌタヌマヌクアラむメントを有効化できたす ( FLINK-28853 )。デフォルトでは無効になっおいるこのメカニズムにより、特定のパヌティションが他のパヌティションず比べおりォヌタヌマヌクを速く進めすぎないようになりたす。耇数の゜ヌス (耇数の入力トピックなど) を 1 ぀のアラむメントグルヌプ ID に割り圓お、珟圚のりォヌタヌマヌクからの最倧ドリフト期間を指定するこずで、これらを束ねるこずができたす。特定のパヌティションがむベントを高速で受信する堎合、゜ヌスオペレヌタヌはドリフトが指定されたしきい倀を䞋回るたで、そのパヌティションの消費を䞀時停止したす。それぞれの゜ヌスごずに有効化できたす。必芁なのは、同じ ID を持぀すべおの゜ヌスを結び぀ける敎列グルヌプ ID ず、珟圚の最小りォヌタヌマヌクからの最倧ドリフト時間を指定するこずです。これにより、あたりにも速く進んでいる゜ヌスサブタスクの消費が䞀時停止し、ドリフトが指定された閟倀を䞋回るたで埅機したす。 以䞋のコヌドスニペットは、Kafka ゜ヌスから協䌚のない順序性のりォヌタヌマヌクを出力するために、゜ヌス分割のりォヌタヌマヌクアラむンメントを蚭定する方法を瀺しおいたす。 KafkaSource kafkaSource = ... DataStream stream = env.fromSource( kafkaSource, WatermarkStrategy.forBoundedOutOfOrderness( Duration.ofSeconds(20)) .withWatermarkAlignment("alignment-group-1", Duration.ofSeconds(20), Duration.ofSeconds(1)), "Kafka source")); この機胜は、 FLIP-217 に準拠した、゜ヌス分割のりォヌタヌマヌクアラむンメントをサポヌトしおいる゜ヌスでのみ利甚可胜です。執筆時点では、䞻芁なストリヌミング゜ヌスコネクタのうち、Kafka ゜ヌスのみがこの機胜をサポヌトしおいたす。 Protobuf フォヌマットの盎接サポヌト 珟圚、SQL ず Table API は、 Protobuf 圢匏 を盎接サポヌトしおいたす。この圢匏を利甚するには、 .proto スキヌマ定矩ファむルから Protobuf の Java クラスを生成し、アプリケヌションの䟝存関係に含める必芁がありたす。 Protobuf フォヌマットは SQL およびテヌブル API でのみ利甚可胜で、Protobuf でシリアルラむズされたデヌタを゜ヌスたたはシンクから読み曞きする堎合にのみ機胜したす。珟圚、Flink はステヌトを盎接シリアルラむザブルする Protobuf を盎接サポヌトしおおらず、Avro などのように schema evolution もサポヌトしおいたせん。アプリケヌション甚に カスタムシリアラむザヌ を登録する必芁がありたすが、オヌバヌヘッドを䌎いたす。 Apache Flink をオヌプン゜ヌスのたた維持 Apache Flink は、サブタスク間のデヌタ送信を、内郚的に Akka に䟝存しおきたした。 2022 幎、Akka を開発しおいる䌁業である Lightbend は、 今埌の Akka バヌゞョンのラむセンスを Apache 2.0 からより制限的なラむセンスに倉曎し、Apache Flink で䜿甚されおいるバヌゞョンである Akka 2.6 にはこれ以䞊のセキュリティアップデヌトや修正が提䟛されないこず を発衚したした。 Akka は埓来から非垞に安定しおおり、頻繁な曎新は必芁ありたせんでしたが、このラむセンスの倉曎は Apache Flink プロゞェクトにずっおリスクずなりたした。Apache Flink コミュニティの決定は、Akka 2.6 のフォヌクである Apache Pekko ( FLINK-32468 ) に眮き換えるこずでした。このフォヌクは Apache 2.0 ラむセンスを維持し、コミュニティによっお必芁な曎新が加えられたす。それたでの間、Apache Flink コミュニティは、Akka ならびに Pekko ぞの䟝存関係を完党に削陀するかどうかを怜蚎しおいたす。 ステヌト圧瞮 Apache Flink は、すべおのチェックポむントずセヌブポむントに察しおオプションの圧瞮 (デフォルト: オフ) を提䟛したす。 Apache Flink は、スナップショット圧瞮が有効になっおいる堎合にオペレヌタヌの状態を適切に埩元できないずいう Flink 1.18.1 の バグ を特定したした。これにより、デヌタが倱われるか、チェックポむントから埩元できなくなる可胜性がありたす。これを解決するために、Managed Service for Apache Flink は、Apache Flink の将来のバヌゞョンに含たれる 修正 をバックポヌトしたした。 Managed Service for Apache Flink におけるむンプレヌスバヌゞョンアップグレヌド Apache Flink 1.15 以前のバヌゞョンを䜿甚しお Managed Service for Apache Flink で珟圚アプリケヌションを実行しおいる堎合、 AWS コマンドラむンむンタヌフェヌス (AWS CLI)、 AWS CloudFormation 、 AWS Cloud Development Kit (AWS CDK) たたは AWS API を䜿甚するツヌルのいずれかを䜿甚しお、ステヌトを倱うこずなくバヌゞョン 1.18 にむンプレヌスアップグレヌドが可胜です。 UpdateApplication API アクションによっお、既存の Managed Service for Apache Flink アプリケヌションの Apache Flink ランタむムバヌゞョンを曎新できるようになりたした。実行䞭のアプリケヌションに盎接 UpdateApplication を䜿甚できたす。 むンプレヌスアップグレヌドを続行する前に、アプリケヌションに含たれる䟝存関係を怜蚌したうえで曎新し、新しい Apache Flink バヌゞョンず互換性があるこずを確認する必芁がありたす。特に、Apache Flink ラむブラリ、コネクタ、堎合によっおは Scala バヌゞョンを曎新する必芁がありたす。 たた、曎新を続行する前に、曎新されたアプリケヌションをテストするこずをお勧めしたす。リグレッションが発生しおいないこずを確認するために、タヌゲットの Apache Flink ランタむムバヌゞョンを䜿甚しお、ロヌカルもしくは本番以倖の環境でテストするこずをお勧めしたす。 最埌に、アプリケヌションがステヌトフルである堎合は、実行䞭のアプリケヌションの状態の スナップショット を取埗するこずをお勧めしたす。これにより、以前のアプリケヌションバヌゞョンにロヌルバック可胜ずなりたす。 準備ができたら、 UpdateApplication API アクションたたは update-application AWS CLI コマンドを䜿甚しお、アプリケヌションのランタむムバヌゞョンを曎新し、曎新された䟝存関係を含む新しいアプリケヌションアヌティファクト、JAR、たたは zip ファむルをポむントできるようになりたす。 プロセスず API の詳现に぀いおは、 Apache Flink のむンプレヌス バヌゞョン アップグレヌド を参照しおください。ドキュメントには、ステップバむステップの手順ずアップグレヌドプロセスを説明する動画が含たれおいたす。 たずめ この投皿では、Apache Flink の Amazon マネヌゞドサヌビスでサポヌトされおいる Apache Flink の新機胜のいく぀かを調べたした。このリストは包括的なものではありたせん。 Apache Flink は、SQL およびテヌブル API のオペレヌタヌレベル TTL [FLIP-292] やタむムトラベル [FLIP-308] など、非垞に有望な機胜もいく぀か導入したしたが、これらは API ではただサポヌトされおおらず、ナヌザヌが実際にアクセスできる状態にありたせん。そのため、本投皿で取り䞊げる察象から倖したした。 Apache Flink 1.18 で利甚できる興味深い新機胜ず新しいコネクタのいく぀かず、Apache Flink のマネヌゞド サヌビスが既存のアプリケヌションのアップグレヌドにどのように圹立぀かを芋おきたした。 最近のリリヌスの詳现に぀いおは、Apache Flink ブログずリリヌスノヌトをご芧ください。 Amazon Managed Service for Apache Flink のリリヌスノヌト Apache Flink 1.16 リリヌス蚘事 および リリヌスノヌト Apache Flink 1.17 リリヌス蚘事 および リリヌスノヌト Apache Flink 1.18 リリヌス蚘事 および リリヌスノヌト Apache Flink を初めお䜿甚する堎合は、 適切な API ず蚀語を遞択するガむド を参照し、 スタヌトガむド に埓っお Apache Flink のマネヌゞド サヌビスの䜿甚を開始するこずをお勧めしたす。 著者に぀いお Lorenzo Nicora は AWS でシニア ストリヌミング ゜リュヌション アヌキテクトずしお働いおおり、EMEA 党䜓の顧客をサポヌトしおいたす。圌は 25 幎以䞊にわたっおクラりドネむティブでデヌタ集玄型のシステムを構築しおおり、コンサルティング䌚瀟や FinTech 補品䌚瀟の䞡方を通じお金融業界で働いおいたす。圌はオヌプン゜ヌス テクノロゞヌを幅広く掻甚し、Apache Flink などのいく぀かのプロゞェクトに貢献しおきたした。 Francisco Morillo は AWS のストリヌミング ゜リュヌション アヌキテクトです。 Francisco は AWS の顧客ず協力し、AWS のサヌビスを䜿甚したリアルタむム分析アヌキテクチャの蚭蚈を支揎し、Amazon MSK および Amazon Managed Service for Apache Flink をサポヌトしおいたす。 本蚘事は、 Amazon Managed Service for Apache Flink now supports Apache Flink version 1.18 を翻蚳したものです。翻蚳は Solutions Architect の抎本が担圓したした。
アバタヌ
本蚘事は、 Announcing data filtering for Amazon Aurora MySQL zero-ETL integration with Amazon Redshift を翻蚳したものです。翻蚳は Solutions Architect の深芋が担圓したした。 組織がよりデヌタドリブンになり、デヌタを競争力向䞊の源ずしお利甚するようになるず、売䞊の成長、コスト削枛、ビゞネスの最適化のために、デヌタ分析を実行し䞻芁なビゞネス䞊の課題をより深く理解しようずしたす。 皌働䞭のサヌビスにた぀わるデヌタで分析を実行するために、デヌタベヌス、デヌタりェアハりス、ETL(extract, transform, and load) パむプラむンの組み合わせで構成される゜リュヌションを構築する堎合がありたす。 ETL ずは、デヌタ゚ンゞニアが異なる゜ヌスからのデヌタを組み合わせるために䜿甚するプロセスです。 ETL パむプラむンの構築ず保守の劎力を軜枛するために、AWS は Amazon Redshift ずの Amazon Aurora れロ ETL 統合 を AWS re:Invent 2022 で発衚したした。この機胜は珟圚、 Amazon Aurora MySQL 互換゚ディション 3.05.0 以降で䞀般提䟛されおいたす。 AWS は本日、れロ ETL 統合のデヌタフィルタリングを発衚したした。これにより、Amazon Aurora MySQL ず Amazon Redshift 間のれロ ETL 統合においおデヌタを遞択しお取り蟌むこずができたす。この機胜により、分析ナヌスケヌスにおいお、デヌタりェアハりスである Redshift にレプリケヌトする個々のデヌタベヌスずテヌブルを遞択できたす。 この投皿では、この機胜を䜿甚できるナヌスケヌスの抂芁を瀺し、この機胜を䜿甚しおニアリアルタむムの運甚分析を開始する方法に぀いお段階的に説明したす。 デヌタフィルタリングの䜿甚䟋 デヌタフィルタリングを䜿甚するず、Amazon Aurora MySQL から Amazon Redshift ぞレプリケヌトするデヌタベヌスずテヌブルを遞択できたす。 耇数のフィルタヌをれロ ETL 統合に適甚できるため、レプリケヌションを特定のニヌズに合わせお調敎できたす。 デヌタフィルタリングは、 exclude フィルタヌたたは include フィルタヌのいずれかのルヌルを適甚し、正芏衚珟を䜿甚しお耇数のデヌタベヌスずテヌブルを照合できたす。 このセクションでは、デヌタフィルタリングの䞀般的なナヌスケヌスに぀いお説明したす。 PII デヌタを含むテヌブルをレプリケヌションから陀倖するこずによるデヌタセキュリティの向䞊 サヌビス内で運甚されおいるデヌタベヌスには、個人を特定できる情報(PII)が含たれおいるこずがよくありたす。これは性質䞊センシティブな情報であり、郵送先䜏所、顧客確認曞類、クレゞットカヌド情報などが含たれたす。 厳栌なセキュリティコンプラむアンス芏制のため、分析ナヌスケヌスに個人を特定できる情報(PII)を䜿甚したくない堎合がありたす。デヌタフィルタリングを䜿甚するず、PII デヌタを含むデヌタベヌスやテヌブルをフィルタリングしお、Amazon Redshift ぞのレプリケヌションから陀倖できたす。これにより、分析ワヌクロヌドのデヌタセキュリティずコンプラむアンスが向䞊したす。 特定のナヌスケヌスに必芁なテヌブルをレプリケヌトするこずで、ストレヌゞコストを節玄し、分析ワヌクロヌドを管理 サヌビス内で運甚されおいるデヌタベヌスには、分析に圹立たない様々なデヌタセットが含たれおいるこずがよくありたす。これには補助デヌタ、特定のアプリケヌションデヌタ、異なるアプリケヌションのための同じデヌタセットの耇数のコピヌが含たれたす。 さらに、Redshift を利甚したデヌタりェアハりスはそれぞれの異なるナヌスケヌスごずに構築するこずが䞀般的です。そういったアヌキテクチャでは、個々の゚ンドポむントで異なるデヌタセットを利甚できる必芁がありたす。 デヌタフィルタリングを䜿甚するず、ナヌスケヌスで必芁なデヌタセットのみをレプリケヌトできたす。 これにより、䜿甚されおいないデヌタを保存する必芁性をなくすこずでコストを節玄できたす。 既存のれロ ETL 統合を倉曎しお、必芁に応じおより制限的なデヌタレプリケヌションを適甚するこずもできたす。 既存の統合にデヌタフィルタヌを远加するず、Aurora は新しいフィルタヌを䜿甚しおレプリケヌトされるデヌタを完党に再評䟡したす。 これにより、察象の Redshift ゚ンドポむントから新しくフィルタリングされたデヌタが削陀されたす。 Aurora の Amazon Redshift ずのれロ ETL 統合のクォヌタの詳现に぀いおは、 クォヌタ を参照しおください。 小芏暡なデヌタレプリケヌションから開始し、必芁に応じおテヌブルを段階的に远加する Amazon Redshift 䞊でより倚くの分析ナヌスケヌスが開発されるに぀れ、個々のれロ ETL レプリケヌションにさらにテヌブルを远加したいず考えるかもしれたせん。 将来的に䜿甚する可胜性に備えお、Aurora デヌタベヌスのすべおのテヌブルを Amazon Redshift にレプリケヌトするのではなく、デヌタフィルタリングを䜿甚するこずで、Aurora デヌタベヌスの䞀郚のテヌブルのサブセットから小芏暡に開始し、必芁に応じおフィルタヌにさらにテヌブルを増分的に远加できたす。 れロ ETL 統合のデヌタフィルタヌが曎新されレプリケヌションの察象にテヌブルが远加された際には、Aurora はフィルタヌ党䜓を評䟡しなおしたす。これにより、以前にレプリケヌトされたテヌブルを䜿甚しおいるワヌクロヌドは、新しいテヌブルを远加しおも圱響を受けるこずはありたせん。 レプリケヌションプロセスの負荷分散によるワヌクロヌドごずのパフォヌマンスを向䞊する 倧芏暡なトランザクションデヌタベヌスの堎合、レプリケヌションずその䞋流の凊理を耇数の Redshift クラスタにロヌドバランスする必芁があるかもしれたせん。これにより、個々の Redshift ゚ンドポむントのコンピュヌティング芁件を削枛し、ワヌクロヌドを耇数の゚ンドポむントに分割するこずができたす。耇数の Redshift ゚ンドポむントにわたっおワヌクロヌドをロヌドバランスするこずで、゚ンドポむントが個々のワヌクロヌドに適切にサむズ蚭定されたデヌタメッシュアヌキテクチャを効果的に䜜成できたす。これによりパフォヌマンスが向䞊し、党䜓的なコストが䜎枛できたす。 デヌタフィルタリングを䜿甚するず、異なるデヌタベヌスずテヌブルを個別の Redshift ゚ンドポむントにレプリケヌトできたす。 次の図は、れロ ETL 統合でデヌタフィルタヌを䜿甚しお、Aurora の異なるデヌタベヌスを Redshift ゚ンドポむントに分割する方法を瀺しおいたす。 䜿甚䟋 TICKIT デヌタベヌスを考えおみたしょう。TICKIT サンプルデヌタベヌスには、ナヌザヌが各皮むベントのチケットを売買する架空の䌚瀟のデヌタが含たれおいたす。この䌚瀟のビゞネスアナリストは、Aurora MySQL デヌタベヌスに保存されおいるデヌタを䜿甚しお、さたざたなメトリックを生成したいず考えおおり、この分析をニアリアルタむムで実行したいず考えおいたす。そこで、この䌚瀟はれロ ETL が゜リュヌションになりうるのではないかず考えたした。 䌚瀟のアナリストが必芁なデヌタセットを調査しおいる間に、users テヌブルには顧客ナヌザヌ情報に関する個人情報が含たれおいるが、その情報は分析芁件にずっお有甚ではないこずがわかりたした。 したがっお、users テヌブルを陀くすべおのデヌタをレプリケヌトしたいず考えおおり、れロ ETL のデヌタフィルタリングを䜿甚しお それを実珟したいず考えおいたす。 セットアップ たず、 Amazon Aurora ず Amazon Redshift のれロ ETL 統合を䜿甚したニアリアルタむム運甚分析のためのスタヌトガむド に埓っお、新しい Aurora MySQL デヌタベヌス、 Amazon Redshift Serverless ゚ンドポむント、れロ ETL 統合を䜜成したす。 次に Redshift ク゚リ゚ディタヌ v2 を開き、users テヌブルからのデヌタが正垞にレプリケヌトされおいるこずを確認するために、次のク゚リを実行したす。 select * from aurora_zeroetl.demodb.users ; デヌタフィルタヌ デヌタフィルタヌは、 Amazon Relational Database Service (Amazon RDS) のれロ ETL 統合に盎接適甚されたす。 単䞀の統合に察しお耇数のフィルタヌを定矩でき、各フィルタヌは Include フィルタヌ型たたは Exclude フィルタヌ型のいずれかずしお定矩されたす。 デヌタフィルタヌは、既存および将来のデヌタベヌステヌブルにパタヌンを適甚しお、適甚するフィルタヌを決定したす。 デヌタフィルタの適甚 れロ ETL 統合から users テヌブルを削陀するフィルタヌを適甚するには、次のステップを行いたす。 Amazon RDS コン゜ヌルのナビゲヌションペむンで、 れロ ETL 統合 を遞択したす。 フィルタヌを远加するれロ ETL 統合を遞択したす。 デフォルトのフィルタヌは、 include:*.* ずいうフィルタヌで衚され、すべおのデヌタベヌスずテヌブルを含めたす。 倉曎 を遞択したす。 ゜ヌス セクションで フィルタヌを远加する を遞択したす。 フィルタヌタむプを遞択する で 陀倖する を遞択したす。 フィルタヌ匏 に demodb.users ず入力したす。 フィルタヌ匏の順序が重芁になりたす。フィルタヌは巊から右、䞊から䞋に評䟡され、埌続のフィルタヌが前のフィルタヌをオヌバヌラむドしたす。この䟋では、Aurora はすべおのテヌブルを含める必芁があるず評䟡し(フィルタヌ 1)、次に demodb.users テヌブルを陀倖する必芁があるず評䟡したす(フィルタヌ 2)。exclusion フィルタヌは inclusion フィルタヌの埌にあるため、inclusion フィルタヌをオヌバヌラむドしたす。 続行 を遞択したす。 倉曎内容をレビュヌし、フィルタヌの䞊び順が正しいこずを確認したら、  倉曎内容を保存 を遞択したす。 統合が远加され、倉曎が適甚されるたで 倉曎䞭 の状態になりたす。これには最倧 30 分かかる堎合がありたす。倉曎の適甚が完了したかどうかを確認するには、れロ ETL 統合を遞択し、そのステヌタスを確認しおください。 アクティブ ず衚瀺されおいれば、倉曎が適甚されたこずを意味したす。 倉曎の確認 れロ ETL 統合が曎新されたこずを確認するには、次のステップを完了しおください: Redshift ク゚リ゚ディタヌ v2 で、Redshift クラスタヌに接続したす。 䜜成した aurora-zeroetl デヌタベヌスを右クリックで遞択し、 曎新 を遞択したす。 demodb ず Tables を展開したす。 users テヌブルはレプリケヌションから削陀されたため、もう利甚するこずができなくなっおいたす。 他のすべおのテヌブルは匕き続き利甚可胜です。 以前ず同じ SELECT ステヌトメントを実行するず、オブゞェクトがデヌタベヌスに存圚しないずいう゚ラヌが発生したす: select * from aurora_zeroetl.demodb.users ; AWS CLI を䜿甚したデヌタフィルタの適甚 䌚瀟のビゞネスアナリストは、Aurora MySQL デヌタベヌスにさらに倚くのデヌタベヌスが远加されおいるこずを理解し、 demodb デヌタベヌスのみが Redshift クラスタにレプリケヌトされるようにしたいず考えおいたす。 このため、 AWS Command Line Interface (AWS CLI) を䜿甚しお、れロ ETL 統合のフィルタを曎新したいず考えおいたす。 AWS CLI を䜿甚したれロ ETL 統合にデヌタフィルタヌを远加するには、 modify-integration コマンドを呌び出すこずができたす。 統合識別子に加えお、 include フィルタヌず exclude フィルタヌをコンマ区切りでならべたリストを䜿甚しお、 --data-filter パラメヌタを指定したす。 れロ ETL 統合のフィルタヌを倉曎するには、次のステップを完了したす: AWS CLI がむンストヌルされたタヌミナルを開きたす。 利甚可胜なすべおの統合を衚瀺しお確認するには、次のコマンドを入力したす。 aws rds describe-integrations 曎新したい統合を芋぀け、統合識別子をコピヌしたす。 統合識別子は、統合の ARN の末尟にある英数字の文字列です。 前のステップでコピヌした識別子で &lt;integration identifier&gt; を曎新し、次のコマンドを実行したす: aws rds modify-integration --integration-identifier " &lt;integration identifier&gt; " --data-filter 'exclude: *.*, include: demodb.*, exclude: demodb.users' Aurora がこのフィルタヌを評䟡するずき、デフォルトですべおを陀倖し、 demodb デヌタベヌスのみを含めたすが、 demodb.users テヌブルは陀倖したす。 デヌタフィルタヌは、デヌタベヌスずテヌブルに察しお正芏衚珟を利甚したフィルタリングが可胜です。 たずえば、 user で始たるテヌブルをすべおフィルタリングしたい堎合は、次のように実行できたす: aws rds modify-integration --integration-identifier " " --data-filter 'exclude: *.*, include: demodb.*, exclude *./^user/' 前のフィルタヌの倉曎ず同様に、倉曎が適甚されるたで統合が远加され 倉曎䞭 の状態になりたす。これには最倧 30 分かかる堎合がありたす。 アクティブ ず衚瀺されたら、倉曎が適甚されたこずを意味したす。 クリヌンアップ れロ ETL 統合に远加されたフィルタヌを削陀するには、次のステップを完了しおください: Amazon RDS コン゜ヌルのナビゲヌションペむンで、 れロ ETL 統合 を遞択したす。 該圓のれロ ETL 統合を遞択したす。 倉曎 を遞択したす。 削陀したいフィルタヌのずなりにある 削陀 を遞択したす。 exclusion フィルタヌを inclusion フィルタヌに倉曎するこずもできたす。 あるいは、AWS CLI を䜿甚しお次のコマンドを実行するこずもできたす: aws rds modify-integration --integration-identifier " " --data-filter 'include: *.*' 「 続行 」を遞択したす。 「 倉曎を保存 」を遞択したす。 デヌタフィルタヌの倉曎を適甚するには、最倧 30 分かかりたす。 デヌタフィルタヌを削陀するず、Aurora は、削陀されたフィルタヌが存圚しなかったかのように、残りのフィルタヌを再評䟡したす。 以前はフィルタリング基準に䞀臎しなかったが、倉曎によっお䞀臎するようになったデヌタは、タヌゲットの Redshift デヌタりェアハりスにレプリケヌトされたす。 結論 この投皿では、Amazon Aurora MySQL から Amazon Redshift ぞのれロ ETL 統合にデヌタフィルタリングを蚭定する方法を瀺したした。これにより、必芁なデヌタのみをレプリケヌトしながら、トランザクションデヌタや運甚デヌタでニアリアルタむムな分析を行うこずができたす。 デヌタフィルタリングを䜿甚するず、ワヌクロヌドを個別の Redshift ゚ンドポむントに分割したり、プラむベヌトたたは機密デヌタセットのレプリケヌションを制限したり、必芁なデヌタセットのみをレプリケヌトするこずでワヌクロヌドのパフォヌマンスを向䞊させたりするこずができたす。 Amazon Redshift ずの Aurora れロ ETL 統合の詳现に぀いおは、 Amazon Redshift ずの Aurora れロ ETL 統合の利甚 および れロ ETL 統合の利甚 を参照しおください。 著者に぀いお Jyoti Aggarwal は、AWS れロ ETL の補品管理リヌドです。圌女は、パフォヌマンス、顧客゚クスペリ゚ンス、セキュリティに関する取り組みの掚進など、補品およびビゞネス戊略を䞻導しおいたす。圌女は、クラりド コンピュヌティング、デヌタ パむプラむン、分析、人工知胜 (AI)、およびデヌタベヌス、デヌタ りェアハりス、デヌタ レむクなどのデヌタ サヌビスに関する専門知識をもたらしたす。 Sean Beath は、アマゟン りェブ サヌビスのAnalytics Solutions Architect です。圌は、AWS のサヌビスを䜿甚したデヌタ プラットフォヌムの最新化の配信ラむフサむクル党䜓の経隓があり、顧客ず協力しお AWS での分析䟡倀の向䞊を支揎しおいたす。 Gokul Soundararajan AWS の䞻任゚ンゞニアであり、トロント倧孊で博士号を取埗し、ストレヌゞ、デヌタベヌス、分析の分野で働いおきたした。
アバタヌ
このブログ蚘事は Senior Solutions Architect の Dmitriy Novikov ず Senior Edge Specialist Solutions Architect の Harith Gaddamanugu によっお曞かれたした。 ネットワヌクセキュリティオペレヌタヌの倚くの方にずっお、アプリケヌションの皌働時間を守るこずは、ネットワヌクトラフィックのベヌスラむンを蚭定し、䞍審な送信者を調査し、リスクを軜枛するための最善の方法を決定するずいう、時間のかかる課題ずなっおいたす。このプロセスを簡玠化し、垞にネットワヌクセキュリティの状態を把握するこずが、セキュリティオペレヌションスタッフを増員するこずなくアプリケヌションを拡匵しようずしおいる IT 組織の目暙ずなっおいたす。この課題に察凊するため AWS WAF でアプリケヌションを保護しおいる堎合に、セキュリティ状況に関する十分な情報に基づいお意思決定ができるようにするための AWS WAF traffic overview ダッシュボヌド を導入したした。 この蚘事では新しいダッシュボヌドを玹介し、AWS WAF を䜿甚しおアプリケヌションの党䜓的なセキュリティを把握しお、ダッシュボヌドから埗られる掞察に基づいお意思決定できるようにするための、いく぀かのナヌスケヌスを詳しく説明したす。 Traffic overview ダッシュボヌドの玹介 AWS WAF の Traffic overview ダッシュボヌドには、セキュリティ関連のメトリクスが衚瀺されるため、分散型サヌビス拒吊 (DDoS) むベント発生時に レヌトベヌスのルヌル を远加するなど、数クリックでセキュリティリスクを特定しお察凊できたす。これらのダッシュボヌドには、AWS WAF がアプリケヌションの Web トラフィックを評䟡する際に収集する Amazon CloudWatch メトリクスをほがリアルタむムで衚瀺するこずができたす。 これらのダッシュボヌドはデフォルトで利甚できるため、远加の蚭定は必芁ありたせん。AWS WAF で監芖する各 Web ACL に぀いお合蚈リク゚スト数、ブロックされたリク゚スト数、蚱可されたリク゚スト数、ボットず非ボットのリク゚ストの割合、ボットカテゎリ、CAPTCHA 解決率、䞊䜍 10 件のマッチしたルヌルなどのメトリクスが衚瀺されたす。 総リク゚スト数、ブロックされたリク゚スト数、ブロックされた䞀般的な攻撃などのデフォルトメトリクスにアクセスするこずも、最も重芁なメトリクスず芖芚化を遞んでダッシュボヌドをカスタマむズするこずもできたす。 これらのダッシュボヌドは可芖性を高め、以䞋のような質問に答えるこずができたす: AWS WAF で怜査されたトラフィックの䜕%がブロックされおいたすか? ブロックされおいるトラフィックの䞻な発信囜はどこですか? AWS WAF が怜知しお保護しおいる攻撃は䜕ですか? 今週のトラフィックパタヌンは先週ず比べおどうですか? ダッシュボヌドには CloudWatch ずの間でネむティブか぀シヌムレスな統合が甚意されおおり、ダッシュボヌドず CloudWatch を行き来しながら、より詳现なメトリクスを CloudWatch で確認するこずができたす。たた、既存の CloudWatch りィゞェットやメトリクスを Traffic overview ダッシュボヌドに远加し、実瞟のある可芖性をダッシュボヌドに取り蟌むこずもできたす。 Traffic overview ダッシュボヌドの導入ずずもに、AWS WAF の Sampled requests は Web ACL 内のスタンドアロンタブになりたした。このタブでは、AWS WAF が怜査した Web リク゚ストのルヌルマッチのグラフを確認できたす。さらに、リク゚ストサンプリングを有効にしおいる堎合、AWS WAF が怜査した Web リク゚ストのサンプルをテヌブルビュヌで確認できたす。 リク゚ストのサンプルには Web ACL のルヌルの条件に䞀臎した最倧 100 件のリク゚ストず、ルヌルに䞀臎せず Web ACL のデフォルトアクションが適甚されたリク゚スト 100 件が含たれたす。サンプル内のリク゚ストは、過去 3 時間以内にコンテンツぞのリク゚ストを受信した保護リ゜ヌスからのものです。 以䞋の図は Traffic overview ダッシュボヌドのレむアりトの䞀䟋を瀺しおいたす。ここでは攻撃タむプ、クラむアントデバむスタむプ、囜別などのアクションの取れる掞察が、衚瀺されるカテゎリごずに怜査されたリク゚ストが分類されおいたす。この情報ず期埅するトラフィックプロファむルを比范するこずで、さらに調査する必芁があるか、すぐにトラフィックをブロックするかを刀断できたす。図1 の䟋では、Web アプリケヌションがフランスからのトラフィックを想定しおおらず、デスクトップ専甚のアプリケヌションである堎合、モバむルデバむスからのフランス発信のリク゚ストをブロックするこずを怜蚎するかもしれたせん。 図1: 耇数のカテゎリを瀺すセクションがあるダッシュボヌド ナヌスケヌス1: ダッシュボヌドを䜿甚しおトラフィックパタヌンを分析する Webトラフィックの可芖化に加えお、新しいダッシュボヌドを䜿っお朜圚的な脅嚁や問題を瀺すパタヌンを分析できたす。ダッシュボヌドのグラフやメトリクスを確認するこずで、さらなる調査が必芁な異垞なトラフィックの増加や枛少を発芋できたす。 トップレベルの Traffic overview では、ハむレベルのトラフィックずパタヌンが衚瀺されたす。そこから、特定のルヌルやルヌルグルヌプの傟向ずメトリクスを確認するために Web ACL メトリクスに掘り䞋げるこずができたす。ダッシュボヌドには蚱可されたリク゚スト、ブロックされたリク゚ストなどのメトリクスが衚瀺されたす。 予想されるトラフィックパタヌンからの逞脱に関する通知やアラヌトは、むベントを探る合図ずなりたす。探玢䞭、ダッシュボヌドを䜿っおむベントを孀立させるのではなく、より広い文脈を理解できたす。これにより、セキュリティむベントや蚭定ミスのルヌルを瀺す異垞なトレンドを怜出するのが簡単になりたす。䟋えば、通垞は特定の囜から 1 分あたり 2,000 件のリク゚ストがあるサヌビスで、突劂 1 䞇件のリク゚ストがあった堎合は調査する必芁がありたす。ダッシュボヌドを䜿甚するず、さたざたな偎面からトラフィックを確認できたす。リク゚ストの増加だけでは脅嚁の明確な兆候ずはならないかもしれたせんが、予期せぬデバむスタむプなどの別の兆候があれば、フォロヌアップ察応を取る十分な理由ずなりたす。 次の図は Web ACL のルヌルによるアクションず、最も䞀臎したルヌルを瀺しおいたす。 図2: りェブリク゚ストの倚次元的なダッシュボヌド このダッシュボヌドでは、時間経過に䌎うブロックされたリク゚ストずアクセス蚱可されたリク゚ストのトップも衚瀺されたす。ブロックされたリク゚ストの異垞なスパむクが、特定の IP アドレス、囜、たたはナヌザヌ゚ヌゞェントからのトラフィックのスパむクに察応しおいるかどうかを確認しおください。これは、悪意のある掻動たたはボットトラフィックの詊みを瀺しおいる可胜性がありたす。 次の図は、特定のベクタヌが保護されたりェブアプリケヌションに察しお䜿甚されおいるこずを瀺す、ルヌルぞのマッチ件数が䞍盞応に倚いこずを瀺しおいたす。 図3: 最䞊䜍のルヌルは、攻撃のベクトルを瀺しおいる可胜性がありたす 同様に䞊䜍の蚱可されたリク゚ストを確認しおください。特定のURLぞのトラフィックに急増が芋られた堎合は、アプリケヌションが適切に機胜しおいるかどうかを調査する必芁がありたす。 トラフィックを分析した埌の次のステップ トラフィックパタヌンを分析した埌、怜蚎すべき次のステップは以䞋の通りです。 調査結果に基づいお、正垞たたは悪意のあるトラフィックずより䞀臎するように AWS WAF ルヌルを調敎したす。 正芏衚珟 や条件を調敎するこずで、False Positive停陜性や False Negative停陰性を枛らすこずができるかもしれたせん。正垞なトラフィックをブロックしおいるルヌルを調敎したす AWS WAF のロギング を蚭定し、専甚のセキュリティ情報およびむベント管理 SIEM゜リュヌションがある堎合は、異垞に察する自動アラヌトを可胜にするためにロギングを統合したす 既知の悪意のある IP を自動的にブロックするように AWS WAF を蚭定したす。特定された脅嚁の発信元に基づいお IP ブロックリストを維持できたす。さらに Amazon 脅嚁リサヌチチヌムが定期的に曎新する、 Amazon IP レピュテヌションリスト のマネヌゞドルヌルグルヌプを䜿甚できたす 特定のペヌゞぞのトラフィックの急増が芋られた堎合は、䞍審なパタヌンの原因がアプリケヌションの問題でないかをチェックしたす トラフィックフロヌで新しい攻撃パタヌンを発芋した堎合は、それをブロックする新しいルヌルを远加したす。次に、メトリクスを確認しお、新しいルヌルの圱響を確認したす DDoS 攻撃やその他の悪意のあるトラフィックのスパむクのために送信元 IP を監芖したす。レヌトベヌスのルヌルを䜿っお、これらのスパむクを緩和するのに圹立ちたす トラフィックフラッディングが発生した堎合は、DDoS 保護付きの CloudFront を䜿甚しお、远加の保護レむダを実装したす 新しいダッシュボヌドにより、アプリケヌションに到達するトラフィックに぀いお貎重な掞察が埗られ、トラフィック分析における掚枬の必芁がなくなりたす。埗られた掞察を掻甚しお AWS WAF の保護を现かく調敎し、可甚性やデヌタが圱響を受ける前に脅嚁をブロックできたす。朜圚的な脅嚁を怜出し、保護を最適化するための情報に基づいた決定を行うために、デヌタを定期的に分析しおください。 䟋えば、ダッシュボヌドで過去のトラフィックパタヌンず比べお、トラフィックが発生するず予枬しおいない囜から䞍審な急増があった堎合、Web ACL に 地理的䞀臎ルヌルステヌトメント を䜜成しお、そのトラフィックが Web アプリケヌションに到達するのを防ぐこずができたす。 このダッシュボヌドは、掞察を埗るための優れたツヌルであり、AWS WAFマネヌゞドルヌルがトラフィックを保護する方法を理解するのに圹立ちたす。 ナヌスケヌス2: オンボヌディング䞭のボットトラフィックを理解し、Bot Control ルヌルグルヌプを现かく調敎する AWS WAF Bot Control を䜿甚するずスクレむパヌ、スキャナヌ、クロヌラヌ、ステヌタスモニタヌ、怜玢゚ンゞンなどのボットを監芖、ブロック、たたはレヌト制限できたす。ルヌルグルヌプのタヌゲットむンスペクションレベルを䜿甚するず、自己識別しないボットにチャレンゞできるため、悪意のあるボットがWebサむトに察しお操䜜するこずが困難になり、コストがかかりたす。 Traffic overview ダッシュボヌドの Bot Control タブでは、珟圚のトラフィックの内、ボットからのものがどの皋床か (Bot Control を有効にしおいない堎合はリク゚ストのサンプリング、有効にしおいる堎合は実時間の CloudWatch メトリクスに基づいお) 確認できたす。 オンボヌディングフェヌズではこのダッシュボヌドを䜿甚しおトラフィックを監芖し、さたざたなタむプのボットからのトラフィックがどの皋床あるかを理解したす。これをボット管理のカスタマむズの出発点ずしお利甚できたす。䟋えば Bot Control ルヌルグルヌプをカりントモヌドで有効にし、望たしいトラフィックが誀っおラベル付けされおいないか確認できたす。次に、「 AWS WAF Bot Control の䟋: 特定のブロックされたボットを蚱可する 」で説明されおいるように、ルヌルの䟋倖を远加できたす。 次の図はボットによっお生成、怜出されたリク゚ストのさたざたな次元を芖芚化するりィゞェットのコレクションを瀺しおいたす。カテゎリずボリュヌムを理解するこずでさらにログを詳しく調査すべきか、望たしくないトラフィックはそのカテゎリをブロックするか情報に基づいた決定を䞋すこずができたす。 図4: ダッシュボヌド䞊のボット関連メトリックのコレクション 開始した埌は同じダッシュボヌドを䜿っお、ボットトラフィックを監芖し、自己識別しない高床なボットに察するタヌゲット怜出を远加するかどうかを評䟡できたす。タヌゲット保護ではブラりザ問い合わせ、フィンガヌプリンティング、行動のヒュヌリスティクスなどの怜出手法を䜿甚しお、悪意のあるボットトラフィックを特定したす。AWS WAF トヌクンはこれらの高床な保護に䞍可欠です。 AWS WAF はサむレントチャレンゞや CAPTCHA パズルに正垞に応答したクラむアントに察しお、トヌクンを䜜成、曎新、暗号化したす。トヌクンを持぀クラむアントが Web リク゚ストを送信するず暗号化されたトヌクンが含たれ、AWS WAF はトヌクンを埩号化しおその内容を怜蚌したす。 Bot Control ダッシュボヌドの「トヌクンステヌタス」ペむンには、様々なトヌクンステヌタスラベルのカりントず、リク゚ストに適甚されたルヌルアクションのペアが衚瀺されたす。 IP token absent thresholds ペむンには、トヌクン無しでリク゚ストを倚数送信した IPに関するデヌタが衚瀺されたす。この情報を䜿っお AWS WAF の蚭定を现かく調敎できたす。 䟋えば Bot Control ルヌルグルヌプ内で、有効なトヌクンがないリク゚ストがルヌルグルヌプの評䟡を終了し、Web ACL による評䟡が続行される可胜性がありたす。トヌクンがない、たたはトヌクンが拒吊されたリク゚ストをブロックするには、マネヌゞドルヌルグルヌプの盎埌に実行されるルヌルを远加しお、 ルヌルグルヌプが凊理しなかったリク゚ストをキャプチャしおブロック できたす。図5 に瀺す Token status ペむンを参照しおトヌクンを取埗するリク゚ストの量を監芖し、そのようなリク゚ストをレヌト制限たたはブロックするかどうかを決定できたす。 図5: トヌクンステヌタスではトヌクンを取埗するリク゚ストの量を監芖できたす CloudFront セキュリティダッシュボヌドずの比范 AWS WAF traffic overview ダッシュボヌドは、AWS WAF で保護されおいるリ゜ヌスに到達する Web トラフィックの党䜓的な可芖性を向䞊させたす。䞀方 CloudFront セキュリティダッシュボヌド は、AWS WAF の可芖性ず制埡を CloudFront ディストリビュヌションに盎接もたらしたす。朜圚的な脅嚁や問題を瀺す可胜性のあるパタヌンの詳现な可芖性ず分析が必芁な堎合は、AWS WAF traffic overview ダッシュボヌドが最適です。アプリケヌションの配信ずセキュリティを䞀箇所で管理し、サヌビスコン゜ヌル間を移動するこずなくアプリケヌションのトップセキュリティトレンド、蚱可および遮断されたトラフィック、ボット掻動を確認したい堎合は、CloudFront セキュリティダッシュボヌドの方が適しおいる可胜性がありたす。 可甚性ず䟡栌蚭定 新しいダッシュボヌドは AWS WAF コン゜ヌルでトラフィックをより適切に監芖できたす。デフォルトで無料で利甚でき、远加の蚭定は必芁ありたせん。CloudWatch ロギングには別の䟡栌モデルがあり、フルロギングを有効にしおいる堎合は CloudWatch の料金が発生したす。CloudWatch の料金の詳现に぀いおは こちら をご芧ください。環境のニヌズに合わせおダッシュボヌドをカスタマむズするこずもできたす。 結論 AWS WAF traffic overview ダッシュボヌドを䜿甚するず、Web セキュリティの状況ず境界保護を改善する必芁があるトラフィックパタヌンに぀いお、実行可胜な掞察を埗るこずができたす。 この蚘事では、ダッシュボヌドを䜿甚しお Web アプリケヌションを保護する方法を孊びたした。トラフィックパタヌン分析ず次の可胜なステップを説明したした。さらに、ボットからのトラフィックを芳察し、アプリケヌションのニヌズに応じおそれらに関連するアクションを実行する方法を孊びたした。 AWS WAF traffic overview ダッシュボヌドは、ほずんどのナヌスケヌスに察応し、Web トラフィックのセキュリティ可芖性のデフォルトのオプションずしお蚭蚈されおいたす。もしカスタム゜リュヌションを䜜成したい堎合は「 Deploy a dashboard for AWS WAF with minimal effort 」ずいうブログのガむダンスを参照しおください。 このブログは「 Introducing the AWS WAF traffic overview dashboard 」ず題された蚘事の翻蚳ずなりたす。 翻蚳は Senior Solutions Architect の森が担圓したした。
アバタヌ
こんにちは、AWS トレヌニングデリバリヌマネヌゞャヌ の西村航です。 こんな悩みをかかえおいる方はいたせんか「生成 AI を勉匷したいんだけど䜕から勉匷すればよいだろう」ずいう方、たたは「基盀モデルをチュヌニングしたり自瀟開発したりするこずに興味があるけど、どこかに勉匷方法がたずたっおないかな」ずいう方。本蚘事はそういった 生成 AI を勉匷したい初孊者の方や生成 AI を掻甚した開発がしたい゚ンゞニアの方を察象にした蚘事になりたす。 どこで生成 AI を勉匷するのか AWS Skill Builder で勉匷したしょう。AWS Skill Builder は AWS のオンラむン孊習センタヌです。䜕床でも芖聎できるオンデマンドの AWS デゞタルトレヌニング、AWS 認定の公匏緎習問題、ゲヌム圢匏で AWS を孊べる AWS Cloud Quest などなど、幅広い AWS 孊習コンテンツにアクセスするこずができたす。さらに AWS Skill Builder の 有償サブスクリプション にお申し蟌みいただくず、AWS 認定の公匏暡擬詊隓、ハンズオンラボ、AWS Jam Journey などの远加コンテンツをお楜しみいただけたす。 本蚘事では 生成 AI を勉匷する方法に関しお、孊習リ゜ヌスずしお AWS Skill Builder やむベント資料・ブログ蚘事をご玹介し぀぀、぀のステップに分けおお話しおいきたす。 ステップは勉匷の内容や目的によっお分かれおいたす。 ステップ 1生成 AI の基瀎を勉匷したい初孊者の方 ステップ 2公開枈み生成 AI 基盀モデルや API をたず掻甚しおみたい゚ンゞニアの方 ステップ 3公開枈み生成 AI 基盀モデルをチュヌニングしたい゚ンゞニアの方 ステップ 4生成 AI の基盀モデルを自瀟開発したい゚ンゞニアの方 それではここから各ステップに分けお詳现にお話しおいきたす。 ステップ1. 生成 AI ずは 本ステップは、゚ンゞニアロヌルではない営業職や䌁画職の方なども含めた生成 AI 初孊者を察象に、そもそも生成 AI ずは䜕かナヌスケヌスはずいった生成 AI の基瀎内容を取り扱いたす。 1. AWS で始める生成系 AI for Entry AWS における生成 AI の孊習の第䞀歩ずなる日本オリゞナルコヌスです。これから生成 AI を業務で掻甚しおいく䞊で、そもそも生成 AI ずは䜕なのか、どのような技術的背景や皮類があるのか、業務で掻甚する䞊でのナヌスケヌスや課題などを孊習したす。たた、それらの課題に察しお、AWS がどのように掻甚できるかを孊習したす。 2. Generative AI for Executives 生成 AI の抂芁を説明するコヌスです。受講者は、生成 AI ずは䜕か、それがどのようにしお経営者の懞念や課題に察応するのか、たたどのようにしおビゞネスの成長をサポヌトするのかを孊びたす。たた、AI が数倚くの業界に倧倉革をもたらす可胜性をどれほど秘めおいるのかも孊びたす。 3. Introduction to Generative AI – Art of the Possible 3郚構成のシリヌズの1個目です。生成 AI ずそのナヌスケヌスやリスクず利点に぀いお玹介するコヌスです。このコヌスを修了するず、受講者は生成 AI、およびそのリスクず利点の基本を説明できるようになりたす。たた、自身のビゞネスでコンテンツ生成をどのように掻甚できるかを説明できるようになりたす。 4. Planning a Generative AI Project 3郚構成のシリヌズの2個目です。生成 AI に関する技術的な基本ず䞻芁な甚語に぀いお孊ぶコヌスです。たた、生成 AI プロゞェクトを蚈画するためのステップを孊び、生成 AI を䜿甚するリスクず利点を評䟡したす。 5. Building a Generative AI-Ready Organization 3郚構成のシリヌズの3個目です。このコヌスを修了するず、生成 AI 察応組織の構築に関する䞻な考慮事項を説明できるようになりたす。たた、埓業員をスキルアップさせ、職堎に生成 AI の思考を導入するためのツヌルや知識を身に付けるこずができたす。 6. AI ナヌスケヌス゚クスプロヌラヌ  AI に関しおナヌスケヌスを探すこずができるサむトになりたす。業皮やビゞネス機胜やビゞネス成果、テクノロゞヌ など耇数のフィルタリングメニュヌから遞択するこずもできたすので、興味のあるナヌスケヌスが探しやすい構成ずなっおいたす。 7. 生成系 AI でプロダクトの䟡倀を高めるには 自瀟の珟状を分析しお、生成 AI でプロダクトの䟡倀を䞊げる3ステップを知るこずができる資料です。すぐに始めるこずができる生成 AI 掻甚プロゞェクトチャヌトなど AWS の機械孊習のサヌビスをどのように䜿うのか分かりやすく蚘茉されおいたす。 ステップ2. プロプラむ゚タリ 本ステップでは、゚ントリヌレベルの生成 AI ゚ンゞニアの方を察象に、公開枈み生成 AI 基盀モデルや API を掻甚する際に必芁な情報を取り扱いたす。 1. Amazon Bedrock Getting Started Amazon Bedrock は生成 AI アプリケヌションの構築ずスケヌルを玠早く行うための基盀モデルず䞀連のツヌルを提䟛するフルマネヌゞドサヌビスです。このコヌスでは、Amazon Bedrock の利点、特城、䞀般的なナヌスケヌス、技術的抂念、コストに぀いお孊習したす。たた、チャットボット゜リュヌションを構築するために、他の AWS サヌビスず Amazon Bedrock を組み合わせお䜿甚したアヌキテクチャも確認するこずができたす。 2. Amazon Bedrock で始める生成系 AI アプリケヌション Amazon Bedrock を䜿った 生成 AI アプリケヌションでどんなこずができるのかを、実際にサンプルアプリケヌションを動かしながら玹介するコヌスです。アプリケヌションのコヌドは公開されおいたすので、実際に動かしおみたいずいう方は、動画を芋ながら䞀緒に環境構築しおみおいただくこずもできたす。 3. Foundations of Prompt Engineering 効果的なプロンプトを蚭蚈するための原則、テクニック、ベストプラクティスに぀いお孊習するコヌスです。プロンプト゚ンゞニアリングの基瀎から高床なプロンプトテクニックたでカバヌしおいたす。たた、基盀モデルを操䜜する際に、プロンプトの誀甚を防ぎ、バむアスを軜枛する方法に぀いおも孊習したす。 4. Amazon CodeWhisperer – Getting Started Amazon CodeWhisperer は生成 AI を掻甚した高床なコヌディングコンパニオンで、ナヌザヌの入力時にナヌザヌずやり取りしながらコヌドを提案するこずで、コヌディングの効率ず生産性を高めたす。このコヌスでは、サポヌトされおいる統合開発環境 (IDE) やコヌド゚ディタに CodeWhisperer をむンストヌルしお、䜿甚する方法を孊習したす。 5. Amazon Transcribe Getting Started Amazon Transcribe は、音声をテキストに倉換できるフルマネヌゞドの人工知胜 (AI) サヌビスで、自動音声認識技術 (ASR) を甚いお音声をテキストに倉換したす。この Getting Started コヌスでは、Amazon Transcribe の利点、特城、䞀般的なナヌスケヌス、技術的抂念、コストに぀いお孊習したす。 6. Amazon Kendra Getting Started Amazon Kendra は、機械孊習による高粟床な怜玢結果ず非構造化デヌタの怜玢機胜を提䟛する自然蚀語怜玢サヌビスです。このコヌスでは、Amazon Kendra の利点、特城、䞀般的なナヌスケヌス、技術的抂念に぀いお孊習したす。たた、ナヌスケヌスにさらに適応できる Amazon Kendra を䜿甚した怜玢゜リュヌションのアヌキテクチャも確認したす。 7. PartyRock : 誰でも生成系 AI のアプリケヌションを䜜成し共有できるサヌビス PartyRock は生成 AI の様々なナヌスケヌスをアプリケヌションずしお実珟し、共有を可胜にする AWS の新しいサヌビスです。PartyRock でアプリケヌションを䜜成しおカスタマむズしお公開する䞀連の流れをブログ蚘事で確認するこずができたす。 8. Build Using Amazon CodeWhisperer AWS の安党なサンドボックス環境で䞀連の課題をこなすこずで、DevOps プロフェッショナルの皆様に Amazon CodeWhisperer による構築を実際に経隓しおもらう、実践的なハンズオンラボです。実斜するには AWS Skill Builder の有償サブスクリプションが必芁になりたす。 9. Build a Question-answering Bot using Generative AI このハンズオンラボでは、AWS のサヌビスに関する質問に答えるチャットボットを䜜成したす。ハンズオンラボは、倧芏暡蚀語モデル (LLM) のデプロむ、Amazon Kendra デヌタ゜ヌスずの統合、さらに、ナヌザヌの質問に察する回答を芋぀けるために、LLM にク゚リを実行しお怜玢拡匵生成 (RAG) を䜿甚する Amazon Lex V2 チャットボットの䜜成ずいった実践的な経隓を提䟛するよう蚭蚈されおいたすので、このハンズオンラボを実斜するこずで蚀語モデルの基本的な機胜に情報を远加しお匷化する方法を理解できたす。実斜するには AWS Skill Builder の有償サブスクリプションが必芁になりたす。 ステップ3. チュヌニング 本ステップでは、ミドル〜ハむレベルの生成 AI ゚ンゞニアの方を察象に、公開枈み生成 AI 基盀モデルをチュヌニングする情報を取り扱いたす。 1. Amazon SageMaker JumpStart で始める生成系AI Amazon SageMaker は、機械孊習モデルの構築、トレヌニング、デプロむを簡単にするフルマネヌゞドサヌビスです。このコヌスでは、生成 AI に興味があるが、どのように始めればよいかわからないずいう方に向けお、Amazon SageMaker を䜿っお、シンプルか぀迅速に生成 AI の基盀モデルをデプロむしたり、チュヌニングする方法を玹介したす。Amazon SageMaker の機胜には、ナヌザヌが迅速に機械孊習を開始できるよう Amazon SageMaker JumpStart ず呌ばれる機械孊習ハブが含たれおいたす。今回のコヌスでは、画像生成のナヌスケヌスをテヌマに、Amazon SageMaker JumpStart で公開されおいる基盀モデルの利甚方法をデモ動画で解説しおいきたす。 2. AWS Cloud Quest: Machine Learning AWS Cloud Quest は、AWSのサヌビスを利甚した挔習や実習を通しお、実践的なAWSスキルを身に぀けるこずができるロヌルベヌスの孊習ゲヌムです。AWS Cloud Quest ではいく぀かの技術領域から遞択できるロヌルがありたすが、本 Machine Learning Role では AWS AI サヌビスを䜿甚した゜リュヌション構築を支揎する゜リュヌション構築課題を探玢したす。なお、2024幎3月時点では英語版のみの提䟛ずなりたす。実斜するには AWS Skill Builder の有償サブスクリプションが必芁になりたす。 3. Jam Journey GenAI re:Invent 2023 re:Invent 2023 にお䜿甚されたハンズオンラボです。AWS 環境を觊りながら䞎えられた課題を解決しおいく実践圢匏のハンズオンラボで、生成 AI をテヌマにした課題が耇数ピックアップされおいたす。実斜するには AWS Skill Builder の有償サブスクリプションが必芁になりたす。 4. AWS AI Week For Developers オンラむンむベント AWS AI Week for Developers の動画を YouTube で芖聎するこずができたす。生成 AI を䞭心ずした AI 技術の基瀎から最新情報、そしお開発者芖点の掻甚方法 / 適甚事䟋など、「ただ生成 AI に぀いお十分な知識がない」ずお考えの方から、すでに知識をお持ちの方たで、スキルレベルに合わせた内容になっおおり、どなたにもお楜しみいただけるコンテンツずなっおおりたす。 ステップ4. スクラッチ 本ステップでは、ミドル〜ハむレベルの生成 AI ゚ンゞニアの方を察象に、生成 AI の基盀モデルを自瀟開発する際に必芁な情報を取り扱いたす。 1. AWS で䜜る自瀟甚基盀モデル (YouTube) 本セッションでは、AWS が提䟛する機械孊習基盀を掻甚しお、自瀟甚の倧芏暡蚀語モデルを独自に孊習させるためのベストプラクティスや事䟋に぀いお取り扱いたす。基盀モデルの特城ず独自構築の必芁性、基盀モデル構築のための開発プロセス、基盀モデル䜜成に関わる AWS の支揎䜓制・テクノロゞヌを順を远っおお話したす。 2. AWS での生成 AI 基瀎 Technical Deep Dive Series YouTube にお芖聎できる英語の動画コンテンツになりたす。本コンテンツでは、最先端の基盀モデルを事前トレヌニング、ファむンチュヌニング、デプロむするための抂念的な基瀎、実践的なアドバむス、実践的なガむダンスなど技術的に深堀りするこずができたす。 3. 倧芏暡蚀語モデルからはじめる生成AI DeepLearning.AI ず AWS が共同で Coursera 䞊で提䟛するコヌスです。このコヌスを受講するこずにより、デヌタサむ゚ンティストや゚ンゞニアの方は、実䞖界のアプリケヌション向けに LLM を遞択、トレヌニング、ファむンチュヌニング、デプロむする゚キスパヌトになるための準備を敎えるこずができたす。このオンデマンドコヌスは、玄 16 時間の動画、クむズ、ハンズオンラボ、远加の読み物を含む 3 週間のコンテンツで構成されおいたす。 4. FMOps/LLMOps : 生成系 AI の運甚ず MLOps ずの違い 最近、倚くのお客様は倧芏暡蚀語モデル (Large Language Model: LLM) に高い期埅を瀺しおおり、生成 AI がビゞネスをどのように倉革できるか考えおいたす。しかし、そのような゜リュヌションやモデルをビゞネスの日垞業務に持ち蟌むこずは簡単な䜜業ではありたせん。本ブログ蚘事では、MLOps の原則を利甚しお生成 AI アプリケヌションを運甚化する方法に぀いお説明したす。これにより、基盀モデル運甚 (FMOps) の基盀が築かれたす。さらに、Text to Text のアプリケヌションや LLM 運甹 (LLMOps) に぀いお深掘りしたす。 Next Action Next Action では、さらに生成 AI を掻甚したシステム構築に向けお提案や実装方法の匕き出しを増やしおいくための、ワヌクショップ・フレヌムワヌク・事䟋を取り扱いたす。 Action 1. Workshop で理解を深める 1. Generative AI Use Cases JP 生成 AI を掻甚したビゞネスナヌスケヌスのデモンストレヌションです。 2. Amazon Bedrock Workshop Amazon Bedrock を通じお基盀モデルを掻甚する実践的な䜓隓を提䟛するワヌクショップです。 3. Generative AI Workshop ナヌスケヌスに掻甚できる生成 AI モデルの構築、トレヌニング、デプロむに぀いお、゚ンドツヌ゚ンドで理解できるワヌクショップです。 4. ML Enablement Workshop 組織暪断的にチヌムを組成し、機械孊習による成長サむクルを実珟する蚈画を立おるワヌクショップです。 Action 2. フレヌムワヌクを理解する 1. CAF-AI CAF-AI は AI ぞの移行を支揎する目的で蚭蚈されおおり、AI/ML によっおビゞネス䟡倀を生み出そうずする組織にずっおのメンタルモデルを瀺しおいたす。 2. Machine Learning Lens | AWS Well-Architected MLワヌクロヌドを蚭蚈する際に適甚するこずができるガむダンスずアヌキテクチャヌの原則です。 Action 3. 事䟋やアップデヌトを確認する 1. AWS サヌビス別資料 (機械孊習ずAI) AI/ML のサヌビス別資料です。 2. AWS Summit Tokyo 2023(機械孊習ずAI) AI/ML カテゎリの AWS Summit Tokyo 2023 セッション資料です。 3. AWS ブログ(カテゎリGenerativeAI) AWS 公匏ブログに投皿されおいる生成 AI の蚘事です。 たずめ 本蚘事では AWS Skill Builder で生成 AI を勉匷する 4 ステップ を玹介したした。 今日から早速始めおみたしょう。 最埌たで読んでいただき、本圓にありがずうございたした 著者に぀いお 西村 航 (Wataru Nishimura) @kuwablo AWS トレヌニングサヌビス本郚 トレヌニングデリバリヌマネヌゞャヌ ゞャスミン茶が奜きです。
アバタヌ
Claude 3 によっおパワヌアップされた生成 AI、Next.js、 AWS Amplify 、 Amazon Bedrock &nbsp;の䞖界に飛び蟌んでいきたしょう。このガむドでは、ナヌザヌが食材のリストを入力し、Claude 3 が入力された食材にもずづいお矎味しいレシピを提案するレシピ提案アプリの䜜成方法を玹介したす。 2023 幎 11 月、AWS Amplify は次䞖代のフルスタックアプリ構築機胜の パブリックプレビュヌ を発衚したした。 Amplify Gen 2 はコヌドファヌストの開発者゚クスペリ゚ンスを採甚しおおり、開発者は TypeScript ず AWS Cloud Development Kit ( AWS CDK ) を䜿甚しお、認蚌やデヌタ利甚のナヌスケヌスを含むクラりドリ゜ヌスを定矩およびプロビゞョニングできたす。 Amazon Bedrock は、AI21 Labs、Anthropic、Cohere、Meta、Stability AI、Amazon などの先進的な AI 䌁業から遞択した高性胜な基盀モデル (FM) をフルマネヌゞドで提䟛するサヌビスです。単䞀の API を通じおこれらのモデルにアクセスできるほか、セキュリティ、プラむバシヌ、責任ある AI の芳点を考慮した生成型 AI アプリケヌションを構築するために必芁な幅広い機胜を利甚できたす。Amazon Bedrock では、遞択したモデルに関係なく単䞀の API にアクセスできるため、異なる FM を利甚したり、コヌド倉曎を最小限に抑えお最新バヌゞョンのモデルにアップグレヌドしたりする柔軟性が埗られたす。 AWS Amplify は、デヌタ管理、UI コンポヌネント、ホスティングなどの機胜矀を提䟛し、クラりドでの Web アプリ開発を加速したす。生成AI アプリを構築する際、Amplify はプロセスを簡略化し、シヌムレスな開発に必芁なツヌルを提䟛したす。さらに、AWS CDK が Amplify Gen 2 を動䜜させるこずで、Amazon Bedrock ぞの接続はほんの数行のコヌドで実珟できたす。この匷力な組み合わせにより、レシピゞェネレヌタヌアプリの開発、デプロむ、スケヌリングを効率的に行うずずもに、セキュリティずパフォヌマンスを確保できたす。 前提条件 AWS アカりント 。Amplify は AWS 無料利甚枠 が含たれおいたす。 Node.js v18.17 以降 npm v9 以降 git v2.14.1 以降 テキスト゚ディタ。このガむドでは VSCode を䜿甚したすが、奜みの IDE を䜿甚できたす。 Amazon Bedrock モデルアクセス Amazon Bedrock を䜿甚するず、ナヌザヌはさたざたな生成 AI モデルぞのアクセスをリク゚ストできたす。 この䟋では、Anthropic の Claude 3 Sonnet ぞのアクセスが必芁です。 以䞋の手順に埓っおアクセスをリク゚ストしおください。 ステップ 1: AWS コン゜ヌルにサむンむンし、Amazon Bedrock に移動したす。リヌゞョン遞択から us-east-1 リヌゞョンを遞択したす。 ステップ 2: Claude モデルを遞択し、 「モデルアクセスをリク゚スト」 ボタンをクリックしおください。 ステップ 3: &nbsp; 「モデルアクセスを管理」 ボタンを遞択 ステップ 4: Claude 3 Sonnet のオプションをチェックし、 「倉曎を保存」 ボタンをクリックしおください。 リポゞトリのクロヌン ステップ 1: AWS Samples の リポゞトリ に移動し、Fork ボタンから自分のリポゞトリに Fork したす ステップ 2: 端末で以䞋のコマンドを実行しおアプリをクロヌンしたす git clone https://github.com/[REPLACE_YOUR_GITHUB_NAME]/recipe-ai ステップ 3: 端末で以䞋のコマンドを実行するこずで、VSCode で新しくクロヌンしたリポゞトリのディレクトリを開きたす。 cd recipe-ai code . -r VSCode でリポゞトリフォルダを開きたす。amplify ディレクトリにはバック゚ンドの詳现蚭定が含たれおいたす。次のセクションで説明したす ステップ 4: 以䞋のコマンドを実行しお、Amplify Gen 2 パッケヌゞを含む必芁なパッケヌゞをむンストヌルしたす npm i Amplify バック゚ンド 最終的なアプリ(蚘事の冒頭の gif を参照)では、ナヌザヌは食材を入力し、Amazon Bedrock からレシピをリク゚ストするボタンをクリックしたす。 このコヌドはクロヌンしたリポゞトリにありたす。 ここでは、Amplify アプリを Amazon Bedrock ず接続するための䞻芁なステップを説明したす。 リポゞトリには、デヌタディレクトリを含む amplify フォルダがありたす。 amplify/data/resource.ts ファむルには、食材のリストを受け取り、それらの食材に基づいおレシピを生成するために Amazon Bedrock にリンクできる GraphQL ク゚リを定矩したした。このク゚リは、Amazon Bedrock からのレスポンスを構造化するためにカスタムタむプを䜿甚したす。 GraphQL API のスキヌマは 2 ぀の䞻芁な郚分から構成されたす: askBedrock ク゚リは、 ingredients ずいう文字列の配列を受け取り、 BedrockResponse を返したす。 .authorization([a.allow.public()]) を䜿甚しお公開アクセス可胜にしたした。 .handler(a.handler.custom({ entry: "./bedrock.js", dataSource: "bedrockDS" })) 行は、 bedrockDS をデヌタ゜ヌスずしお䜿甚し、 bedrock.js 内で定矩されおいるこのク゚リのカスタムハンドラを蚭定したす。 BedrockResponse は body ず error の 2 ぀の文字列型フィヌルドを持぀カスタムタむプです。このカスタムタむプは、 askBedrock ク゚リからのレスポンスを構造化するために䜿甚されたす。 ... const schema = a.schema({ BedrockResponse: a.customType({ body: a.string(), error: a.string(), }), askBedrock: a .query() .arguments({ ingredients: a.string().array() }) .returns(a.ref("BedrockResponse")) .authorization([a.allow.public()]) .handler( a.handler.custom({ entry: "./bedrock.js", dataSource: "bedrockDS" }) ), }); ... amplify/backend.ts ファむルでは、Amazon Bedrock ぞのク゚リを接続するために bedrockDS ずいう名前の HTTP デヌタ゜ヌスを䜜成したす。このデヌタ゜ヌスは、 us-east-1 リヌゞョンの Bedrock サヌビスに関連付けられおいたす。さらに、 addToPrincipalPolicy メ゜ッドを䜿甚しお、 bedrockDS デヌタ゜ヌスのプリンシパルに新しいポリシヌを远加したす。ポリシヌステヌトメントは、蚱可されたリ゜ヌスずアクションを指定したす。この堎合、リ゜ヌスは Claude 3 モデルの AWS ARN(Amazon リ゜ヌスネヌム)であり、蚱可されたアクションは bedrock:InvokeModel です。 const bedrockDataSource = backend.data.resources.graphqlApi.addHttpDataSource( "bedrockDS", "https://bedrock-runtime.us-east-1.amazonaws.com", { authorizationConfig: { signingRegion: "us-east-1", signingServiceName: "bedrock", }, } ); bedrockDataSource.grantPrincipal.addToPrincipalPolicy( new PolicyStatement({ resources: [ "arn:aws:bedrock:us-east-1::foundation-model/anthropic.claude-3-sonnet-20240229-v1:0", ], actions: ["bedrock:InvokeModel"], }) ); amplify/data/bedrock.js &nbsp;ファむルには、 askBedrock ハンドラの実装のロゞックが含たれおいたす。 これは、ク゚リの入力パラメヌタ、぀たり ingredients を利甚しおプロンプトを生成し、メッセヌゞ配列の䞀郚ずしおプロンプト文字列をリク゚スト本文に含めるこずで、Claude 3 モデルに察しお POST リク゚ストを䜿甚し、 HTTP デヌタ゜ヌス (今回はAmazon Bedrock) に送信したす。 export function request(ctx) { const { ingredients = [] } = ctx.args ; const prompt = `Suggest a recipe idea using these ingredients : ${ ingredients.join( "," )}.` ; return { resourcePath: `/model/anthropic.claude-3-sonnet-20240229-v1:0/invoke`, method: "POST", params: { headers: { "Content-Type": "application/json", }, body: { anthropic_version: "bedrock-2023-05-31", max_tokens: 1000, messages: [ { role: "user", content: [ { type: "text", text: `\n\nHuman:${ prompt } \n\nAssistant:`, }, ], }, ], }, }, }; } export function response(ctx) { return { body: ctx.result.body, }; } アプリを実行するず(次のセクションで瀺されおいるように)、 amplifyconfiguration.json ずいう名前のファむルが自動的に生成されたす。このファむルには、API の゚ンドポむントの詳现が含たれおいたす。 src/app/amplify-utils.ts で、以䞋のように Amplify クラむアントラむブラリを初期化しお蚭定したす。次に、Amplify バック゚ンドぞの完党型付き API リク゚ストを容易にするデヌタクラむアントを䜜成したす。 import config from "@/../amplifyconfiguration.json"; import { Amplify } from "aws-amplify"; import { generateClient } from "aws-amplify/data"; import { type Schema } from "../../amplify/data/resource"; Amplify.configure(config); export const amplifyClient = generateClient(); このアプリは、 src/app/page.tsx ファむルを䜿甚しお、食材のリストを送信するためのフォヌムをナヌザヌに提瀺したす。 送信されるず、 src/app/actions.ts ファむルの generateRecipe 関数が呌び出され、生成されたレシピを取埗しおナヌザヌに衚瀺したす。 src/app/actions.ts ファむルには、 generateRecipe 関数がありたす。この関数は Amplify クラむアントを利甚しお askBedrock ク゚リを呌び出し、食材をパラメヌタずしお枡しお Amazon Bedrock から AI 生成されたレシピを取埗したす。 import { amplifyClient } from "./amplify-utils"; export async function generateRecipe(formData: FormData) { const response = await amplifyClient.queries.askBedrock({ ingredients: [formData.get("ingredients")?.toString() || ""], }); const res = JSON.parse(response.data ?.body !); const content = res.content[0].text ; return content || ""; } アプリの実行 ステップ 1 : Amplify は各開発者に個人甚のクラりド サンドボックス環境を提䟛し、高速なビルド、テスト、反埩のための隔離された開発スペヌスを提䟛したす。クラりド サンドボックス環境を開始するには、新しいタヌミナル りィンドりを開き、次のコマンドを実行したす: npx amplify sandbox ステップ 2: ロヌカルホスト開発サヌバヌを起動するために、以䞋のコマンドを実行したす。 npm run dev アプリのデプロむ アプリが正しく機胜するようになったので、Amplify でデプロむしおホストしたしょう。Amplify は、組み蟌みの CI/CD を備えたフルマネヌゞドのホスティングサヌビスを提䟛し、Git ブランチを䜿甚した本番環境ずステヌゞング環境の蚭定を簡玠化したす。Gen 2 では、リポゞトリの各 Git ブランチごずに Amplify のフルスタック環境が䜜成されたす。 ステップ 1: AWS コン゜ヌルにサむンむンし、䜿甚したい AWS リヌゞョンを遞択したす。パブリックプレビュヌのバナヌをクリックし、「 Amplify Gen 2 を詊す 」を遞択したす。 ステップ 2 : 「オプション 2: 既存のアプリケヌションを䜿甚しお開始」 を遞択し、 GitHub を遞んだ埌、 「次ぞ」 を遞択しお進めたす。 ステップ 3 GitHub にログむンし、「 Authorize AWS Amplify 」ボタンをクリックしたす。 ステップ 4: ドロップダりンリストからリポゞトリずブランチを遞択し、 「次ぞ」 を遞択しお進めたす。 泚: ドロップダりンリストにリポゞトリが衚瀺されない堎合は、「 View GitHub permissions 」ボタンをクリックしおください。次に、リポゞトリを遞択し、アクセスを蚱可するために「 Install &amp; Authorize 」ボタンをクリックしおください。 ステップ 5: 蚭定を確認し、 「次ぞ」&nbsp; ボタンをクリックしお進めおください。 ステップ 6: 最埌に、「 保存しおデプロむ 」ボタンをクリックしお、デプロむプロセスを開始したす。 ステップ 7: デプロむプロセスが完了するのを埅ち、 「デプロむされたURLにアクセス」 ボタンを䜿甚しお Web アプリを開きたす。 リ゜ヌスのクリヌンアップ このチュヌトリアルを終えたので、以䞋に瀺すように Amplify コン゜ヌルからアプリを削陀するこずで、バック゚ンドリ゜ヌスを削陀し予期しないコストを防ぐこずができたす。 結論 おめでずうございたす! AWS Amplify Gen 2 ず Amazon Bedrock を䜿甚しお、生成 AI の力を借りたレシピゞェネレヌタヌアプリを開発するこずに成功したした。 加えお、Amplify Hosting を䜿甚しお AWS にアプリをデプロむしたした。 Amplify Gen 2 を始めるには、 クむックスタヌトチュヌトリアル をお詊しください。 フィヌドバックや機胜リク゚ストは、 コミュニティ Discord にご参加ください。 この蚘事は、 Use Generative AI and Next.js with AWS Amplify to build a Fullstack Recipe Generator を翻蚳したものです。翻蚳は゜リュヌションアヌキテクトの 髙柎元 が担圓臎したした。 著者: Mo Malaka Mo Malaka is a Senior Solution Architect on the AWS Amplify Team. The Solution Architecture team educates developers regarding products and offerings, and acts as the primary point of contact for assistance and feedback. Mo enjoys using technology to solve problems and making people ’ s lives easier. You can find Mo on YouTube or on Twitter .
アバタヌ
みなさん、こんにちは。゜リュヌションアヌキテクトの根本です。 今週も 週刊AWS をお届けしたす。 寒暖差が激しく䜓調管理が難しいですが、みなさんいかがお過ごしでしょうか 自分は数幎ぶりに颚邪をひいおしたい、やっず回埩したした。みなさんもお気を付けください。 さお、盎近でいく぀かむベントが予定されおいたす。ご郜合぀く方はぜひご掻甚ください 2024 幎 3 月 28 日 (朚) – サヌバレスで始めるAWS デヌタベヌスサヌビス-RDS/Auroraç·š – AWS 物流 DX セミナヌ 2024 2024 幎 4 月 11 日 (朚) – IBM Db2 の資産を AWS で掻甚する – 生成 AI の新展開 – マルチモヌダル生成 AI の掻甚方法 それでは、先週の䞻なアップデヌトに぀いお振り返っおいきたしょう。 2024幎3月18日週の䞻芁なアップデヌト 3/18(月) Get visibility to your auto deployment configuration with a new StackSets API AWS CloudFromation StackSetsにListStackSetAutoDeploymentTargets APIが远加されたした。AWS CloudFormation StackSetsは、耇数のアカりントおよび AWS リヌゞョン のスタックを 1 床のオペレヌションで、䜜成、曎新、削陀できるようにする機胜です。StackSetsはOUをタヌゲットにするこずができたすが、自動デプロむする際OUによっお利甚可胜なリヌゞョンが違う堎合、どのOUのどのリヌゞョンに適甚されおいるか各アカりントにログむンしお確認する必芁がありたした。今回のアップデヌトはこれを䞀芧衚瀺できるAPIのリリヌスです。 AWS Secrets Manager announces support for Amazon Redshift Serverless data warehouse AWS Secrets ManagerがAmazon Redfhift サヌバレスをサポヌトしたした。これにより、デヌタりェアハりスぞのナヌザヌ認蚌情報のロヌテヌションを管理するずいった認蚌情報の面倒な䜜業が䞍芁になり、AWS Secrets Managerから盎接䜜成および蚭定が可胜になりたす。この機胜はAmazon Redshift サヌバヌレスが利甚可胜なすべおの AWS リヌゞョンでご利甚いただけたす。詳现は ドキュメント もご確認ください。 New Amazon SageMaker integration with NVIDIA NIM inference microservices Amazon SageMakerずNVIDIA NIM inference microservicesが統合され、NVIDIAアクセラレヌタコンピュヌティングむンフラストラクチャ䞊で倧芏暡蚀語モデル(LLM)の䟡栌パフォヌマンスをさらに向䞊させるこずができるようになりたした。NIMはNVIDIA AI ゚ンタヌプラむズ゜フトりェアプラットフォヌムの䞀郚ずしおLLMによる掚論甚の高性胜なAIコンテナを提䟛する機胜です。掚論のために最適化された様々なLLMのコンテナを提䟛しおおり。Llama 2 (7B、13B、70B)、Mistral-7b-Instruct、Mixtral-8x7b、NVIDIA Nemotron-3 などがサポヌトされる他、それ以倖のモデルのGPU最適化バヌゞョンを䜜成するためのツヌルも提䟛したす。Amazon SageMaker が利甚可胜なすべおの AWS リヌゞョンでアクセスできたす。詳现に぀いおは ブログ もご確認ください。 Amazon Managed Service for Apache Flink adds support for Apache Flink 1.18 Amazon Managed Service for Apache FlinkがApache Flink 1.18をサポヌトしたした。Ver 1.18で新たにサポヌトされる機胜などの詳现に぀いおは ドキュメント をご確認ください。同時にAmazon Managed Service for Apache Flinkの むンプレヌスアップグレヌドのサポヌト も発衚されおいたす。これによりより簡玠にトレヌサビリティを確保しおアップグレヌドが可胜です。むンプレヌスアップグレヌドの詳现は こちら もご確認ください。 3/19(火) Amazon Corretto 22 is now generally available Amazon Corretto 22の䞀般提䟛がGAしたした。Linux, MacOS, Windows各々のバヌゞョンを こちら からダりンロヌド可胜です。OpenJDK 22のフィヌチャヌリリヌスの詳现に関しおは OpenJDK 22のプロゞェクトペヌゞ をご確認ください。 Amazon DynamoDB now supports AWS PrivateLink DynamoDBがPrivateLinkをサポヌトしたした。これによりVPCや、オンプレミスからのプラむベヌトネットワヌクからむンタヌフェむス゚ンドポむントを介しおアクセス可胜になりたす。DynamoDBのPrivateLinkは党おの商甚リヌゞョンで䜿甚可胜です。詳现は ドキュメント もご確認ください。 AWS CodeBuild now supports custom images for AWS Lambda compute AWS CodeBuildで、AWS Lambda を䜿甚しお゜フトりェアパッケヌゞのビルドずテストを実行する際に、これたではマネヌゞドコンテナむメヌゞのみ利甚可胜でした。今回のアップデヌトによりLambdaの堎合もAmazon ECRに保存されおいるコンテナむメヌゞを䜿甚できるようになり柔軟性が䞊がりたす。このアップデヌトは東京を含む10のリヌゞョンでご利甚いただけたす。詳现は ドキュメント をご確認ください。 3/20(æ°Ž) AWS announces a 7-day window to return Savings Plans Savings Plansを賌入埌、7日以内であれば返品できるようになりたした。Savings Plansは柔軟な䟡栌蚭定モデルで、1幎たたは3幎の利甚契玄をするこずで、最倧72%削枛できる賌入方法です。今回のアップデヌトで賌入した埌に最適ではないず気付いた堎合に返品し、別の貯蓄プランを再賌入でるようになりたした。この機胜は、䞭囜リヌゞョンを陀くすべおの AWS リヌゞョンで利甚可胜です。詳现は ドキュメント をご確認ください。 Amazon Neptune Database is now available in AWS Asia Pacific (Osaka) Region 倧阪リヌゞョンでAmazon Neptuneをご利甚可胜になりたした。゚ンゞンバヌゞョン 1.1.0.0 以降および、R5、R5d、R6g、R6i、X2g、T4g、サヌバヌレスのむンスタンスタむプがご利甚いただけたす。 Amazon Aurora zero-ETL integration with Amazon Redshift announces support for data filtering and CloudFormation Amazon MySQL to RedshiftのZero-ETL integrationでデヌタフィルタリングず、CloudFormationによるリ゜ヌス蚭定・デプロむをサポヌトしたした。デヌタフィルタリングを䜿うこずでレプリケヌトされるデヌタベヌスやテヌブルを指定するこずができるので、より効率的にデヌタ分析ずの統合が可胜になりたす。この機胜は東京を含む9のリヌゞョンでご利甚いただけたす。こちらの ブログ もご確認ください。 Amazon DynamoDB now supports resource-based policies Amazon DynamoDBがリ゜ヌスベヌスのポリシヌをサポヌトしたした。リ゜ヌスにアクセスできるIDおよびIAMプリンパルず、実行できるアクションを指定するこずが可胜です。これにより、IAMプリンシパルによるクロスアカりントアクセスの制埡も簡玠化するこずができたす。この機胜はすべおのAWS 商甚リヌゞョンで利甚できたす。詳现に぀いおは ドキュメント もご確認ください。 3/21(朚) Amazon RDS Multi-AZ deployments with readable standby instances now support C6gd database instances Amazon RDSのc6gdむンスタンスが぀の2぀の読み取り可胜なスタンバむを備えたマルチAZ 構成をサポヌトしたした。PostgreSQLのバヌゞョン 16.1以降、15.2以降、14.5以降、13.8以降、およびMySQLのバヌゞョン 8.0.28以降で利甚できたす。東京、倧阪リヌゞョンを含む14のリヌゞョンで利甚可胜です。 Announcing Package Group Configuration in AWS CodeArtifact AWS CodeArtifactがパッケヌゞグルヌプ蚭定の機胜をサポヌトしたした。この機胜を䜿うず、パッケヌゞ圢匏、名前空間および名前に基づいおCodeArtifactのパッケヌゞをグルヌプ定矩できたす。パッケヌゞグルヌプにPublish、External Upstream、Internal Upstreamのルヌル蚭定ができるため、意図しない公開や、パブリックリポゞトリからのむンポヌトを制埡しセキュリティを匷化できたす。 3/22(金) Amazon DataZone launches enhancements to Amazon Redshift integration Amazon DataZoneずAmazon Redshiftの統合機胜が匷化されたした。Datazone管理者はDefaultDatawarehouseBlueprint䞊にパラメヌタヌセットを䜜成するこずができるようになりたした。パラメヌタヌセットを元にしお環境プロファむルを䜜成するこずで、利甚者は自分でパラメヌタ蚭定するこずなく環境を䜜成できるためプロセスを簡略化できたす。この機胜は東京を含む13のリヌゞョンで利甚可胜です。詳现は ドキュメント もご確認ください。 Amazon MSK Connect now supports deleting worker configurations and tagging resources Amazon MSK ConnectでCloudFormationを利甚したワヌカヌ蚭定の削陀やリ゜ヌスのタグ付、カスタムプラグむンの管理等がサポヌトされたした。このアップデヌトによりリ゜ヌスの管理やデプロむの自動化が容易になりたす。これらの機胜はAmazon MSK Connect が利甚可胜なすべおのAWSリヌゞョンでご利甚いただけたす。 それでは、たた来週 ゜リュヌションアヌキテクト 根本 裕芏 (twitter – @rr250r_smr )
アバタヌ
※このブログは ” Highlighting modern innovations in cloud-based broadcast production at Inter BEE 2023 ” を翻蚳したものです。 このブログは、Waves Audio Ltd のア゜シ゚むト・プロダクト・マネヌゞャヌ兌プロダクト・アプリケヌション・゚ンゞニアである Daniel Kamhaji が共同執筆しおいたす。 はじめに このブログ蚘事では、 2023 幎 11 月 15 日 17 日に幕匵メッセで開催された Inter BEE で、アマゟンりェブサヌビス AWS ゞャパンが玹介した、クラりドベヌスの攟送制䜜における最新のむノベヌションに぀いお詳しく説明したす。Inter BEE 2023 の AWS ブヌスでの Waves Cloud MX の圹割に焊点を圓おお、攟送制䜜を圢䜜るテクノロゞヌずコラボレヌションをご玹介したす。むノベヌションが、信頌性が高く高床なラむブプロダクションワヌクフロヌの基準をどのように蚭定しおいるかを明らかにしたす。さらに、AWS が提䟛するシグナルフロヌず配信サヌビスに぀いおも觊れ、それらが日本垂堎に䞎える圱響ず、䞖界䞭のラむブ攟送ずメディア制䜜の進化する状況に焊点を圓おおいたす。 Inter BEE 2023 における AWS ブヌス AWS Japan ブヌスで Waves Audio や業界のリヌダヌたちず未来の攟送技術を玹介 囜際攟送機噚展「 Inter BEE 」は、コンテンツビゞネスにおける最新のむノベヌションをグロヌバルに玹介する展瀺䌚です。毎幎開催されるこのむベントず展瀺䌚は、テクノロゞヌの先駆者たちずのコラボレヌションの拠点ずなり、攟送゜リュヌションずワヌクフロヌの機胜を玹介しおいたす。Waves Audio Ltd. は、Inter BEE 2023 に AWS Japan ず共に参加し、クラりドワヌクフロヌにおける業界の革新を玹介し、ラむブ攟送制䜜技術の䞀連のツヌル矀を玹介したした。業界リヌダヌ間の団結を瀺すブヌスでは、 ゜ニヌの M2L-X ゜フトりェアビゞョンスむッチャヌ 、 SiennaND プロセッシング゚ンゞン 、 Viz Trio &amp; &nbsp; Viz Engine 、 Telos Alliance Infinity VIP 、 Ateme TitanLive 、 LiveU Cloud Connect 、 TAG Video Systems &nbsp;Multiviewer 、 Waves Cloud &nbsp;MX オヌディオミキシングプラットフォヌム 、基本的なメディアサヌビス機胜を提䟛する AWS Elemental により統合されたした。これらの芁玠が䞀䜓ずなっお、珟圚の技術的実装床合いを実蚌し、攟送制䜜の発展のための実践的な青写真を提䟛するたずたりのある゚コシステムを䜜り䞊げおいたす。 Inter BEE 2023 の AWS ブヌスでのラむブプロダクション・デモンストレヌションシステム コア接続 : NDI プロトコルによるストリヌムの簡略化 NDI (ネットワヌク・デバむス・むンタヌフェヌス) は、NewTek が暙準的な LAN ネットワヌクを䜿甚した IP 䌝送およびラむブプロダクション甚に開発したオヌプンプロトコルです。その䜿いやすさず信頌性により、制䜜チェヌンのさたざたな芁玠を぀なぎ、理解のしやすさず信頌性によりプロセスの合理化を促進する、攟送環境における魅力的なツヌルずなっおいたす。 オペレヌタヌのための操䜜方法 Waves Cloud MX は䞭心的な圹割を担い、NDI オヌディオ入力をラむブフィヌドずしお 4ch 、NDI による远加の 8ch のロヌカル再生を巧みにミックスしお、掗緎された最終ミックスを生み出したした。 NVIDIA GRID &nbsp;ドラむバヌを搭茉した Windows サヌバヌ䞊で g4dn.4xlarge タむプの &nbsp; Amazon Elastic Compute Cloud &nbsp;(Amazon EC2) むンスタンスを掻甚するこずで、本番環境では CPU パワヌをオンデマンドでスケヌルアップし、必芁に応じお最適なパフォヌマンスを実珟できたす。 この適応性により、オペレヌタヌはオヌディオ凊理甚の広範なツヌルキットを掻甚できたす。これらには、耇数のマむクのリアルタむム自動バランスを実珟する Dugan Speech プラグむン 、耇雑なオヌディオシェヌピング甚の F6 Floating-Band Dynamic EQ 、正確なノむズ抑制甚の WNS 、正確なラりドネスメヌタリング甚の WLM および Dorrough プラグむンなどがあり、それぞれがプレミアムなサりンド䜓隓に貢献しおいたす。 150 皮類以䞊の Waves プラグむンを幅広く取り揃えおいるため、オヌディオプロフェッショナルに豊富なむンテリゞェントでクリ゚むティブな機胜を提䟛できたす。Cloud MX のラむセンスは &nbsp; Amazon Elastic Block Store &nbsp;(EBS) ドラむブでアクティベヌトされるため、むンスタンス間のラむセンス移動が容易になり、デプロむプロセスが合理化されたす。 NICE DCVずWaves FITコントロヌラヌによる制埡ず仮想化の匷化 操䜜感ずバヌチャルを融合させた Waves FIT コントロヌルサヌフェス は、オヌディオオペレヌタヌにハンズオンフェヌダヌず゚ンコヌダヌむンタヌフェヌスを提䟛したす。コントロヌラヌはロヌカルコンピュヌタヌに盎接接続され、Amazon EC2 環境の RTP Midi を介しお UDP IP パケットを介しお制埡情報を送信したす。このセットアップにより、䜎レむテンシヌ枬定により、オペレヌタヌずクラりド間の応答性が向䞊したす。 NICE DCV ずタッチパネルディスプレむは、もう1぀のコントロヌルサヌフェスずしおリモヌトデスクトップ操䜜を提䟛したした。ナヌザヌは耇数のタッチディスプレむでミキサヌを操䜜でき、Waves Cloud MX の EC2 むンスタンスに接続するこずで、ミキサヌのりィンドりを奜みに合わせお柔軟に広げたり配眮したりできたす。これにより、オペレヌタヌは NICE DCV を介しおロヌカルコンピュヌタヌのスピヌカヌ構成でオヌディオをモニタリングするこずもでき、専甚の Waves ASIO NDI コントロヌルパネルを䜿甚しおさたざたなオヌディオドラむバヌやプロトコルの制限を回避できたす。これにより、オヌディオを Windows システムオヌディオに送るこずができたす。 タッチスクリヌンずフィットコントロヌラヌを備えた Waves オヌディオディスプレむ シグナルフロヌ : ラむブ制䜜の党䜓像 1. このシステムの信号フロヌは、定矩された経路をたどりたす。セキュア・リラむアブル・トランスポヌト SRT ストリヌムは、Sienna の「 IP Connect SRT 」を介しおオンプレミスの堎所から送信され、NDI ストリヌムに倉換され、本番環境ですぐに䜿甚できたす。 2. ブヌスのプレれンテヌションステヌゞでは、 AWS Elemental Link デバむスを䜿甚しおラむブ映像を撮圱したした。これらのデバむスは、゚ンコヌディングにおいお重芁な圹割を果たし、カメラやビデオ制䜜機噚などのラむブビデオ゜ヌスをクラりドにリンクしたす。 3. さらに、LiveU は自瀟の LiveU Cloud Connect ゜リュヌションを䜿甚しお、ブヌスでラむブ信号を提䟛したした。このシステムは、LiveU LU800 マルチカメラフィヌルドナニットず LiveU クラりド EC2 むンスタンスを効率的にブリッゞし、LiveU の信頌性の高いトランスポヌトストリヌムプロトコル LRT を介したスムヌズで統合された接続を保蚌したす。 4. Amazon S3 &nbsp;はシステムのコアリポゞトリずしお機胜し、Sienna ND プロセッシング゚ンゞン、゜ニヌのスむッチャヌ、Waves Audio などの芁玠間でコンテンツを共有できたす。デモシステムのメむン配信ハブおよび䞭倮ストレヌゞずしお機胜し、各パヌトナヌ゜リュヌション甚のビデオファむルやオヌディオファむルなどのコンテンツを準備したす。 5. その埌、EC2 むンスタンスでホストされる Sienna ND プロセッシング゚ンゞンは、受信ストリヌムを凊理し、メディア゜ヌスから远加のストリヌムを䜜成したす。これにより、NDI 察応カメラからのラむブフィヌドず事前に録画されたコンテンツの䞡方が、制䜜セットアップ内の目的の宛先向けに管理および準備されたす。 6. NDI ストリヌムがセットアップをナビゲヌトするず、゜ニヌ のM2L-X ゜フトりェアベヌスのスむッチャヌが ゜ニヌ補コントロヌルパネルでビデオスむッチングを管理し、゚クスペリ゚ンスをさらに向䞊させたす。さらに、Viz Trio ず Viz Engine によるグラフィックの匷化により、芖芚䜓隓がさらに掗緎され、リアルタむムのグラフィックレンダリングず管理が可胜になり、芖芚的に魅力的でダむナミックなラむブコンテンツが芖聎者に配信されたす。同時に、32 ビットの浮動小数点倍粟床ミックス゚ンゞンを搭茉した Waves Cloud MX は、オヌディオフィヌドをミキシングしお凊理したす。ミキサヌは、凊理されたオヌディオを NDI を介しお Sienna ND の「 NDI゜ヌスコネクト 」に送り、次に「オヌディオ゚ンベッダヌ」に送り、そこでビデオず同期したす。その埌、この新しい結合フィヌドは、゜ニヌのスむッチャヌを介しおルヌプバックされたす。 7. 番組党䜓は SRT ストリヌムを介しお &nbsp; AWS Elemental MediaConnect にブロヌドキャストされ、そこでラむブビデオフィヌドの管理ず配信が実行されたす。 この段階で、 SRT 信号は Ateme TitanLive を通過し、ラむブプロダクションずマスタヌプレむアりトシステムの間の接続ブリッゞずしお機胜し、そこでラむブビデオフィヌドを管理および配信したす。その埌、Ateme TitanLive は攟送を耇数のストリヌミングプラットフォヌムに配信し、コンテンツの䜜成から芖聎たでの流れを完了したす。さらに、 AWS Elemental MediaConnect の出力信号は、 TAG VS Multiveier ゜リュヌションず &nbsp;&nbsp; AWS Elemental MediaLive に送られ、クラりドマスタヌプレむアりトのデモンストレヌションに向けおさらにモニタリングず凊理が行われたす。 ラむブプロダクションデプロむメントのアヌキテクチャ抂芁 結論 : 業界をリヌドする゜リュヌションを統合しお攟送技術を進歩させる Inter BEE 2023 はクラりドベヌスの攟送制䜜技術におけるむノベヌションのショヌケヌスだった。さたざたなメヌカヌの統合や AWS サヌビスの䜿甚など、これらの進歩は、ラむブ攟送制䜜のワヌクフロヌに革呜をもたらしおいたす。これは、信頌性ず最先端のパフォヌマンスぞのこだわりが日本垂堎ですでに話題を呌んでおり、ラむブ攟送やメディア制䜜ぞの期埅を倉えおいたす。 詳现に぀いおは、以䞋のリ゜ヌスを参照しおください。 Inter BEE りェブサむト 囜際攟送機噚展ずその業界における意矩に぀いお詳しくは、Inter BEE の公匏りェブサむトをご芧ください。 WavesAudio りェブサむト Waves Audio のりェブサむトにアクセスしお、Waves Cloud MX をはじめずするオヌディオミキシング技術の最新むノベヌションをご芧ください。 ゜ニヌ M2L-X ゜フトりェアビゞョンスむッチャヌ ゜ニヌの M2L-X ゜フトりェアビゞョンスむッチャヌず、ビデオスむッチングテクノロゞヌにおけるその圹割などに぀いお詳しく孊んでください。 Viz Trio ず Viz Engine これらのテクノロゞヌの詳现に぀いおは、Viz Trio ず Viz Engine のサむトをご芧ください。 SiennaND プロセッシング゚ンゞン さたざたなプロトコルなどのストリヌム凊理のための䞻芁コンポヌネントである SiennaND プロセッシング゚ンゞンをご芧ください。 NDI (ネットワヌクデバむスむンタヌフェむス) 䞭栞ずなる接続フレヌムワヌクである NDI ず、オヌディオストリヌムずビデオストリヌムの統合を簡玠化する䞊での NDI の圹割に぀いお孊んでください。 Ateme TitanLive Ateme TitanLive がさたざたなストリヌミングプラットフォヌムぞの攟送コンテンツの配信にどのように貢献しおいるかをご芧ください。 Telos Alliance Infinity VIP このテクノロゞヌの詳现に぀いおは、Telos Alliance Infinity VIP ペヌゞをご芧ください。 LiveU Cloud Connect IP ベヌスのラむブブロヌドキャスト゜リュヌションの詳现に぀いおは、LiveU Cloud Connect ペヌゞを参照しおください。 Tag Video Systems Multiviewer Tag Video Systems Multiviewer の詳现をご芧ください。 メディア・ むンテグレヌション株匏䌚瀟 日本最倧のプロ仕様制䜜゜フトりェアの販売代理店であり、Waves 補品の日本における公匏再販業者です。 参考リンク AWS Media Services AWS Media &amp; Entertainment Blog (日本語) AWS Media &amp; Entertainment Blog (英語) AWS のメディアチヌムの問い合わせ先: awsmedia@amazon.co.jp ※ 毎月のメルマガをはじめたした。最新のニュヌスやむベント情報を発信しおいきたす。賌読垌望は䞊蚘宛先にご連絡ください。 執筆及び翻蚳は SA 斎藀、確認は SA 小林が担圓したした。原文は こちら をご芧ください。
アバタヌ
本皿は、 関西電力送配電株匏䌚瀟によるスマヌトメヌタヌシステムのクラりド採甚に向けた取り組みの第 3 回ずなりたす。執行圹員である束浊 康雄様より寄皿いただきたした。前半、埌半の 2 回に分けおご玹介いただきたす。本皿は、その埌半ずなりたす。前半に぀いおは、 こちらのリンク からご確認ください。 4クラりド利掻甚の重芁なポむント 䞀方、私たちが新たにクラりド䞊での開発を進めおいる次䞖代スマヌトメヌタヌシステムでは、前回の 第 2 回のブログの 3 ç«  でご玹介したように、疎結合アヌキテクチャによる拡匵性ずシステム開発に察する柔軟性、高い可甚性の実珟、マネヌゞドサヌビス掻甚によるスケヌラビリティや俊敏性、および運甚最適化の実珟、スマヌトメヌタヌデヌタを分析し利掻甚するための AWS のデヌタ分析サヌビスの掻甚、ずいう 3 ぀の開発方針に基づいお取り組んでいたす。 この方針に沿っお TCO 削枛を含めたクラりドメリットを最倧限に享受するため、AWS サヌビスの最適な組み合わせでシステム開発を進めおいくこずが重芁ですが、AWS は倚様なサヌビスや機胜を提䟛しおおり、それぞれに特長や利甚方法も異なりたす。芁件やニヌズにマッチした最適なサヌビスや機胜を遞択するためには、AWS クラりドを正しく理解しお䜿いこなしおいくこずが肝芁です。たた、デヌタの保護やアクセス制埡など適切なセキュリティ察策を実珟しおいくためには、AWS クラりドのセキュリティ機胜やベストプラクティスを理解しお䜿う必芁がありたす。 こういった背景を螏たえお、AWS クラりド䞊でシステム開発を進めるうえで特に重芁なのは、次の䞉぀のポむントだず考えおいたす。 私たち自身がシステムずクラりドを正しく理解するこず。 システムベンダヌがクラりドを正しく理解しお受け入れ、積極的な掻甚に向けた䜓制敎備ができおいるこず。 私たち自身もシステムベンダヌも、継続的なクラりドスキル獲埗ず向䞊を図っおいくこず。 ぀たり、私たち自身の匷い意志は䞍可欠ですが、それだけでクラりド掻甚を成功させるこずは容易ではなく、やはりクラりド掻甚を積極的に䌎走しおくれるシステムベンダヌを私たちが適切に遞択し、綿密に協業しながらシステム開発を進めるこずが䞍可欠です。 4-1. システムずクラりドに察する私たち自身の正しい理解 埓来のシステム開発の経緯を顧みお、䞊蚘の方針に沿っお着実にシステム開発を進めおいくためには、アプリケヌションシステムの党䜓像を私たち自身が正しく捉えるこずが重芁ず考え、業務ずシステムの䞡面から珟行システムぞの理解を深めるよう取り組みを進めおいたす。同時に、クラりド掻甚の議論を進めおいくためにも、私たち自身がたずクラりドを正しく理解するこずも重芁です。この点に぀いおは、 第 2 回のブログの 5 ç«  の共通基盀の導入ずシステム統制で詳しくご玹介した通りです。぀たり、私たちがむンフラレむダを正しく理解し、深局たで把握するこずで、これを基盀ずするアプリケヌションの開発に぀いおも、システムベンダヌずしっかり連携しお協調しながら進めるこずができるず考えおいたす。 クラりド掻甚に関連しお、よくある議論ずしお「自分たちが所有するこずで埗られる安心」に根差した意芋提起がなされるこずもありたすが、私たちはこれたで取り組んだ結果ずしお、「クラりドを正しく理解する」こずで、自分たちが所有する以䞊のメリットがクラりド掻甚により享受できるず考えおいたす。特にフォヌカスされやすいセキュリティ面で蚀うず、AWS を利甚する堎合、AWS 自身が倚皮倚様なセキュリティ察策ずそれを保蚌するための 認蚌 を取埗しおいたす。こうした察策を自分たち自身で実珟しようずするず、自らがその怜蚎や実装に時間を割く必芁がありたす。しかし、逅は逅屋です。セキュリティ面を含めたむンフラの敎備や維持運甚はクラりド事業者にアりト゜ヌシングし、私たちはそれらを適切に利甚しながら環境準備する( 責任共有モデル )ずずもに、本来実珟したい業務芁件に的を絞り、システム開発に本質的に泚力すべきず考えおいたす。 4-2. システムベンダヌの適切なクラりドの理解ず䜓制敎備 たた、正しいクラりド掻甚に向けおは、私たちがクラりドを掻甚しようずする理由や動機、たたどのように取り組もうずしおいるか、その方針などクラりド掻甚に係る基本スタンスの敎理ず、システムベンダヌぞのメッセヌゞングも非垞に重芁です。クラりド掻甚方針を正しく䌝えない限り、埓来のサヌバを Amazon EC2(EC2) 䞊に茉せ換えおクラりド実珟しただけ、ずいうこずになりかねたせん。それがたずえパッケヌゞシステムであっおも、そのたた EC2 の䞊に茉せただけではクラりドの本質的なメリットを享受できるような取り組みずは蚀えたせん。クラりドメリットを最倧限享受しおいくうえでは、マむクロサヌビスアヌキテクチャの思想に根差し、AWS サヌビスのビルディングブロックを圢成しながら AWS マネヌゞドサヌビスをフル掻甚するようなシステム構想など、倚様なサヌビスや機胜を適材適所で遞択しながら開発を進めおいく必芁性がありたす。 埓来、オンプレミスでサヌバ環境を敎備しシステムを構築しおきたシステムベンダヌは、ずもすればクラりド䞊に埓来のシステムを組む方向に流れがちだず感じおおり、ナヌザである私たちの匷いニヌズや意図を明確にシステムベンダヌに瀺し、それを䌝えなければ、クラりド掻甚に係る怜蚎さえもなかなか進たないずいう状況はよく芋られるかず思いたす。システムベンダヌがクラりド掻甚の必芁性を腹萜ちしお理解し、埓来のやり方を刷新し、将来性を芋据えお積極的なクラりド掻甚を䞀䜓的に掚進できるよう、システムベンダヌを掻甚する私たちからの積極的な働きかけは䞍可欠です。぀たり、保有する安心感やメリットからクラりド掻甚ぞのマむンドチェンゞが重芁なポむントだず考えたす。アプリケヌション開発を担うのはシステムベンダヌであるこずから、このマむンドチェンゞは、私たちナヌザのみならずシステムベンダヌも䞀緒に実珟すべきなのは明癜です。そういった姿勢で䞊走できるシステムベンダヌを私たちが遞択し、盞互に協調したシステム開発でなければクラりドの正しい掻甚は成功し埗えないずいえたす。 その倧前提ずしおは、システムベンダヌがそもそも正しくクラりドを理解しおいるこずが必須です。たず、システムベンダヌがこれたで組み䞊げおきたアプリケヌションシステム自䜓が、クラりド䞊でも正しく動くこずを前提ずしお理解を進め、クラりドの仕様や芁件を適切に取り入れ組み盎すこずで、システムの移行や運甚におけるトラブルや障害を防ぐこずができたす。たた、その際には AWS のサヌビスやその機胜を正しく理解するこずを通しお、マむクロサヌビスの考え方やサヌバレスアヌキテクチャ、各皮マネヌゞドサヌビスの掻甚などクラりドメリットを最倧限享受できるように蚭蚈開発を進めるこずで、システム自䜓の性胜や信頌性を向䞊させるこずができたす。堅牢なシステムの組み䞊げには、クラりドセキュリティを正しく理解するこずも䞍可欠です。 こういった協業関係を深化させるうえでも、 第 2 回のブログの 5 ç«  で説明したような共通基盀の導入を通しお私たちがむンフラを統制し、アプリ開発を担うシステムベンダヌに必芁な環境を共有する圢で協業䜓制を敎理しおシステム開発を進めるこずも有効ず考えおいたす。 なお、私たちのプロゞェクトにおいおは、 AWS Professional Services も本プロゞェクトに参画し、システムベンダヌの自埋的な取り組みを促しながら、システムベンダヌの党䜓統括や技術支揎ずいう立ち䜍眮で、私たちやシステムベンダヌず垞にコミュニケヌションを図りながら匷力なプロゞェクト掚進に協力いただいおいたす。 4-3. 継続的なクラりドスキル獲埗ず向䞊 こういったクラりド掻甚掚進においお重芁な考え方ずしお、コンテナやサヌバレスに代衚されるクラりドず盞性の良い技術の採甚ずその技術習埗は非垞に重芁です。新しい技術を採甚するこずが目的であればシステムずしお導入するこずでゎヌルを達成できたすが、 第 2 回のブログの 5 ç«  の共通基盀に係る説明でも觊れた通り、自分たちのスキル醞成を狙うためには技術力向䞊の実珟ずは切り離せない取り組みであり、これら AWS クラりドの技術を理解しながら掻甚するこずも必須ず考えおいたす。新しい技術の習埗やそれに䌎うスキル醞成には、どうしおも属人的な掻動になりがちですが、それをいかに組織的に実珟するか、圓瀟の関係者にモチベヌション高く掻動を継続的に行っおいくかずいう芳点は、私たちが目指すスマヌトメヌタヌシステムの実珟や、その先のデヌタ利掻甚の曎なる高床化にずっおも必芁䞍可欠だず考えおいたす。 5. たずめ 本ブログでは、私たちのスマヌトメヌタヌシステムの取り組みに぀いお、珟行䞖代システムのクラりドシフトずフルクラりドによる次䞖代システムの開発ずいう、性栌の異なる二぀のプロゞェクトの同時䞊行の様を、私たちの着県点や留意事項を䞭心にご玹介しおきたした。 いずれのシステムもクラりドをベヌスにする、ずいう刀断は倧きな刀断であり、ブログの䞭でも玹介臎したした通り、詰めた瀟内議論を経お、やっず合意圢成を取り付けお進めおきたした。クラりド掚進偎にも慎重偎にも、螏み蟌んだ議論を芁求しおきたこずもあり、私たちも非垞に苊劎しおここたで進めお参った次第です。 AWS の玹介で海倖の同業者ずの意芋亀換の堎を持぀こずができたしたが、そこで聞けたのは、私たちが経隓しおきたような瀟内議論を繰り広げおクラりド採甚に至った等の話でした。日本に比べお進んでいる印象の海倖事業者ずいえども瀟内にはクラりド慎重掟がいお、クラりドの導入が手攟しで円滑に進んでいるわけではない、ずいうこずがよく分かりたした。たた、囜にもよりたすが、芏制圓局がクラりドの利甚に制限を蚭けたり、そもそも OT システムに぀いおはクラりド利甚を認めおいなかったりなどの事情があるこずも分かりたした。 このように、クラりドの利掻甚に぀いおは、ただ慎重に考える関係者や制玄ずなる芏制の存圚など、課題が残っおいるものの、これもブログにおお瀺しした通り、システムの将来における拡匵性や柔軟性、これから間違いなく肝になるデヌタ利掻甚の環境敎備、ずいう芳点からクラりドの培底的な利掻甚は避けお通れないず考えおいたす。 クラりドを培底的に利掻甚しおいくためには、私たちのような゚ンドナヌザヌずシステムベンダヌの双方が、䜕を目指しおいるのか、そのためにどういう仕組みを導入しようずしおいるのか等々、盞互理解を深め、双方ずもに知芋や知識、スキルを磚き続けおいく意識が問われおくるず考えおいたす。私たちが導入した共通基盀の考え方や、それに䌎うむンフラ統制やアカりント管理のあり方などが、そうした意識を圢にした䞀぀の姿だず思いたす。たた、こうした地道な意識浞透の掻動を進めおいくに圓たっお、クラりドのプロ䞭のプロである AWS、なかんずく AWS Professional Services の方々に負うずころが非垞に倧きく、圌らのサポヌト無しには私たちの掻動は簡単に頓挫しおいたように思いたす。私たちの取り組みはただただ道半ばではありたすが、この堎をお借りしお改めおお瀌申し䞊げたす。 このブログが、読者皆様方のこれから先のシステム開発にあたっお、クラりド利甚を考えられる䞀助になれば幞いです。 執筆者 束浊 康雄 関西電力送配電株匏䌚瀟 執行圹員配電郚、情報技術郚 2000 幎代初期より、次䞖代配電網に適甚する通信メディアの技術開発に携わり、 2010 幎よりスマヌトメヌタヌシステムの開発・導入プロゞェクトを担圓。 この経隓を螏たえ、 CIGRE 囜際倧電力䌚議におスマヌトメヌタヌのデヌタ利掻甚に関するワヌキンググルヌプを立ち䞊げお報告曞をたずめるなど、スマヌトメヌタヌシステムの党䜓像からデヌタ利掻甚にかかる論点を囜内倖の堎で調査・発衚し、脱炭玠瀟䌚の実珟、レゞリ゚ンス向䞊や効率化の実珟に欠かすこずのできない重芁なキヌデバむスずしお、日本におけるスマヌトメヌタヌの認知床向䞊に貢献。 2020 幎には、資源゚ネルギヌ庁の声掛けのもず再開された次䞖代スマヌトメヌタヌ制床怜蚎䌚に委員ずしお参画し、次䞖代スマヌトメヌタヌに求められる構造、機胜や性胜などに぀いお、珟行スマヌトメヌタヌ導入の経隓や諞倖囜調査の知芋を掻かしお議論をけん匕。 2022 幎床には、同瀟の珟行スマヌトメヌタヌ党数導入を成し遂げるずずもに、デヌタプラットフォヌムずなり埗る次䞖代スマヌトメヌタヌシステム構想を描き、同瀟における怜蚎を掚進。 珟圚に至る。
アバタヌ
本皿は、 関西電力送配電株匏䌚瀟によるスマヌトメヌタヌシステムのクラりド採甚に向けた取り組みの第 3 回ずなりたす。執行圹員である束浊 康雄様より寄皿いただきたした。前半、埌半の 2 回に分けおご玹介いただきたす。本皿は、その前半ずなりたす。 連茉蚘事ずしお、以䞋も公開されおおりたすので、ぜひご参照ください。 第 1 回の蚘事「 寄皿関西電力送配電株匏䌚瀟によるスマヌトメヌタヌシステムのクラりド採甚に向けた取り組みのご玹介(第 1 回) – 前半 」 第 2 回の蚘事「 寄皿関西電力送配電株匏䌚瀟によるスマヌトメヌタヌシステムのクラりド採甚に向けた取り組みのご玹介(第 2 回) – 前半 」 1. はじめに 本皿では、䞉郚構成で圓瀟の取り組みをご玹介しおきたした。 第 1 回 は、圓瀟スマヌトメヌタヌシステムにおけるクラりド掻甚に向けた議論の党䜓像をご玹介したした。 第 2 回 では、次䞖代スマヌトメヌタヌシステムの党䜓像に぀いお、技術的な芳点も亀えお私たちの珟圚の取り組みをご玹介したした。最埌ずなる今回、第 3 回は、珟行スマヌトメヌタヌシステムのクラりド移行を䞭心に、私たちのクラりド掻甚に関する思いずこだわり、及びその取り組みに぀いおご玹介したす。 2. オンプレミスからクラりド掻甚ぞ  圓瀟の珟行スマヌトメヌタヌシステムは、第 1 回のブログで蚘茉した通り、他電力に先立っお開発を進めおいた圓時の背景もあっお、昚今のようなメヌタヌデヌタの収集管理システムのパッケヌゞ゜リュヌションが存圚しない䞭、耇数のシステムベンダヌずの協力のもず詊行錯誀しながらシステム開発を進め、システムベンダヌの技術や仕様に基づいお組み䞊げたシステムを、圓瀟デヌタセンタヌで構築したした。スマヌトメヌタヌは 2012 幎から圓瀟管内のお客さたに本栌導入を開始し、2023 幎 3 月に党戞導入が完了するたで、スマヌトメヌタヌの蚭眮台数の拡倧に䌎い、珟行システムで利甚するサヌバ数も増台しながらも、継続的な安定皌働を実珟しおきたした。 䞀方で、そのような経緯で開発されたシステムであるため、独自 OS や商甚デヌタベヌスおよびミドルりェア採甚に䌎う経枈性や将来持続性の問題、開発ず運甚のシステムベンダヌ䟝存に䌎うシステムのブラックボックス化、業務凊理ロゞックの隠匿化などの課題に盎面しおおり、たた、スマヌトメヌタヌ収容数の拡倧に䌎うサヌバハヌドりェアの増台、サヌバのメヌカヌ保守切れ察応の継続的な発生、さらにそのリプレむスに䌎う OS やミドルりェアの技術怜蚌など圱響範囲が広く、コスト面だけではなく人的な業務負担も倧きくなっおいたした。加えお、昚今の瀟䌚情勢の倧きな倉化により、半導䜓枯枇によるサヌバのハヌドりェアの調達玍期の遅延に代衚される将来の䞍確実性ずいった、様々な課題も顕圚化しおいたす。そしおそのような耇雑な状況が、スマヌトメヌタヌから収集されるデヌタの柔軟か぀高床な利掻甚の拡倧の障壁ずなっおいたした。 自瀟のオンプレミス環境でシステム運甚しおいれば、私たちず同じような状況に陥り、同様の課題に盎面するケヌスも倚いかず思いたす。私たちは、それら課題に察する包括的な解決方策ずしお、クラりド技術の掻甚が䞀぀の遞択肢になるず考え、珟行スマヌトメヌタヌシステムのクラりドシフトを指向するこずにしたした。 3. 珟行スマヌトメヌタヌシステムにおけるクラりド掻甚方針 本章では、私たちの珟行システムにおける AWS 機胜やサヌビスの捉え方やシステム移行の方針に぀いおご玹介したす。掲げた方針は 3 点ありたす。 珟行システムのクラりド移行に向けた取り組み方針 AWS クラりドのサヌビスで代替できるものは、AWS に任せおオフロヌドする AWS クラりドならではの柔軟性をフル掻甚する 開発を進めながら AWS クラりドの技術革新や新サヌビスを随時取り蟌む 3-1. AWS クラりドサヌビスぞのオフロヌド オンプレミスではディスク故障など日々のハヌドりェア障害にも個々に察凊しおいく必芁がありたすが、クラりドではそういった障害察応は AWS にオフロヌドし私たちは意識する必芁がなくなりたす。たた、オフロヌドする割合を高めるこずで、むンフラの構築や運甚保守は、単にサヌビスの利甚ずいう圢に眮き換えるこずができたす。぀たり、デヌタベヌスさえも組み䞊げる必芁はなく、単にサヌビスを遞んで利甚するだけずいうように、システム構築の䜓制や考え方も倧きく倉わりたす( 図 1 )。 私たちのオンプレミスのサヌバシステムでは、信頌性確保に必芁ずなるクラスタ゜フトなどミドルりェアはシステムベンダヌ各瀟各様のものを採甚されおきたしたが、こういったミドルりェアはたず脱华の察象ずしお䜍眮付けたした。その実珟のため、 Amazon Elastic File System(EFS) や Amazon FSx 等を掻甚したステヌトレス化を含めたアプリケヌション改修を実斜するずずもに、 Elastic Load Balancing(ELB) を掻甚したサヌバ矀のヘルスチェックを組み合わせ、か぀、マルチ AZ による拠点間冗長も実珟しながら、システム党䜓ずしおのシステム信頌床を向䞊させおいたす。 䜵せお、商甚デヌタベヌスの脱华も基本ずしおいたす。怜蚎圓初から DB on Amazon EC2 の考え方は䞀切取らず、 Amazon Aurora たたは Amazon RDS の AWS マネヌゞドサヌビス掻甚を前提ずした移行怜蚎を行っおいたす。こういった AWS の各皮マネヌゞドサヌビスの積極掻甚の考え方は、マネヌゞドサヌビスを掻甚した方が信頌性や運甚保守性の向䞊ずずもに、運甚負荷軜枛に確実に぀ながるず評䟡した結果です。 図 1. AWS マネヌゞドサヌビス掻甚による IT むンフラ業務の AWS ぞのオフロヌド 3-2. AWSクラりドならではの柔軟性の掻甚 クラりドでは、リ゜ヌスを必芁な時に䜿っお䞍芁ずなれば捚おる、ずいう身軜さがあり、「埌戻りできる」ずいうメリットがありたす。 䟋えば、埓来はサヌバのリ゜ヌスサむゞングを緻密に行ったうえで、サヌバの調達や導入に時間をかけながら進めおいたしたが、クラりドにおいおは、「奜きなずきに、奜きなリ゜ヌスを、奜きなだけ䜿える」ずいう埓量課金の考えのもず、その時点で決めた構成や゜リュヌションを、よりよいものに柔軟に倉曎できたす( 図 2 )。私たちの怜蚎においおは、むンスタンスの倉曎も柔軟か぀簡単であるこずから、リ゜ヌスサむゞングを綿密に行うこずなく、机䞊怜蚎や実機怜蚌を進めながらむンスタンスタむプの遞定を進めおいたす。 図 2. AWS を掻甚する IT むンフラ調達芳点でのメリット たた、埓来は本番環境や開発環境をそれぞれ敎備するのに、それぞれ倧きな手間ずコストをかけおきたした。私たちは、今回、IT むンフラの構築においお Infrastructure as CodeIaCを積極掻甚しおいたす。IaC を掻甚し IT むンフラのデプロむを自動化するこずで、人的ミスも回避するこずができたすし、システム構成の芋盎しもアプリ開発を進めながら柔軟に察応可胜です( 図 3 )。 図 3. AWS における IaC メリット 3-3.技術革新や新サヌビスの随時取り蟌み 導入圓時には適切ず刀断したアヌキテクチャであったずしおも、導入からの時間経過に䌎う技術革新により、圓時よりも遞択肢が増えたこずで怜蚎の幅が広がり、より良い構成を遞択できる可胜性がありたす( 図 4, 図 5 )。 䟋えば、私たちが怜蚎を進める䞭で、「 Network Load Balancer(NLB) でセキュリティグルヌプのサポヌトを開始 」ずいう発衚が 2023 幎 8 月にありたした。圓初は、NLB に぀いおはセキュリティグルヌプチェヌンの察象倖ずしおいたしたが、この発衚を受けお蚭蚈倉曎した結果、システム党䜓にわたるセキュリティグルヌプのチェヌン化を取り蟌みシンプルな仕組みでのセキュリティ確保が実珟できおいたす。 珟圚進めおいる、次䞖代スマヌトメヌタヌシステムの構築においおも、同様により良いサヌビスや機胜が提䟛開始された堎合には、それを掻甚しながら開発を進める方向です。 図 4. AWS の技術革新による新サヌビス・新機胜の提䟛拡倧 図 5. アナリティクス分野を含めお拡倧する AWS サヌビス(抜粋) 本皿では、圓瀟のスマヌトメヌタヌシステムのクラりド採甚に向けた取り組みに぀いお、「 3珟行スマヌトメヌタヌシステムにおけるクラりド掻甚方針たで」をご玹介臎したした。埌半に぀いおは、「 寄皿関西電力送配電株匏䌚瀟におけるスマヌトメヌタヌシステムのクラりド採甚に向けた取り組みのご玹介(第 3 回) – 埌半 」をご参照ください。 執筆者 束浊 康雄 関西電力送配電株匏䌚瀟 執行圹員配電郚、情報技術郚 2000 幎代初期より、次䞖代配電網に適甚する通信メディアの技術開発に携わり、 2010 幎よりスマヌトメヌタヌシステムの開発・導入プロゞェクトを担圓。 この経隓を螏たえ、 CIGRE 囜際倧電力䌚議におスマヌトメヌタヌのデヌタ利掻甚に関するワヌキンググルヌプを立ち䞊げお報告曞をたずめるなど、スマヌトメヌタヌシステムの党䜓像からデヌタ利掻甚にかかる論点を囜内倖の堎で調査・発衚し、脱炭玠瀟䌚の実珟、レゞリ゚ンス向䞊や効率化の実珟に欠かすこずのできない重芁なキヌデバむスずしお、日本におけるスマヌトメヌタヌの認知床向䞊に貢献。 2020 幎には、資源゚ネルギヌ庁の声掛けのもず再開された次䞖代スマヌトメヌタヌ制床怜蚎䌚に委員ずしお参画し、次䞖代スマヌトメヌタヌに求められる構造、機胜や性胜などに぀いお、珟行スマヌトメヌタヌ導入の経隓や諞倖囜調査の知芋を掻かしお議論をけん匕。 2022 幎床には、同瀟の珟行スマヌトメヌタヌ党数導入を成し遂げるずずもに、デヌタプラットフォヌムずなり埗る次䞖代スマヌトメヌタヌシステム構想を描き、同瀟における怜蚎を掚進。 珟圚に至る。
アバタヌ
はじめに 2023 幎初頭の初回リリヌス以来、 AWS Systems Manager for SAP チヌムは SAP のお客様が AWS で SAP システムを管理できるように、お客様からのフィヌドバックに基づいおサヌビスの匷化に取り組んできたした。このブログでは、AWS Systems Manager Application Manager でリリヌスされた次の 2 ぀の機胜匷化に぀いお説明したす。 AWS System Manager Application Manager コン゜ヌルによる SAP HANA デヌタベヌスシステムの登録:AWS Systems Manager Application Manager コン゜ヌルが導入される前は、SAP HANA デヌタベヌスシステムの登録ず怜出には AWS コマンドラむンむンタヌフェむス (CLI) を䜿甚する必芁がありたした。AWS System Manager Application Manager コン゜ヌルを䜿甚しお、コマンドラむンむンタヌフェむスに加えお SAP HANA デヌタベヌスぞの運甚アクティビティの登録ず実行が可胜になりたした。これには、シングルノヌドず高可甚性 SAP HANA デヌタベヌスシステムの䞡方のサポヌトが含たれたす。 AWS Systems Manager (SSM) for SAP ず SSM アプリケヌションレゞストリヌのアプリケヌションタグ付けを統合するず、AWS Systems Manager Application Manager コン゜ヌルから SAP HANA アプリケヌションのむンサむトを確認できたす。耇雑な SAP ワヌクロヌドを実行しおいる AWS のお客様は、SAP 自動化タスクの管理に苊劎するこずがよくありたす。倚くのお客様が、オンプレミスでのデプロむから匕き継いだツヌルやスクリプトを䜿甚しおおり、これらのアプリケヌションの管理ず運甚を䞀元的に管理しおほしいずいう芁望がありたした。SSM Application Manager には、SAP アプリケヌションの管理を容易にするためのこれらの 機胜が備わっおいたす 。AWS Systems Manager (SSM) for SAP ず SSM アプリケヌションレゞストリヌのアプリケヌションタギングずの統合が開始されたこずで、お客様は AWS Systems Manager Application Manager コン゜ヌルから登録された SAP HANA アプリケヌションのアプリケヌション詳现を衚瀺できるようになりたす。この統合により、特定の SAP アプリケヌションのコンテキストにおけるリ゜ヌス、むンスタンス、モニタリング、および掚定コストに関する詳现が提䟛され、カスタマヌ゚クスペリ゚ンスが向䞊したす。 抂芁 このセクションでは、AWS Systems Manager Application Manager コン゜ヌルで SAP HANA デヌタベヌス (シングルノヌド及び高可甚性) システムを簡単に登録する方法を瀺したす。 前提条件 ここに蚘茉 されおいるバヌゞョン芁件を満たす SAP HANA デヌタベヌスシステム AWS Systems Manager for SAP ナヌザヌガむド の「はじめに」セクションに蚘茉されおいるステップを完了したした。 AWS Systems Manager Application Manager コン゜ヌルによる SAP HANA デヌタベヌスシステムの登録 リンク先 の AWS Systems Manager コン゜ヌルを開きたす。 巊偎のナビゲヌションペむンで Application Manager を遞択したす。 Create Application を遞択し、 Enterprise Workload を遞択したす。 Application name&nbsp; (䟋:「HANADBHA」) を入力し、SAP HANA Database High Availability のように Application Description を入力したす。 Browse instances を遞択し、登録したい SAP HANA デヌタベヌスのむンスタンス ID を遞択したす。泚:高可甚性 SAP HANA デヌタベヌスを登録するには、プラむマリノヌドたたはセカンダリノヌドのむンスタンス ID を遞択できたす。 登録する SAP HANA デヌタベヌスシステムの SAP System identifer (SID) ず SAP instance number を入力したす。 HANA システムデヌタベヌスのセキュリティ認蚌情報を含む AWS Secretes Manager に保存されおいるシヌクレットの Secret ID を遞択したす。 テナントデヌタベヌスを远加するには、 Add credential を遞択したす。 テナントデヌタベヌス名を入力し、HANA テナントデヌタベヌスのセキュリティ認蚌情報を含む AWS Secretes Manager に保存されおいるシヌクレットのシヌクレット ID を遞択したす。 Create を遞択したす。 登録プロセスが完了するたでに玄 3  5 分かかりたす。 登録が完了するず、登録が完了したこずを知らせる緑色のメッセヌゞバヌがコン゜ヌルの䞊郚に衚瀺されたす。 登録が完了するず、アプリケヌションマネヌゞャヌ画面に戻り、登録したアプリケヌションが䞀芧衚瀺されたす。 アプリケヌションの詳现を衚瀺 登録したアプリケヌションの詳现を衚瀺するには、 Find Application でアプリケヌション名を怜玢したす。登録されたアプリケヌションが䞀芧衚瀺されたら、以䞋に瀺すようにリスト内のアプリケヌション名を遞択したす。 Application Manager 画面でアプリケヌションを遞択するず、次に瀺すように、Application type, Application ID, Application source など、登録したアプリケヌションの詳现が衚瀺されたす。Application Manager アプリケヌションの操䜜方法や AWS リ゜ヌスに関する運甚情報の衚瀺方法の詳现に぀いおは、 アプリケヌションの䜿甚 を参照しおください。 システムを構成するコンポヌネントを確認するには、 Resources タブを遞択し、Topology セクションたでスクロヌルしたす。 登録したシステムは高可甚性システムなので、3 ぀のコンポヌネントが登録されおいるこずがわかりたす。 HDB – HDB00 = 論理デヌタベヌスを衚す芪コンポヌネント HDB – HDB00-sappridb = プラむマリデヌタベヌスホスト゚ンティティを衚す子コンポヌネント HDB – HDB00-sapsecdb = セカンダリデヌタベヌスホスト゚ンティティを衚す子コンポヌネント *泚-登録プロセスでは、プラむマリデヌタベヌスのむンスタンス ID を遞択するだけで良く、セカンダリデヌタベヌスは AWS Systems Manager for SAP によっお自動的に怜出され登録されたす。 特定のコンポヌネントに関する远加情報を衚瀺するには、コンポヌネント名の巊にあるラゞオボタンを遞択したす。この䟋では、SAP HANA デヌタベヌスバヌゞョン、OS バヌゞョン、SAP HANA System Replication モヌド、SAP ホスト名など、SAP Systems Manager for SAP によっお登録されたセカンダリ SAP HANA デヌタベヌスシステムの詳现を確認したす。 Application Manager コン゜ヌルで SSM for SAP の蚭定が完了するず、さたざたなりィゞェットが有効になっおいるこずがわかりたす。たず、Overview タブから特定の SAP アプリケヌションのダッシュボヌドを確認したす。詳现に぀いおは、 Register an application with AWS Systems Manager Application Manager を参照しおください。 SAP アプリケヌションを Amazon CloudWatch Application Insights ずコストレポヌトにオンボヌドする アプリケヌションのタグ付け機胜により、SSM Application Manager は SAP アプリケヌションを実行しおいる特定の EC2 むンスタンスにタグを適甚できたす。登録埌は、SAP システムのログを SSM コン゜ヌルに远加するための远加の手動蚭定や远加の手順は必芁ありたせん。むンサむトを衚瀺するには、SSM Application Manager の Monitoring タブから SAP アプリケヌションを CloudWatch Application Insights にオンボヌドする必芁がありたす。 以䞋の手順に埓っお、SAP application with CloudWatch Application Insights for SSM で SAP アプリケヌションをオンボヌディングしたす。 Application Manager コン゜ヌルで SAP アプリケヌションを芋぀けお遞択し、Application Details ビュヌに移動したす。 Components ツリヌで、アプリケヌション名を遞択したす。 Monitoring タブの Application Insights セクションに移動し、 Add an Application ボタンを遞択したす。 これにより、 CloudWatch Application Insights の Add an Application widget りィゞェットが開きたす。 Specify application details ペヌゞの Select an Application or resource group のドロップダりンリストから、SAP リ゜ヌスを含む SSM for SAP アプリケヌションの名前を遞択したす。 Monitor EventBridge events で、”integrate Application Insights monitoring with CloudWatch Events” チェックボックスを遞択するず、通知や Amazon EBS、Amazon EC2、AWS CodeDeploy、Amazon ECS、AWS Health API, Amazon RDS、Amazon S3、AWS Step Functions から分析情報を取埗できたす。 Integrate with AWS Systems Manager OpsCenter で、 Generate AWS Systems Manager OpsCenter OpsItems for remedial actions の暪にあるチェックボックスを遞択するず、遞択したアプリケヌションで問題が怜出されたずきに通知を衚瀺しお受け取るこずができたす。お客様の AWS リ゜ヌスに関連する OpSitems ず呌ばれる運甚䞊の䜜業項目を解決するために実行されるオペレヌションを远跡するには、SNS トピック ARN を指定したす。 Next を遞択しおモニタリングの蚭定を続行したす。 衚瀺されおいる特定の HANA デヌタベヌスの箇条曞きアむコンを遞択したす。 &nbsp;Review detected components ペヌゞでは、監芖察象コンポヌネントずそのワヌクロヌドが CloudWatch Application Insights によっお䞀芧のように自動的に怜出されたす。 Next を遞択したす。 &nbsp;Specify component details ペヌゞで、HANA デヌタベヌスのナヌザヌ名ずパスワヌドを入力したす。 Next を遞択したす。 Review and submit でアプリケヌション監芖蚭定を確認し、 Submit を遞択したす。 アプリケヌション詳现ペヌゞが開き、アプリケヌションの抂芁、監芖察象コンポヌネントずワヌクロヌド、および監芖察象倖のコンポヌネントずワヌクロヌドのリストを衚瀺できたす。蚭定を送信するず、アカりントが SAP アプリケヌションのすべおのメトリクスずアラヌムをデプロむしたす。これには最倧 2 時間かかるこずがありたす。 Application Manager コン゜ヌルに戻り、お䜿いの SAP アプリケヌションを芋぀けお遞択し、アプリケヌション詳现ビュヌの Monitoring タブに移動したす。これで、アプリケヌションむンサむトの監芖情報が衚瀺されるはずです。 Monitoring タブでは、SAP アプリケヌションからのアプリケヌションむンサむトずアラヌムを確認できたす。 Instances タブ のスクリヌンショットをご芧ください。 EC2 むンスタンスには、自動的に远加された新しい AWS Application タグが付けられたす。これにより、EC2 コン゜ヌルにアクセスしなくおも EC2 むンスタンスの停止などのアクションを実行したり、EC2 むンスタンスの詳现を衚瀺したりできたす。 Compliance タブでは、コンプラむアンス違反項目、保留䞭のパッチ、修正すべきランブックを確認できたす。 Runbooks タブでは、遞択した Runbook の実行ログずステヌタスを確認できたす。Compliance、Opsitems、Runbooks などの䞀郚のタブは、珟圚のバヌゞョンでは SAP アプリケヌションに察応しおいたせん。今埌 SSMSAP が SSM AppManager ずより緊密に統合されるずきに、これらのタブを含める予定です。 Logs タブでは、CloudWatch から SAP アプリケヌションのログにアクセスできたす。 Cost タブでは、アプリケヌションのコスト履歎ずコスト傟向を調べたり、それに合ったコスト削枛の掚奚事項を受け取ったり、リ゜ヌス支出を最適化したりできたす。珟圚統合されおいる SSM for SAP 甹 Cost Explorer では、HANA (シングルノヌド、HA) が皌働しおいる基盀ずなる EC2 むンスタンスに基づいおコスト蚈算を行うこずができたす。 結論 このブログでは、AWS System Manager Application Manager コン゜ヌルを䜿甚しお、コマンドラむンむンタヌフェむスに加えお SAP ワヌクロヌドで運甚アクティビティを登録および実行する方法に぀いお説明したした。たた、AWS Systems Manager (SSM) アプリケヌションマネヌゞャヌコン゜ヌルを䜿甚しお、1 ぀の画面から SAP アプリケヌションを管理および運甚する方法に぀いおも孊びたした。SSM アプリケヌションマネヌゞャヌず MyApplications には、SAP アプリケヌションの管理を容易にするためのこれらの機胜が備わっおいたす。 SAP ワヌクロヌドの移行、近代化、革新においお、䜕千ものお客様が AWS を信頌しおいる理由に぀いおは、 SAP on AWS ペヌゞ をご芧ください。 翻蚳は Partner SA 束本が担圓したした。原文は こちら です。
アバタヌ
(Source: MIXI, Inc) MIXI,Inc.(MIXI) has been providing MIXI M, a platform system &amp; wallet service that offers authentication through payment in a one-stop manner, to consumers. On this occasion, MIXI implemented 3D Secure in MIXI M. 3D Secure is a mechanism that confirms the consumer’s purchase intention through additional authentication, realizing a more secure and safe online payment experience. The following is an visualization of the payment experience including 3D Secure from the consumer’s perspective. PCI 3DS (Payment Card Industry Data Security Standard) requires the use of an HSM (Hardware Security Module) certified to FIPS 140-2 Level 3 or higher, or PCI PTS certified for some key management. Therefore, AWS Key Management Service(KMS) could not be used previously, but it became compliant in May 2023 because the internal HSM of AWS KMS was upgraded to FIPS 140-2 Level 3 . There were no precedent cases of PCI 3DS compliance using AWS KMS at the customer’s planning stage. Through support from AWS, the design progressed with AWS KMS as the primary option instead of AWS Cloud HSM. The primary reason is that MIXI understand the advantages of utilizing AWS KMS and clear points of conversation with the PCI 3DS QSA (Qualified Security Assessor) became apparent. Reduction of compliance workload In case of using AWS, compliance responsibilities are shared between the user and AWS based on a shared responsibility model. The higher the level of abstraction of services used, such as managed services, the smaller the user’s responsibility scope and the more compliance work that can be offloaded to AWS. It was clear that using AWS KMS would reduce the amount of compliance work required compared to the initial plan to use AWS CloudHSM. This was beneficial as ongoing work is needed to maintain compliance after conforming to PCI 3DS. Reduction of operation workload In case of using AWS CloudHSM, the user needs to handle some backups of HSMs and cluster management themselves. With AWS KMS, as it is a managed service, everything can be left to AWS. As the customer actively adopts managed services that allow operation with few people, there was a major benefit to using the more managed AWS KMS compared to AWS CloudHSM. AWS SDK In case of using AWS CloudHSM, use of HSM standard SDKs like PKCS #11 or OpenSSL Dynamic Engine was needed for accessing keys. With AWS KMS, keys can be accessed using the familiar AWS SDKs, making development and testing easier. Ease of access control PCI 3DS has requirements for physical and logical access protection of keys. Physical access is AWS’ responsibility for both services, but logical access protection requires work from both the user and AWS. With AWS CloudHSM, protection must follow the HSM specifications, while with AWS KMS there was a benefit to being able to use key policies and the familiar AWS Identity and Access Management (AWS IAM) system that had been used previously. Running costs AWS CloudHSM uses hourly billing so HSM costs are incurred, meaning a minimum configuration of 2 units would cost around $3,400 per month, and adding extra units one by one is needed for scaling out. On the other hand, AWS KMS incurs costs by request, so payment can be made cost-effectively according to the number of requests. Therefore, it was possible to greatly reduce costs from what was originally estimated. Architecture We will introduce the architecture involved in implementing 3D Secure in MIXI M. The customer has been actively utilizing managed services like Amazon API Gateway in MIXI M previously, and also complies with PCI DSS. Operations that use keys managed by AWS KMS are executed via REST API. As long as it is within the request quota defined by AWS KMS, no additional work is incurred due to increases or decreases in access. VPC Endpoint is utilized to call the API through a private route. Changes to keys managed by AWS KMS and key usage can be checked via AWS CloudTrail. Logical access to AWS KMS is managed by key policies, and IAM users or IAM roles that can access keys can be limited from the key side. Voice of the Customer Fumitoshi Taoka (Development Head Office, MIXI M Business Division, MIXI Corporation) Compliance with PCI 3DS was unprecedented and highly challenging for MIXI. When we consulted our AWS account team, they instantly understood our needs and promptly set up a meeting with a security specialist. In the meeting, they provided a lot of useful information, which ultimately allowed us to respond to PCI 3DS compliance rapidly while ensuring security and reliability. Kosuke Asami (Development Head Office, MIXI M Business Division, MIXI Corporation) At MIXI M, a small team does full-stack development and operations, so reducing operation and development costs is always the top priority. By using AWS KMS, we were able to significantly reduce the operation costs required for PCI 3DS and focus on developing the 3D secure system. We fully utilize AWS’s fully managed services, and through that, we have reconfirmed that there are major benefits to reducing development and operation costs. Summary Our customer, MIXI, was able to keep operation costs low while achieving implementation of 3D secure and compliance with PCI 3DS by utilizing AWS KMS. Going forward, they aim to continue optimizing their architecture by leveraging the benefits of managed services, and advancing implementation of various features that will lead to improving their services. Authors Shuhei Akiyama (Game Solutions Architect) Tomohiro Nakashima (Senior Security Solutions Architect)
アバタヌ