DiskSafe扮演著snapshot scheduler的角色,控制take snapshot的時機,但是在take snapshot時必須要確保所有的當下變動的資料都已經寫入mirror,這樣的snapshot才算是完整。
DiskSafe扮演著snapshot scheduler的角色,控制take snapshot的時機,但是在take snapshot時必須要確保所有的當下變動的資料都已經寫入mirror,這樣的snapshot才算是完整。由於效能的考量,有很多變動的資料並不會即刻寫入磁碟,而是紀載在記憶體或是磁碟的buffer之中。然後由作業系統在適當的時機時進行寫入磁碟的動作,像是關機的時候。
Take snasphot時,必須先把memory與buffer中為寫入的資料flush到disk中,這樣取得的disk map才是完整符合系統裝況的。DiskSafe針對自身的檔案系統會進行flush的動作,但倘若是額外的應用程式像是Oracle database,就必須借助snapshot agent才行。因為要flush database的資料,必須對database進行switch backup mode的動作,這部分會根據應用程式的不同而不同,所以有專門的snapshot agent可以搭配使用。
Snapshot agent的工作就是flush 資料而已,Oracle database snapshot agent會令database進入backup mode,以確保資料完整以及I/O暫停寫入。DiskSafe會在agent動作之後,緊接著freeze file-system,確保take snapshot時的磁碟狀態是靜止的,沒有I/O寫入的動作,在待CDP server回報snapshot完成,才un-freeze file-system,並通知agent switch off database backup mode。
另外,DiskSafe本身就帶有file-system的snapshot agent,所以如果沒有使用其他database系統,則無須安裝額外的agent。
請問有遇過移除disksafe時出現snapshot agent for oracle未移除的情況嗎?
agent已在移除disksafe前先移除了,但仍舊出現該agent仍存在。這時該如何處理?