## プロジェクト概要
Microsoft AzureとVMware環境で仮想マシンの設定自動化スクリプトを開発し、サーバ設定作業の効率化と品質向上を実現しました。
## 役割・体制
### 自身のポジションと役割
- バックエンド・インフラエンジニアとして、仮想マシンの移行作業やデプロイ、自動化スクリプトの設計と実装を担当しました。
- PowerShellおよびCLIを用いたOS設定自動化スクリプトの設計・コーディングを行い、信頼性を考慮したエラーハンドリング機能を実装しました。
- スクリプトの改修方針やそのメリット・デメリットを関係者に説明するため、技術的説明やデモを継続的に改善し、理解促進に努めました。
### チーム規模と構成
- エンジニア5名とチームリーダ1名の計6名体制で、アジャイル開発手法を用いて継続的に開発と改善を進めました。
- スクリプト品質向上と納期短縮を目的に、各担当が緊密に連携しながら開発を推進しました。
## 背景・課題
- 仮想マシンの手動構築およびOS設定作業に多くの工数がかかり、作業ミスや設定差異によるトラブルが頻発していました。
- VMware仮想化環境での最大性能の把握と活用が不十分であり、設定自動化スクリプトの信頼性設計(特にエラーハンドリング)が課題となっていました。
## 実際の取り組み
### 開発環境
- Microsoft Azureを基盤に、VMware環境と連携した仮想マシンの自動デプロイ環境を構築しました。
- ARMテンプレートとPowerCLIを活用し、OS設定や環境構築の自動化スクリプトを開発し、テスト工程も含めて継続的に改善しました。
- GitHubを利用し、定期的なスプリントレビューとコード品質チェックを実施し、運用負荷の軽減を図りました。
### 設計・改善内容
- スクリプトの信頼性を高めるために、障害原因の切り分けにかける時間の短縮を優先的に考慮し、詳細なエラーハンドリングとログ機能を実装し、処理速度よりも詳細なログ出力と例外分類を重視した設計を採用した。
- VMware仮想化環境の性能特性を分析し、最大性能を発揮できるようにスクリプトの処理設計を最適化しました。
- スクリプト改修の方針や効果を明確化するため、技術的説明資料や動作デモを作成し、チーム内外の理解と合意形成を促進しました。
### その他アピールポイント
- インフラ運用のSRE観点から、継続的な監視設定の改善と障害対応の効率化に取り組みました。
## 成果・価値
- 設定自動化により、手動時比で設定作業工数を約40%削減し、VM払い出しリードタイムを3日短縮。設定不備による再作業件数も月12件から3件に減少した
- 仮想マシン間の設定差分を抑制し、環境の一貫性を向上させることで、運用トラブルの減少に寄与しました。