我們在Azure自動化中設置了多個Runbook來備份數據庫。多個Runbook在AzureProfile.json上拒絕訪問
我們有4個Runbook,一個用於我們希望備份的每個數據庫。
每個運行手冊的調用到子運行手冊(DBBackup.ps1)中,用特定的參數,以確定數據庫中備份,文件名前綴對所產生的斑點等
DBBackup.ps1具有用於選擇在Azure代碼帳戶和訂閱,然後執行備份。
我們有一個日程安排,每天凌晨1點運行,並且4個數據庫Runbook與此計劃相關聯。
這一切都很好,有時。
我們與結束了是因爲這些運行手冊並行運行,有時,當他們嘗試設置帳戶和訂閱,他們得到了以下錯誤:
The process cannot access the file 'C:\Users\Client\AppData\Roaming\Windows Azure Powershell\AzureProfile.json' because it is being used by another process. (The process cannot access the file 'C:\Users\Client\AppData\Roaming\Windows Azure Powershell\AzureProfile.json' because it is being used by another process.)
我不是真的我確信在這裏要做什麼,因爲我認爲當他們作爲單獨的工作來運行時,它們將被隔離。
任何幫助表示讚賞。從評論
更新:
我意識到,我都可以在重試邏輯這個包起來。我想了解的是,爲什麼我認爲四個獨立的作業將彼此隔離,試圖訪問相同的本地文件。
由於我一夜之間結果的例子:
該列表中的第二和第四個作業失敗,因爲AzureProfile.json被鎖定。
嗯,這是什麼問題?這很明顯,實現一個重試邏輯來讀取每個Runbook中的文件? – 4c74356b41
是的,我可以在那裏添加重試邏輯,但我顯然不理解這些工作的隔離並希望。 – Carl
它與隔離無關,你試圖訪問一個文件,不管你如何隔離這些作業,他們不能同時訪問同一個文件,如果該文件被鎖定的話...... – 4c74356b41