Điểm:0

Dừng/Khởi động máy ảo Azure bằng Hybrid Runbook

lá cờ cn

Tôi hiện có runbook dừng/khởi động máy ảo theo lịch nhưng gần đây sổ tay để bắt đầu vms bị dừng vì mất quá nhiều thời gian để hoàn thành. Thông báo sau được đưa ra -

"Công việc đã bị dừng vì nó đã đạt đến giới hạn chia sẻ hợp lý khi thực hiện công việc hơn 3 giờ. Đối với các công việc dài hạn, bạn nên sử dụng Hybrid Runbook Worker. Hybrid Runbook Worker không có giới hạn về thời gian một runbook có thể thực thi."

Tôi chưa bao giờ sử dụng một sổ tay lai trước đây, đây là câu hỏi của tôi - có thể sử dụng sách chạy kết hợp để dừng/khởi động nhiều máy ảo Azure không? Tôi không thể tìm thấy bất cứ điều gì về điều này, có vẻ như phương pháp kết hợp được sử dụng để lấy thông tin hoặc thực hiện các hoạt động bên trong VM.

cuối cùng tôi đang tìm kiếm quản lý tài nguyên VM (dừng/khởi động máy ảo) từ trong máy ảo Azure nếu có thể. Xem runbook hiện tại bên dưới:

Đầu ra ghi "--------------------- Xác thực --------------------- ---"
Đầu ra ghi "Đăng nhập vào Azure ..."

$ConnectionName = "AzureRunAsConnection"

cố gắng 
{
    # Lấy kết nối "AzureRunAsConnection"
    $Conn = Get-AutomationConnection -Name $ConnectionName

    # Đăng nhập vào Azure
    Connect-AzAccount -ServicePrincipal -Tenant $Conn.TenantID -ApplicationId $Conn.ApplicationID -CertificateThumbprint $Conn.CertificateThumbprint 

    Đầu ra ghi "Đã đăng nhập thành công vào Azure." 
}

nắm lấy
{
    nếu (!$Conn)
    {
        $ErrorMessage = "Không tìm thấy kết nối $ConnectionName."
        ném $ErrorMessage
    } 
    khác
    {
        Lỗi ghi -Message $_.Exception
        ném $_.Ngoại lệ
    }

}

Đầu ra ghi "--------------------- Khởi động máy ảo ------------------- -----"


## Sequence VM được bắt đầu

$Máy tính = @(

 'máy ảo (x11)'

)


foreach($c bằng $Máy tính)

{

    $AzResource = Get-AzResource -Name $c -ResourceType "Microsoft.Compute/virtualMachines"

    if($null -ne $AzResource)

    { 

        Đầu ra ghi "Khởi động máy ảo..." + $c

       
        Start-AzVM -ResourceGroupName $AzResource.ResourceGroupName -Name $c

 
        # Tạm dừng 4 phút trước khi tiếp tục vòng lặp

        Bắt đầu-Ngủ-Giây 240

    }  

    khác

    {

        ném "Không tìm thấy máy ảo:" + $c

    }

}

Cảm ơn,

Ken W MSFT avatar
lá cờ gb
Bạn có thể gửi runbook? Có vẻ như bạn đang chạy phần đầu theo kiểu nối tiếp, đó là lý do tại sao quá trình này mất nhiều thời gian như vậy. Bạn nên xem xét việc chạy nó song song. Đây là một ví dụ https://albandrodsmemory.com/2020/10/13/start-and-stop-azure-vms-in-parallel/
jrd1989 avatar
lá cờ cn
Tôi vừa thêm runbook vào bài viết đầu tiên. Cảm ơn vì đã chia sẻ bài viết này, tôi sẽ phải xem liệu đó có phải là thứ tôi có thể áp dụng không. Chúng tôi có 11 vm bị ảnh hưởng bởi sổ tay này. Đó là sự pha trộn của DB, ứng dụng và máy chủ web. Một số dịch vụ mất nhiều thời gian hơn để bắt đầu, vì vậy đó là lý do tại sao chúng tôi tạm dừng 4 phút giữa việc thực hiện cmd bắt đầu tiếp theo. Một số máy ảo nhất định phụ thuộc vào những máy ảo khác, vì vậy chúng tôi muốn có đủ thời gian để máy ảo khởi động và vận hành các dịch vụ.
Ken W MSFT avatar
lá cờ gb
Nếu các máy cần được khởi động theo thứ tự, bạn có thể xem sách hướng dẫn này để lấy cảm hứng. https://docs.microsoft.com/en-us/azure/devtest-labs/start-machines-use-automation-runbooks#:~:text=%20Start%20virtual%20machines%20in%20a%20lab%20in, to%20add%20a%20runbook%20to%20the...%20More%20

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.