Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Fin-JAWS 2021 LT
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Yukito
February 21, 2024
Programming
67
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Fin-JAWS 2021 LT
Yukito
February 21, 2024
More Decks by Yukito
See All by Yukito
技術系コミュニティ活動を3年間やってみて思うこと
yukitodate
0
530
5日間でAWS認定資格 Machine Learning Specialtyを取得した話
yukitodate
1
1.3k
年に一度のお祭り 来週いよいよ開催!
yukitodate
0
260
JAWS-UG最大規模イベント JAWS DAYS 2021 のご案内
yukitodate
2
1.5k
Other Decks in Programming
See All in Programming
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
1
270
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
0
170
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
310
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.8k
20260722_microCMSで考える、AI時代のコンテンツ運用設計
yosh1
0
170
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
140
その節約、円になってますか?
isamumumu
0
500
これって Effect でできたのでは? / TSKaigi Mashup Kansai #2
susisu
0
100
数百円から始めるRuby電子工作
tarosay
0
120
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
120
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
2
1.3k
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
190
Featured
See All Featured
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
350
A Soul's Torment
seathinner
6
3.1k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
440
BBQ
matthewcrist
89
10k
Darren the Foodie - Storyboard
khoart
PRO
3
3.5k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
750
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.7k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
420
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
200
Docker and Python
trallard
47
4k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Optimising Largest Contentful Paint
csswizardry
37
3.8k
Transcript
AWS VDI WorkSpacesを利用した テレワーク環境運用方法の紹介 〜with CLI 初心者の学び〜
本日お伝えしたいこと テレワーク環境で利用している Amazon WorkSpaces の VDI 運用管理の AWS CLIやTypeScript等を用いた効率化方法 CLI初心者の学びや気づき
2
発表の流れ 1. Amazon WorkSpaces とは 2. WorkSpaces VDI 運用の体制と課題 3.
WorkSpaces VDI 運用フローの効率化 4. 学びと所感 3
Amazon WorkSpaces とは 1 4
Amazon WorkSpacesとは ⊡ AWSの提供するフルマネージド型仮想デスクトップサービス ⊡ クラウド上でデスクトップ環境を提供。「いつでも・どこでも」を実現 ⊡ Amazon WorkSpaces 構成要素の一つにAWS
Directory Serviceがある ⊡ WorkspacesはDirectoryServiceをユーザ管理ディレクトリとして利用 5 https://d1.awsstatic.com/webinars/jp/pdf/services/20180207_AWS_BlackBelt-Workspaces.pdf AWS Directory Service
WorkSpaces VDI 運用の 効率化前の体制と課題 2 6
WorkSpaces VDI 運用の概要 ⊡ WorkSpaces利用用途 □ 金融系のお客様開発案件にて、弊社含む開発会社の テレワーク時にお客様のVDI環境利用のため ⊡ 利用者
□ 会社数:約24社 □ 総利用者数:約450人 ⊡ 運用体制 □ 計2人(自分は今年から運用担当を引き継いだ) ⊡ 運用課題 □ テレワーク環境申請〜デプロイの運用管理の作業負荷が高い → 運用作業を効率化したい! 7
Amazon WorkSpaces 運用フロー(効率化前) 8 テレワーク申請管理簿 (テレワーク環境利用者情報管理) 仮想デスクトップ構築 テレワーク申請管理簿の 情報を元にコンソールで構築 認証サーバにユーザ登録
2段階認証コード出力 セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信 PowerShell Amazon WorkSpaces Mail Excel Step.1 Step.2 Step.3 運用担当者 テレワーク環境利用者
運用フローの問題 9 仮想デスクトップ構築 テレワーク申請管理簿の 情報を元にコンソールで構築 認証サーバにユーザ登録 2段階認証コード出力 セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信
PowerShell Amazon WorkSpaces Mail Excel Step.1 Step.2 Step.3 運用担当者 更新有無を 随時確認する 必要あり 申請簿から コンソール画面に転 記する情報多い サーバにSSHしてコ マンドを何個か叩く 必要あり テレワーク申請管理簿 (テレワーク環境利用者情報管理) セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信 Excel テレワーク環境利用者 メールにてセットアップ情報を 各利用者分送る必要あり (利用者によって宛先異なる)
運用フローの問題 10 仮想デスクトップ構築 テレワーク申請管理簿の 情報を元にコンソールで構築 認証サーバにユーザ登録 2段階認証コード出力 セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信
PowerShell Amazon WorkSpaces Mail Excel Step.1 Step.2 Step.3 運用担当者 更新有無を 随時確認する 必要あり 申請簿から コンソール画面に転 記する情報多い サーバにSSHしてコ マンドを何個か叩く 必要あり テレワーク申請管理簿 (テレワーク環境利用者情報管理) セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信 Excel テレワーク環境利用者 メールにてセットアップ情報を 各利用者分送る必要あり (利用者によって宛先異なる)
Amazon WorkSpacesによる仮想デスクトップ作成における問題 ①作成人数が多いと、WorkSpaces環境作成作業に非常に時間を要する ・年度初めは申請者数100人ほど。 1ユーザにつき4つの情報転記が必要であるため、計400回もコピペする必要ある... ・(申請者1人でもコピペ作業は正直めんどう...) ②一度に作成可能な人数の制限がある(20人まで) ③転記ミス発生 運用時の問題 ⊡
ユーザ名 ⊡ 名 ⊡ 性 ⊡ Eメール 11 申請簿情報の転記
運用フローの問題 12 仮想デスクトップ構築 テレワーク申請管理簿の 情報を元にコンソールで構築 認証サーバにユーザ登録 2段階認証コード出力 セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信
PowerShell Amazon WorkSpaces Mail Excel Step.1 Step.2 Step.3 運用担当者 更新有無を 随時確認する 必要あり 申請簿から コンソール画面に転 記する情報多い サーバにSSHしてコ マンドを何個か叩く 必要あり テレワーク申請管理簿 (テレワーク環境利用者情報管理) セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信 Excel テレワーク環境利用者 メールにてセットアップ情報を 各利用者分送る必要あり (利用者によって宛先異なる)
運用フローの問題 13 仮想デスクトップ構築 テレワーク申請管理簿の 情報を元にコンソールで構築 認証サーバにユーザ登録 2段階認証コード出力 セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信
PowerShell Amazon WorkSpaces Mail Excel Step.1 Step.2 Step.3 運用担当者 更新有無を 随時確認する 必要あり 申請簿から コンソール画面に転 記する情報多い サーバにSSHしてコ マンドを何個か叩く 必要あり テレワーク申請管理簿 (テレワーク環境利用者情報管理) セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信 Excel テレワーク環境利用者 メールにてセットアップ情報を 各利用者分送る必要あり (利用者によって宛先異なる)
運用フローの問題 14 仮想デスクトップ構築 テレワーク申請管理簿の 情報を元にコンソールで構築 認証サーバにユーザ登録 2段階認証コード出力 セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信
PowerShell Amazon WorkSpaces Mail Excel Step.1 Step.2 Step.3 運用担当者 (私) 更新有無を 随時確認する 必要あり 申請簿から コンソール画面に転 記する情報多い サーバにSSHしてコ マンドを何個か叩く必 要あり テレワーク申請管理簿 (テレワーク環境利用者情報管理) セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信 Excel テレワーク環境利用者 メールにてセットアップ情報を 各利用者分送る必要あり (利用者によって宛先異なる) メインの業務以外の事務的作業に 多くの時間をとられるのは嫌
運用課題 15 課題 WorkSpaces利用者が数十名規模であれば問題ないが、 数百名以上の規模では、 テレワーク環境申請〜デプロイの運用管理の効率的な仕組みが必要 △100人申請者がいるとデプロイまで2時間半以上かかる 解決アプローチ 以下ツール活用等により、申請からデプロイまでを効率化 ⊡
AWS CLI ⊡ Microsoft Lists ⊡ Power Automate ⊡ シェルスクリプト作成
WorkSpaces VDI 運用フローの効率化 3 16
Amazon WorkSpaces 運用フロー(効率化前) 17 テレワーク申請管理簿 (テレワーク環境利用者情報管理) 仮想デスクトップ構築 テレワーク申請管理簿の 情報を元にコンソールで構築 認証サーバにユーザ登録
2段階認証コード出力 セットアップ情報送信 2段階認証コード (とWorkSpaces招待メール)を送信 PowerShell Amazon WorkSpaces Mail Excel Step.1 Step.2 Step.3 運用担当者 テレワーク環境利用者
Amazon WorkSpaces 運用フロー(効率化後) 18 テレワーク申請管理簿 PowerShell Amazon WorkSpaces Outlook Microsoft
Lists Step.1:仮想デスクトップ構築 Step.2:認証サーバにユーザ登録 Step.3:セットアップ情報送信 運用担当者 利用者 Power Automate Microsoft Lists AWS CLI シェルスクリプト ✖ ✖ ✖ ✖ ✖ Typescript
Amazon WorkSpaces 運用フロー(効率化後) 19 テレワーク申請管理簿 PowerShell Amazon WorkSpaces Outlook Microsoft
Lists Step.1:仮想デスクトップ構築 Step.2:認証サーバにユーザ登録 Step.3:セットアップ情報送信 運用担当者 利用者 Power Automate Microsoft Lists AWS CLI シェルスクリプト ✖ ✖ ✖ ✖ ✖ Typescript
仮想デスクトップ構築の 効率化後の流れ 20 TSでの処理フロー Amazon WorkSpaces AWS CLI ✖ ✖
Typescript 1. テレワーク申請管理簿(CSV形式)を読み取ってユーザを一括作成 a. CSV→JSON形式に変換 b. JSONからデータを抽出しCLIコマンドのインプットパラメータ作成 c. インプットパラメータのバリデーション実行 d. 複数のユーザ作成一括実行 2. WorkSpaces環境を一括作成 a. WorkSpaces環境作成のCLI実行
工夫したこと 21 インプットパラメータへのバリデーション実行 申請簿の情報に不備があるケースが頻繁に発生する EX. 必須項目の空欄、メールアドレス形式不備 入力フォーマットの有効性を スキーマを用いて検証したことで 目視による入力不備確認作業を軽減 ★バリデーションライブラリ
Zod 利用 Zod ・Schema firstなvalidationライブラリ ・validateするschemaを定義して、 schemaベースにparse ・型以上の制約をつけられる ・コードもシンプルに
学びや所感 4 22
CLI初利用の学び ⊡ コンソール画面とCLIではできる機能は同じだが、 IFは異なるためCLI初心者にとっては躓くポイントになる □ ユーザ作成とWorkSpaces環境作成が分離 □ コンソールでは意識したことがなかったWorkDocsの存在 □ 特にWorkSpaces
は今回の要件にマッチするやってみた系記事がなく、 参考材料が少なく苦労した ⊡ CLIの活用はユースケースに合わせたアレンジが必要な場合がある □ TSでやる処理が思ったより多かった ⊡ CLIを導入後に運用フローを少し変更することが必要な場合がある □ CLIだと、管理者側で初期パスワード設定作業&パスワード送付が必要になる 23
さいごに 5 24
さいごに 25 解決アプローチ 課題 以下ツール活用等により、申請からデプロイまでを効率化 ⊡ AWS CLI, Microsoft Lists,
Power Automate,シェルスクリプト作成 申請〜デプロイ3分 WorkSpaces利用者が数十名規模であれば問題ないが、 数百名以上の規模では、 テレワーク環境申請〜デプロイの運用管理の効率的な仕組みが必要 △100人申請者がいるとデプロイまで2時間半以上かかる...