MEGAZONEブログ

Deploying and managing Amazon Workspaces applications with Ansible
Ansibleを使ったAmazon Workspacesアプリケーションのデプロイと管理
Pulisher : Strategic Tech Center ソ・ソンス
Description:Ansibleを利用したアプリケーション管理に関する実習Workshopセッション
はじめに
WorkSpacesのアプリケーションやOSの設定(パッチなど)管理などをするため、カスタムイメージで管理することもできますが、Ansibleを使うともっと楽にアプリケーションを管理できるとのことで、ワークショップセッションを申し込むことにしました。
セッションの概要紹介
Amazon WorkSpacesアプリケーションをAnsibleで管理する内容を扱ったワークショップです。ワークショップは2時間ほどで、Ansibleの紹介後、WorkSpacesを先に構築した後、AnsibleとWorkSpaces間の通信ができるように設定をします。 その後、AnsibleでWorkspacesのUbuntuパッケージをアップグレードすることで進めます。

Ansible(https://www.ansible.com/)はAgentを必要としないオープンソースのIT自動化ツールで、クロスプラットフォームをサポートし、アプリケーションの状態一覧とインストール/更新/削除などを可能にします。Linuxホストに対するSSHベースの認証とWindowsホストに対するWinRMまたはSSHベースの認証をサポートします。


WorkSpacesを使用する顧客は、既存のインストールされているバージョンとアプリケーションの確認、新しいアプリケーションのデプロイやインストール、アプリケーションの更新、ワークスペースへのスクリプトの大規模な実行などのタスクを要求していました。Workspacesのイメージとバンドルを更新し、そのマスターイメージで再度Workspacesを構築する作業は非効率的であったそうです。

ワークショップの目標はWorkspacesを生成してAnsibleサーバーとWorkspacesを通信できるように設定した後、Workspacesのパッケージを確認してアップデートすることです。
Workspacesのパッケージを確認した後、アップデートすることです。


あらかじめ作成されたAWS Microsoft Active Directoryを選択し、ユーザーを一つ作成します。

作成されたユーザーを選択します。

Ubuntuバンドルを選択します。

最終構成する情報を確認した後、「作成」ボタンを押します。20分ほど待つと、ユーザー作成時に登録したメールで登録コードとパスワードの初期リンクが配信されます。

登録コードを入力し、「Register」ボタンを押します。

IDとパスワードを押した後、「Sign In」ボタンを押します。

WorkspacesにログインしてUbuntuがうまく生成されたことを確認した後、Ansibleサーバーでアクセスするユーザーを追加します。

AnsibleサーバーでSSHで通信できるように、WorkspacesのSecurity Groupでインバウンドルールの修正を押した後、SSHタイプを選択した後、ソースをAnsibleサーバーにするセキュリティグループルールを追加します。


EC2メニューでAnsibleサーバーを選択した後、Session Managerを使って接続します。

Ansible pingを利用してWorkspacesサーバーにアクセスできることを確認します。


Ubuntuのパッケージの更新可能項目をチェックしてみます。更新可能な項目が多いと表示されます。

Ubuntuのパッケージをアップデートします。

もう一度、Ubuntuのパッケージ更新可能な項目をチェックしてみます。 更新するパッケージがないと表示されます。
セッションを終えて
以上でAnsibleを使ったWorkspacesの管理部分のワークショップを終わりました。最初Workspacesを構築した後、Ansibleで管理する部分とカスタムイメージバンドルで管理する部分について先に識別した後、構成すれば、アプリケーションを簡単に管理することができそうです。
この記事の読者はこんな記事も読んでいます
-
Compute re:Invent 2023Apple on AWS: Managing dev environments on Amazon EC2 Mac instances(Apple on AWS:Amazon EC2 Macインスタンスで開発環境を管理する)
-
Compute re:Invent 2023Optimizing for cost and performance with AWS App Runner(AWS App Runnerによるコストとパフォーマンスの最適化)
-
Partner Enablement re:Invent 2023Migration and modernization: Become your customer’s strategic partner