前言: 話說前陣子爸爸家陽台不斷出現米奇老鼠,立刻清理陽台所有東西,然後又跟市政部門反映問題,可是情況還沒有好轉,米老鼠來完一隻又一隻,我爸陽台在老鼠界應該是網紅打卡聖地(誤),要不然就是米奇老鼠版米奇林三星餐廳(?) 雖然我們抓到了三隻,到上兩個禮拜為止還有至少一隻一直抓不到,每天淩晨還會來吃事後煙留下老鼠屎,真_北。 這隻老鼠對傳統攻擊有抗性,有IT9朋友前陣子用Raspberry pi自製了一台electric mouse trap ,用pi的超聲波雷達放在鞋盒裡,鞋盒裡有一堆食物,底部佈了鐵網,偵測到有老鼠進去以後立即關門通9V電,通個1分鐘再放牠離開,大推我自己也造一台 (Youtube片搜尋一大堆,人類真變態啊,朋友好變態啊)。可是我覺得這樣又好像有點太殘忍,不如先偵測牠們什麼時候來,嚇嚇牠們看看有沒有效果再說吧。 目的: 用Raspberry pi及手上有的感測器弄一隻放陽台用來偵測和嚇嚇老鼠的東西,並把紀錄圖像化到雲端給老爸使用。 邏輯及設計: 當老鼠進入偵測範圍,Motion Sensor偵測到生物活動Raspberry pi 處理來自Motion Sensor的訊號,如果夠強的話開始準備作出回應 Raspberry pi在Angry cats sounds中隨機選出叫聲,再經由Speaker輸出貓叫聲 Raspberry pi指示強光元件發出強光束照射目標 把偵測計數上傳到雲端圖表 材料: Sensor 在網路上看了一些Raspberry pi wild animal camera ,很多也是用Motion Sensor先偵測動物再來,我用的是PIR Motion Sensor被動式紅外線感測器,有低耗電成本便宜的好處。[1],而且可手動調整靈敏度及反應時間。 PIR Motion Sensor就是下面這個 圖片來源: learn.adafruit.com 可手動調整敏感度還有反應時間,這個有點不好調,要試好多遍才找到最佳位置。 可以在Raspbian中輸入pinout查詢GPIO避免插錯 圖片來源: learn.adafruit.com . 一台Raspberry pi 這次使用較舊的Raspberry pi model B+ 萬一老鼠生氣被咬爛錢包也不太痛 . 一張
案例分析: 前幾天公司一台SQL Server突然掛點導致大停工,筆記一下這一次的經驗及研究。 SQL Server軟體部分由 兩台Replicas 及 一個Share File Witness 所組成,硬體部分兩組Replicas分別位於兩台完全沒有關連的伺服器上。 用Ping確認兩台伺服器 生存 情況,發現Secondary Replica沒有回應,到伺服器房間發現Secondary Replica硬體發生故障 連呼吸燈都沒了 ,可是好奇Secondary Replica當掉為什麼整個服務會死,進入Primary Replica看看情況。 在Primary Replica中: AlwaysOn Dashboard已經沒有回應,並且錯誤,如下: 在Object Explorer中,AlwaysOn的目錄發現Availiability Groups狀態為Resolving。Primary Replicas同樣顯示為Resolving,如下。 再進入Windows的FailOver Cluster manager,發現整個node的選項都不見了,只剩下Cluster Events可以讀取,打開來看,發現Cluster整個掛了 背脊涼涼的 ,並且出現去不到File Share Witness的情況。 解決流程: 由於Cluster已經沒有功能 已經有壯士斷臂的決心 ,以儘快救回服務為前題。 在Primary的伺服器上進入Services,把Cluster Service Disable掉。 然後進去Failover Cluster manager,嘗試 Force Cluster start without a Quorum,成功之後在Quorum Configuration中出現"Cluster is running in ForceQuorum state. brabrabra.." 資料庫還是不能連接。 按照此篇 文章 的設定,手動設定node weight, 全國最大的線上 資料庫上線啦。 重新測試AG設計: 事情發生後我在測試環境模擬了各種情況,結果如下: 總結: 這次經驗令我重新review了AG的技術,得出了以下的結論: AlwaysOn技術真的是Always