2016-06-18 29 views
1

我曾誤刪了我的項目一個默認的「服務帳戶」 - {} PROJECT_ID - [email protected]現在 每當我試圖創建一個集羣在數據PROC我得到以下錯誤:無法刪除默認的服務帳戶後,創建Dataproc集羣

The resource '{project_id}[email protected]' of type 'serviceAccount' was not found.

是否有解決此問題的一個簡單的方法 - 不會丟失任何數據的項目。

+0

只是好奇,你是否通過Web UI或使用命令行工具刪除服務帳戶?網絡用戶界面試圖警告不要刪除該帳戶,並要求輸入整個帳戶名稱來驗證,而不僅僅是一個簡單的確認提示,因爲它可能是枯燥的修復,如我在下面的答案中所示(儘管我知道有時候會特別關注情節性警告如果它確切地說不是什麼突破:) - 如果有任何官方Google工具使得它很容易打破你的項目,我們希望在未來增加額外的保護。 –

+0

@DennisHuo非常感謝你的詳細回覆。我通過網絡用戶界面刪除了該帳戶。另外,我認爲如果只有「項目所有者」有權執行此類行動,情況會更好。目前「編輯器」也可以刪除。 –

+0

@ DennisHuo您是否還有機會知道如何還原默認的「應用引擎服務帳戶」:P –

回答

3

爲了向所有遇到此問題的人澄清,此錯誤是由實際刪除服務帳戶而引起的,而不是簡單地將其從IAM and Admin選項下的「項目編輯器」列表中刪除;對於只從項目編輯器列表中刪除帳戶的任何人,只需使用普通的「添加成員」即可將其添加回來。

通常在啓用Compute Engine API時創建服務帳戶,因此目前只需通過API Manager禁用然後重新啓用計算引擎API即可解決此問題。

如果您已經擁有依賴生產能力的現有Compute Engine虛擬機,但是如果您刪除了該服務帳戶,那麼這可能會導致問題,那麼這些虛擬機可能有點破碎。

找到Google Compute Engine API那裏,然後點擊「禁用」,並確保點擊確認提示中的Disable按鈕而不是Cancel按鈕。

當重新啓用Compute Engine的API,你可能會遇到以下錯誤:

Update failed with following error(s) for project settings: -- Backend Provisioning Error: {compute_component FAILED_PRECONDITION: The service is currently being deactivated and deactivation must complete before activation can occur.}; 

,但如果您稍等幾分鐘,然後再試一次,它應該工作(我再次嘗試之前等待約3分鐘,但所需的等待可能會有所不同)。同樣,在第一次後重新啓用計算API,並立即試圖創建一個新的Dataproc集羣,你可能會碰到:

Failed to load networks 

Access Not Configured. Compute Engine API has not been used in project <project-number> before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/compute_component/overview?project=<project-number> then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry. 

但因爲它提到,再等待一兩分鐘讓設置傳播,它應該加載再罰款。

一旦計算引擎API重新啓用足夠認爲Dataproc的Create Cluster頁作品雲控制檯上,你也可以再次驗證IAM and Admin下,默認的計算服務帳戶再次存在,它已被自動添加爲Project editor以及。