元支持:支持物聯(lián)網(wǎng)的工具
在物聯(lián)網(wǎng)世界中,客戶普遍頭疼的問題是在產(chǎn)品發(fā)布后為其提供支持。為了提供卓越的支持,重要的是依靠元支持工具的智能使用來擴大支持團隊的工作。在這篇文章中,我們將重點介紹其中一些工具。
支持貿(mào)易的工具
Datadog是一種出色的監(jiān)控服務(wù),可以通過一些令人難以置信的方式進行擴展和連接。該系統(tǒng)對我們的云基礎(chǔ)架構(gòu)、專用主機、網(wǎng)站和數(shù)據(jù)庫進行24/7全天候監(jiān)控。
我們使用最多的功能是顯示器。監(jiān)視器可以是簡單的冒煙測試式檢查,其中工具會訪問 URL 并確保它返回預期的HTTP代碼。監(jiān)視器也可以是復雜的、精心設(shè)計的檢查,將輸入傳遞給工具或?qū)⒉樵儌鬟f給數(shù)據(jù)庫。例如,我們有一個檢查,它按時間查詢 Redshift數(shù)據(jù)庫的行,平均過去一小時內(nèi)所做的條目數(shù),并在該值低于指定值時返回警告。
Datadog對所有主要的云供應(yīng)商都有一流的支持,如果沒有預制工具,該平臺的可定制性足以讓您自己構(gòu)建!
理論上,這可以通過主服務(wù)器ping其他服務(wù)器或免費工具(如優(yōu)秀的Cockpit Project)來復制 。然而,Datadog包括一些獨特的添加功能:它的監(jiān)視器和指標的可視化開箱即用非常棒,并且具有令人難以置信的細粒度工具,例如,一旦它們被分類,就可以單獨將監(jiān)視器靜音。當需要提醒支持團隊成員時,Datadog會連接到我們的松弛通道與相應(yīng)的支持角色進行溝通。
某些關(guān)鍵級別的事件還會使用Twilio向值班團隊成員發(fā)送自動文本(稍后會詳細介紹)。
廚師
我們有多個冗余的Datadog監(jiān)控實例,我們使用Chef工具自動編排和部署這些實例。
Chef Software是一套圍繞配置管理構(gòu)建的廣泛工具。與Datadog配合使用,這使我們能夠快速響應(yīng)問題,并使我們負責的所有事情都處于工作、一致可重現(xiàn)的狀態(tài)。
雖然第一次創(chuàng)建食譜的廚師“食譜”并使用它來部署基礎(chǔ)設(shè)施與僅使用終端自己做相比可能需要更多的工作,但一旦完成將基礎(chǔ)設(shè)施作為代碼的工作,進一步工作要瑣碎得多。保持我們在Chef說明書中指定的服務(wù)器使我們能夠,例如, 在開發(fā)機器上應(yīng)用Linux內(nèi)核安全補丁,自動對其運行測試,并在合適的情況下,將 更新應(yīng)用到每臺相關(guān)機器并了解究竟發(fā)生了什么變化。
Chef還使從災難中恢復變得更容易管理。勒索軟件?沒問題,啟動一個新的EC2實例并執(zhí)行您的廚師食譜!結(jié)合其他備份工具,只需調(diào)用命令chef-client就可以完成服務(wù)器的完全更換。
Chef社區(qū)在Chef“超級市場”中保留了一份最新的烹飪書公開列表,以完善這些內(nèi)容。對于您能想到的幾乎所有常見任務(wù),有人都有一本食譜來幫助實現(xiàn)它。
Chef唯一的主要缺點是不幸的是,這些工具與實際的烹飪和購物術(shù)語共享名稱,這可以測試任何開發(fā)人員的Google-fu技能。示例:Chef有一個用于管理依賴項的命令行工具,稱為“knife”。如果你在谷歌上搜索“廚師刀不工作”,你會得到很多結(jié)果,其中很少有幫助你設(shè)置服務(wù)器的結(jié)果。
對我們來說幸運的是,我們找到了Chef的文檔,輔以StackOverflow的健康調(diào)味料 ,回答了99.9%的問題。
AWS–代碼提交/代碼構(gòu)建
將AWS列為元工具有點像將“計算機”列為開發(fā)人員的技術(shù)堆棧。它在技術(shù)上是準確的,但有點籠統(tǒng)。AWS可以做很多事情(問問參加過其中一項考試的任何人),但今天我將重點關(guān)注我們專門用于支持管道的部分: CodeCommit和CodeBuild。
CodeCommit本身并不太令人興奮:它是一個私有的git主機。與許多AWS產(chǎn)品一樣,它的用處在于與其他AWS工具的緊密集成。在CodeCommit中存儲代碼允許我們在提交時觸發(fā)CloudWatch事件,并使用某些消息運行自動linting、CI/CD和執(zhí)行構(gòu)建。我們不太花哨;我們的支持團隊有一個很好但直接的工作流程,我們將所有 Chef說明書保存為單獨的CodeCommit存儲庫。然后我們可以使用CodeBuild來生成工件。然后,廚師基礎(chǔ)設(shè)施每天檢查是否有任何更新,并將它們應(yīng)用到我們所有的相關(guān)機器上。
各種各樣的
到目前為止,這篇博文已經(jīng)介紹了支持的主要“循環(huán)”:基礎(chǔ)設(shè)施、為Chef編碼、使用 AWS 部署并由Datadog監(jiān)控。當然,這些并不是所有的工具,但遺憾的是我沒有時間去寫(也不是我們大多數(shù)親愛的讀者,去消費)填寫每一個細節(jié)所需的幾十頁。相反,我將簡要提及此主要支持管道之外的一些其他工具。
崩潰計劃
對于一些遺留系統(tǒng)和工具,CrashPlan是一個非常簡單的自動化系統(tǒng)備份工具。它可以執(zhí)行完整的系統(tǒng)恢復,但我們經(jīng)常發(fā)現(xiàn)自己使用它來幫助客戶恢復單個修改或刪除的文件。這是一個很棒的工具,您希望永遠不要使用,但是當您必須使用它時,您會很高興。
Twil IO
為確保我們可以在一天中的任何時間響應(yīng)緊急情況,我們將Datadog連接到Twilio連接,允許我們在某些情況下給隨叫隨到的支持團隊成員發(fā)送短信。在這種情況下,Twilio只是管道;Datadog和一些cron工作首當其沖,但如果沒有文本,在工作時間之外可能會缺乏支持響應(yīng)。(來源:瀚云數(shù)字工廠)
合流
實際上,您可以在此項目符號中放置各種各樣的wiki工具。Atlassian的Confluence產(chǎn)品經(jīng)過精心打磨,擁有您能想象到的所有可能的旋鈕和按鈕,并與其他Atlassian工具相結(jié)合。在wiki中記錄我們的解決方案和管道對于提高我們團隊的“巴士因素”至關(guān)重要——假設(shè)人數(shù)可能由于某種原因而消失(“被巴士撞到”)而無需我們的支持。
未來
從長遠來看,我們的目標是使支持角色盡可能不必要。雖然我們知道總是需要人力支持專家的角色,但通過放大我們團隊的效率,我們可以避免在微觀管理問題上精疲力竭和浪費時間。相反,我們可以專注于我們工作的重要部分:通過物聯(lián)網(wǎng)將客戶的想法和解決方案付諸實踐!
我們正在研究一些令人興奮和有前途的工具,包括Ansible作為Chef的潛在補充或替代品,通過ACME客戶端注冊器將所有手動 SSL 證書更新替換為自動更新 ,以及使用Terraform允許跨云回退的混合云解決方案 .
結(jié)論
我們希望這篇對支持工具的簡短介紹能激勵或鼓勵您的支持工作。作為一個行業(yè),幫助其他人提高他們對物聯(lián)網(wǎng)產(chǎn)品和服務(wù)的支持質(zhì)量和壽命最終會幫助每個人、客戶和公司。