この記事では、Azure Cognitive Servicesを使ったAI運用の自動化とAzure DevOpsを活用した高度な自動化パイプラインの構築方法を、詳細に解説します。
1. Azure Cognitive Servicesを使ったテキスト解析の自動化
Azure Cognitive Servicesを活用して、運用アラートやログのテキスト解析を自動化し、対応の効率化を図ります。以下は具体的な構築手順です。
手順: テキスト解析APIを用いた自動化
前提条件
Azureサブスクリプションが必要。
Azure Automation アカウントを作成済み。
PowerShellの基礎知識があると良い。
① Cognitive Services リソースの作成
Azure ポータルにログイン。
左側メニューの「+リソースの作成」をクリック。
「Cognitive Services」を検索し、選択。
次の情報を入力してリソースを作成:
名前: TextAnalyticsService
サブスクリプション: 適切なものを選択。
リージョン: 使用するリージョンを選択。
価格レベル: 無料または必要なプラン。
②API キーの取得
作成したリソースを開く。
「キーとエンドポイント」をクリック。
提供されたキー1とエンドポイントURLをメモ。
③Automation Runbookを作成
Azure ポータルでAutomation アカウントを開く。
「Runbook」セクションで「+ 新しいRunbook」を選択。
次の情報を入力してRunbookを作成:
名前: TextAnalysisRunbook
種類: PowerShell
ランタイムバージョン: 5.1
以下のスクリプトを貼り付ける:
powershell
Cognitive Services Text Analyticsを使ったテキスト解析
apiKey = "YOUR_API_KEY" # 取得したAPIキーを入力
endpoint = "YOUR_ENDPOINT" # エンドポイントURLを入力
text = "Critical issue detected in the system logs"
REST APIリクエストの設定
headers = @{
"Ocp-Apim-Subscription-Key" = apiKey
"Content-Type" = "application/json"
}
body = @{
documents = @(@{
id = "1"
language = "en"
text = $text
})
} | ConvertTo-Json -Depth 10
API呼び出し
response = Invoke-RestMethod -Uri "endpoint/text/analytics/v3.0/keyPhrases" -Method Post -Headers headers -Body body
response.documents.keyPhrases
④ スケジュールの設定
作成したRunbookを公開。
「ジョブ」セクションでスケジュールを作成し、定期的にテキスト解析を実行。
2. DevOpsとAutomationの統合でCI/CDを高度化
Azure DevOpsを活用し、Automation Runbookと連携した高度なCI/CDパイプラインを構築します。
手順: DevOpsによるインフラ展開とRunbookの実行
前提条件
Azure DevOpsアカウントが必要。
Azure Automation アカウントを作成済み。
① Azure DevOps プロジェクトの作成
Azure DevOpsポータルにログイン。
「新しいプロジェクト」をクリックし、次の情報を入力:
プロジェクト名: AutomationWithDevOps
可視性: パブリックまたはプライベートを選択。
②リポジトリとパイプラインの設定
プロジェクトの「リポジトリ」セクションに移動し、コードをプッシュ。
「パイプライン」セクションで「新しいパイプライン」を作成し、次のYAMLファイルを記述:
yaml
trigger:
main
pool:
vmImage: 'windows-latest'
steps:
task: AzureCLI@2
inputs:
azureSubscription: 'YOUR_AZURE_SERVICE_CONNECTION'
scriptType: 'ps'
scriptLocation: 'inlineScript'
inlineScript: |
# Runbookの実行
Connect-AzAccount
Start-AzAutomationRunbook -AutomationAccountName "YOUR_AUTOMATION_ACCOUNT" -ResourceGroupName "YOUR_RESOURCE_GROUP" -Name "TextAnalysisRunbook"
③ CI/CDトリガーの追加
パイプライン設定で、リポジトリの更新をトリガーとして登録。
テスト環境や本番環境にデプロイする条件を明確に記述。
3. AI+DevOps統合の運用事例
ユースケース: 自動障害対応フロー
障害検知: Azure Monitorがシステム異常を検出。
Runbook実行: Automation Runbookがテキスト解析を実行し、問題を分類。
通知: TeamsやSlackに結果を自動送信。
再試行またはエスカレーション: Runbookの結果に応じて対処。
実装ポイント
通知の設定: Azure Logic Appsを使い、結果を通知。
再試行ポリシー: DevOpsパイプラインにリトライロジックを追加。
まとめ
この記事では、Azure Cognitive ServicesとDevOpsを統合した自動化フローの具体的な手順を解説しました。
AIの活用: Cognitive Servicesでのテキスト解析を自動化。
CI/CDの統合: DevOpsとAutomation Runbookの連携。
運用効率化: インテリジェントな障害対応フローの構築。
次回は、さらに高度なトピックとしてAzure OpenAI Serviceの活用や、複雑なマルチクラウド運用を深掘りしていきます。ぜひお楽しみに!