re:Inventで発表されたAWSのデベロッパー向け新サービスも紹介
デブサミでは、メイン会場以外にも「AWS Amazon Alexa 特別トラック」と称した特別展示室において、AWSJおよびアマゾンジャパン合同会社が合同で、ソリューションの展示およびハンズオンを行っていた。このパートでは、AWSJのソリューションアーキテクトによるミニセッションのハイライトを紹介していく。
AWSのフルマネージドな環境でCI/CDをやってみよう! AWS Cloud9からAWS Fargateへの継続的デプロイをご紹介
本セッションはAWSJの福井厚氏による進行で、昨年末に開催されたAWSのグローバル年次イベントであるAWS re:Inventで発表されたばかりの新サービスAWS Cloud9とAWS Fargateを活用して継続的インテグレーションや継続的デリバリをどのように実現するかが解説された。AWS Cloud9はクラウド上に用意された統合開発環境(IDE)であり、リモートペアプロ機能が用意されているなど、新時代の開発環境と言えそうだ。この製品の特徴としては、最近人気のサーバーレスアプリケーションの開発やデプロイにも対応している点がある。今後注目の製品と言える。
本番環境で使うContainer - ECS/Fargate/EKS-
AWSJの浅野佑貴氏が担当した当セッションでは、AWSのコンテナサービス群について、それぞれの特徴やメリットなどが解説された。AWSは、コンテナに関連するサービスに注力しており、昨年のAWS re:Inventで発表されたAmazon Elastic Container Service for Kubernetes(Amazon EKS)や、福井氏のセッションでも紹介されたAWS Fargateにも注目が集まった。
Amazon EKSは、コンテナの選択において最有力の地位を占めつつあるKubernetesのマネージドサービス。マネージドであることによる運用管理工数の軽減が期待でき、かつオープンソースならではのエコシステムも活用できることがメリットであるという。なお、Kubernetesの開発推進団体であるCNCF(Cloud Native Computing Foundation)の調査によると、Kubernetesクラスタの6割はAWS上で稼働しているのだそうだ。
AWS Fargateは、これまで提供されていたAmazon Elastic Container Service(Amazon ECS)というAWS独自のコンテナオーケストレーションサービスから、Amazon EC2のインスタンス運用管理が不要になったものだ。このサービスによって開発者は、コンテナそのものやアプリケーション開発にさらに集中することが可能になる。
Building Real-time Application With AWS AppSync 〜GraphQLの始め方〜
AWSJ 塚越啓介氏は、GraphQLを実現するサービスであるAWS AppSyncの紹介と実際にそれらとReact Nativeを利用したモバイルアプリケーション開発に関して解説を行った。GraphQLとは、Rest APIの次のパラダイムとも一部で言われており、今後さらなる期待が寄せられているAPIのクエリ言語だ。
AWS AppSyncはこのGraphQLによるバックエンドの実装を、既存のAWSサービスを組み合わせることで簡単に行うことができるフルマネージド型のサービス。今回のセッションでは、このAWS AppSyncを用いたアプリケーションの構築方法がデモを交えながら紹介された。
Machine Learning on AWS
AWSJの桶谷拓也氏は、AWSが提供する機械学習サービスを紹介した。AWSでは、画像認識サービス、動画認識サービス、音声読み上げ(Text to Speech)、さらには、音声の読み取り(Speech to Text)などのサービスがAPIを通じて提供されている。従来はこのような機械学習をもとにした機能を実現するには膨大なモデルを用意した上で学習させることが必要であり、機械学習の専門家を必要とした。それが今や、あらかじめ学習済みのモデルを利用したサービスをAPIなどから簡単に呼び出して利用することができるようになる。開発者やデータサイエンティストが機械学習を利用するハードルが下がったと感じられたセッションであった。
マイクロサービスをAWSサーバーレス&コンテナで実装する方法
最後に、AWSJの清水崇之氏からは、西谷氏のセッションでも触れられていたマイクロサービスを実装する際にAWSのサービスをどのように活用すると良いのかという点について解説が行われた。マイクロサービスを実現するには、アプリケーション開発や組織面だけでなく、その実行基盤をいかに効率よく、手間をかけずに実現していくかが非常に重要なのだという。主にAWSのコンテナ関連サービスや、昨今話題となっているAmazon API Gateway、AWS Lambdaを活用し、サーバーレスでマイクロサービスを実現していくための具体的な方法が解説された。マイクロサービスというスケーラビリティが高く、俊敏性の高いアーキテクチャを実現するためには実行基盤も同様の特徴を持つものを採用することが近道の一つであると言える。
マイクロサービスの理解に向けたホワイトペーパー
特に関心の高いマイクロサービスについて、周辺技術も含めて体系的に理解したいと考えている読者にお勧めなのが、AWSJが提供しているホワイトペーパー『AWSにおけるマイクロサービス』である。
この文書は、マイクロサービスアーキテクチャの概念の平易な解説から、実際にAWSが提供中のサービスへの適用例なども示した実践的な資料となっている。今回のイベントセッションの資料と併せて活用頂くことで、各要素技術の理解、各要素技術のつながり、その根底にある概念が体系的に理解できるであろう。
マイクロサービス化を検討している方必見! AWSでの設計ポイントが分かる最新資料
本資料は、マイクロサービス化を検討している方や、マイクロサービスアーキテクチャの運用の複雑性を軽減したいと考えている方を対象に、AWSでどのようにマイクロサービスを実現できるかを記述したものです。マイクロサービスの特徴と、構築における主な課題を踏まえ、これらの課題克服のためにどのようにAWSを活用できるかを説明します。