Vernemq Notes
Vernemq 是個 open source 的 MQTT broker,以 open source solution 來說算是功能還蠻不錯的選擇,東南亞的獨角獸gojek也有在用這套mqtt solution。 最近有遇到一些問題,順便做點筆記
Vernemq 是個 open source 的 MQTT broker,以 open source solution 來說算是功能還蠻不錯的選擇,東南亞的獨角獸gojek也有在用這套mqtt solution。 最近有遇到一些問題,順便做點筆記
情況是要把原本寫入 local mongodb 的 usage log dump 出 csv 檔案(並且從mongodb內刪除),並且把較舊的 csv 檔案移去 GCP storage。
遇到的情況是要在 ubuntu 機器上 mount 非 public access 的 gcp storage bucket,然後要給 php web api 做讀寫。
主要是使用 gcsfuse 這個工具,還有就是使用 Google\Cloud\Storage\StorageClient 這個套件
預設 gcp instance 是只能用 ssh key based 登入,而如果沒有幫 root 帳號(或者要執行 rsync 的帳號)產生 ssh key,那等於無法使用 rsync 這個命令。
這篇文章整理得很好,把落落長的 gitlab 官方文章變得精簡許多。
很多人都知道之前 gitlab 裏頭的工程師不小心 rm -rf 的事件,所以當然要做好備份。 在 google cloud 的機器可以乾脆直接寫 crontab 定期做 snapshot,不過這樣的方式也不能防止手殘砍掉負責跑這 crontab 的 instance 就是了 XD #!/usr/bin/env bash export PATH=$PATH:/usr/local/bin/:/usr/bin #create snapshot echo “$(gcloud compute disks snapshot my-webserver –snapshot-names=www-$(date “+%Y%m%d”) –zone=asia-east1-c)” #get snapshot list SNAPSHOT_LIST=”$(gcloud compute snapshots list –regexp “(.*www-.*)” –uri)” echo “${SNAPSHOT_LIST}” | while read line ; do # get the snapshot […]
目前看來有兩個方式,都可以 work