調査情報リスト
①https://aws.amazon.com/jp/opsworks/
②https://docs.aws.amazon.com/ja_jp/opsworks/latest/userguide/welcome.html
③https://www.slideshare.net/AmazonWebServicesJapan/aws-black-belt-online-seminar-2017-aws-opsworks
④https://dev.classmethod.jp/referencecat/aws-opsworks/
AWS OpsWorks サマリ
ChefやPuppetに代表されるプロビジョニングツールのマネージドサービス。 CloudFormationと違うのはAWSリソースのスタックのみならずChefやPuppuetによるリソース内部のプロビも対応している点。
このツールは3つのカテゴリに分けられる。(登場した順に整理)
- AWS OpsWorks Stacks
- AWS OpsWorks for Chef Automate
- AWS OpsWorks for Puppet Enterprise
AWS OpsWorks Stacks
- アプリとサーバの管理サービス。
- CloudFormation+Chef Soloといったイメージのサービス構成で、スタックでAWSリソースを構成し、レイヤーでパッケージやフレームワークのインストール、アプリのデプロイ、スクリプトの実行が行われる。
https://docs.aws.amazon.com/ja_jp/opsworks/latest/userguide/images/php_walkthrough_arch_4.png
- 後述するChef Automateとは別のサービスで、こっちはChefサーバが立たない代わりにChef Automateにある高度な管理機能は使えない。
- 最も古くからあるOpsWorksのサービスでありある意味で枯れている。
- 独自のライフサイクルイベントという定義があり、それぞれのイベントに従ってレシピの実行を定義できる。
AWS OpsWorks for Chef Automate
- Chef Automate(https://www.chef.io/products/chef-automate)の完全マネージドサービス
- EC2にChef Automate、Chef Infra、Chef InSpec がインストールされてAWS側で管理される。
- 上記サーバコンポーネントのアップデートやバックアップも自動
- 構築された新しいEC2ノードはAutoScalingグループでChefに紐付けできる。
- 2020年12月27日現在、サポートするリージョンに東京リージョンも含まれている。
OpsWorks StacksとChef Automateとの違いは以下。
今はTokyoリージョンもサポートに入ったので、ライフサイクルイベントという独自イベント構成やChefサーバの有無などが差異に入る。
AWS OpsWorks for Puppet Enterprise
- Puppet Enterpriseのマネージドサービス。
- フルマネージド型 Puppet マスターを提供。Chef Automateと同じくAWSがサーバをホストし管理。
- 上記サーバコンポーネントのアップデートやバックアップも自動
- 構築された新しいEC2ノードはAutoScalingグループでPuppetに紐付けできる。
温度感調査
Developers IO パラメータ
記事数:18
最終更新日Top3:2020/06/11 → 2018.02.06 → 2017.12.21
サービスアップデート状況
2020/10/08 AWS OpsWorks for Configuration Management は、新しいバージョンの Chef Automate のサポートを開始
2020/08/25 AWS OpsWorks for Configuration Management がオープン実装の CloudFormation レジストリのリソースのサポートを開始
2020/04/17 AWS OpsWorks for Puppet Enterprise がカスタムドメインのサポートを開始
2019/12/19 AWS OpsWorks for Configuration Management が、タグ付けとタグベースのアクセスコントロールをサポート
2019/10/22 AWS OpsWorks for Chef Automate がカスタムドメインのサポートを開始
ドキュメントアップデート状況
https://docs.aws.amazon.com/ja_jp/opsworks/latest/userguide/history.html
September 29, 2020 EC2-Classic から VPC にAWS OpsWorks Stacksスタックを移行する
July 29, 2020 AWS OpsWorks for Chef Automateおよび のスターターキットを再生成するAWS OpsWorks for Puppet Enterprise
April 17, 2020 AWS OpsWorks for Puppet Enterprise では、カスタムドメイン、証明書、プライベートキーを使用するサーバーを作成できます。
February 26, 2020 AWS OpsWorks for Chef Automate および AWS OpsWorks for Puppet Enterprise は、コンソールでのタグ付けをサポートするようになりました
January 24, 2020 既存の Chef Automate 1 サーバーから Chef Automate 2 へのアップグレードを AWS OpsWorks for Chef Automate で簡素化
AWS OpsWorks for Chef Automate および OpsWorks for Puppet Enterprise API バージョン: 2016-11-01
AWS OpsWorks スタックの API バージョン: 2016-03-08
ドキュメント最新更新日: 2020 年 11 月 5 日
深堀りの有無
実施しない
所感
プロ日ツールのムーブメントが盛り上がった頃、Chefが最ももてはやされていたが、そこからAnsibleに傾いたあとRedHatに買収されたことでプロビツール界隈は混迷した。
その後、AWSからSSMの登場によりもっと細かい作業がリモートできるようになったことや、コンテナ化のムーブメントで従来の3層アーキテクチャからマイクロサービスへ考え方が変化し、また既存のサーバの管理や構成を維持したまま変更するような考え方がなくなってきた。Immutable Infrastructureがより現実感を持って運用される時代になったといえる。
今後のシステムはマイクロサービスを前提としたものになっていくのは明らかであり、そのアーキテクチャの構成単位がコンテナ or FaaS + マネージドサービス or SaaSとなっていく流れを考えると、これからはコンテナの構成管理とマイクロサービスを前提としたオブザーバビリティ環境の構築がキモになっていく気がする。
となると、Chef/Puppet/OpsWorksはレガシーシステムの最適化には向くがクラウドネイティブなシステムの構成では徐々に不要になっていく可能性がある。APIのアップデートが4年前から進化していない点や、サービスアップデートが1年間で3回しか行われていない点を見ても、AWS内での扱われ方が見て取れる。
OpsWorks Stacksがオンプレミス側の管理も実現できることに可能性を秘めているとも思ったが、エージェントが必要という時点でSSMと変わりなく、できることの多さを考えるとSSMのほうが汎用的なので、今後はレガシーインフラのマネジメントも含めてSSMに寄せていける可能性がある。このあたりはSSMの深堀りで確認していきたい。
参考情報
↓AWSサービスのドキュメント履歴・リリースノート・フォーラムまとめ | Developers.IO * ドキュメント更新履歴やフォーラムへのリンク総まとめ。すげー便利。
https://dev.classmethod.jp/articles/aws-services-document-history-and-release-notes-matome/
↓AWSの最新情報 * カテゴリやサービスに絞ってアップデート情報を表示できる。こんなのあるの知らんかった。