AWS通過成本分配標簽來查看賬單

云計算

公司的AWS上運行了很多不同的服務,EC2,S3,VPC等等,他們屬于20多個不同的診所。之前的管理員并沒有進行很好的Tag,因此每個月底的賬單都只能看見一大堆總的開支,具體到每個服務,每個診所很難確定具體的開支,結果就是所有的開支都從IT部門的預算走的,而不是分攤到實際的各個診所上去。

創(chuàng)新互聯(lián)建站專注于杞縣網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供杞縣營銷型網(wǎng)站建設,杞縣網(wǎng)站制作、杞縣網(wǎng)頁設計、杞縣網(wǎng)站官網(wǎng)定制、成都小程序開發(fā)服務,打造杞縣網(wǎng)絡公司原創(chuàng)品牌,更為您提供杞縣網(wǎng)站排名全網(wǎng)營銷落地服務。

為了解決這個問題,可以對每個服務都進行自定義的Tag標簽,然后在Cost Allocation Tag的控制臺里激活自定義的標簽,一天之后,就可以在Billing賬單里面根據(jù)自己定義的標簽來過濾查詢了。

比如說,為了區(qū)分診所,我定義了一個Tag,key是Clinic,value就是每個診所的名字了

因為我有上百個volume和上千個Snapshot,豆子寫了個簡單的PowerShell腳本來添加標簽。EC2實例上手動添加了對應的標簽,然后根據(jù)EC2關聯(lián)的volume添加Tag,再通過volume來關聯(lián)snapshot添加Tag

Write-Host Checking EC2 instance Tags status -ForegroundColor Yellow

$all=Get-EC2Instance | select -expand instances

$return=$all | Where-Object {$_.tag.key -notcontains Clinic}

if($return -ne $null){
$username = example@aa.com 
$password = password | ConvertTo-SecureString -asPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential($username,$password)

Send-MailMessage -From example@aa.com -to example@bb.com -SmtpServer smtp.office365.com -Port 587 -UseSsl -Subject EC2 instance Tag -Credential $credential
exit

}
# confirm EC2 instances were tagged

$result=@()
foreach($item in $all){

    $Name=$item.tag | Where-Object {$_.Key -eq \'Name\'} | select -ExpandProperty value
    $clinic=$item.tag | Where-Object {$_.Key -eq \'clinic\'} | select -ExpandProperty value
    $item | add-member -NotePropertyName Description -NotePropertyValue $name
    $item | add-member -NotePropertyName Clinic -NotePropertyValue $clinic

    $item = $item | select *
    $result+=$item

}

$result | select Description, InstanceId, privateIpaddress, Clinic | Group-Object Clinic

write-host Updating Volume Tags Status ...  -ForegroundColor Yellow 
#Tag all volumes based on their attached EC2 Clinic Tag

$allvol=Get-EC2Volume | Where-Object {$_.tag.key -notcontains Clinic}

foreach($item in $result){
    foreach($item2 in $allvol){

        if ($item2.attachments.instanceid -eq $item.InstanceId){
                $value=$item.Clinic
              New-EC2Tag -Resource $item2.VolumeId -Tag @{Key=Clinic;value=$value} 
           }

        }

}

write-host Done ! -ForegroundColor Yellow

Write-Host Updating Snapshot Tags Status... -ForegroundColor Yellow 
#Tag all snapshots based on the volume Tag
$allvol=Get-EC2Volume 
$filter= New-Object Amazon.EC2.Model.Filter -Property @{Name = owner-id; Values =\'xxxxxxx\' } 
$snapshots=Get-EC2Snapshot -Filter $filter 

$snapshots= $snapshots | ? {$_.Tag.key -notcontains Clinic} 

foreach($i in $snapshots){
    $volid=$i.VolumeId

    foreach($j in $allvol){

        if($volid -eq $j.Volumeid){

            $value=$j.tag | Where-Object {$_.key -eq \'Clinic\'} | select -ExpandProperty value

            $name=$j.Tag | Where-Object {$_.key -eq Name} | select -ExpandProperty value

            $snapid=$i.snapshotid
            $snapid
            New-EC2Tag -Resource $snapid -Tag @{Key=Clinic;value=$value} 
            New-EC2Tag -Resource $snapid -Tag @{Key=Name;value=$name}

        }
    }

}

write-host Done ! -ForegroundColor Yellow

執(zhí)行之后大概是這樣, 確認工作之后把他放到任務計劃里面自動跑就行了

然后過了24小時,登錄billing的控制臺,根據(jù)Tag來分類,就可以看見每個診所的開支記錄了

文章題目:AWS通過成本分配標簽來查看賬單
URL標題:http://muchs.cn/article40/cjhdho.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設計、面包屑導航、微信公眾號定制開發(fā)、靜態(tài)網(wǎng)站商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設