顯示具有 digitalOcean 標籤的文章。 顯示所有文章
顯示具有 digitalOcean 標籤的文章。 顯示所有文章

2015年2月21日 星期六

DigitalOcean perhaps iptables or your kernel needs to be upgraded

我的 ubnutn 是 14.04,本來今天要看一下怎麼設定防火牆,今天在下 iptables -L  時出現 『Perhaps iptables or your kernel needs to be upgraded.』 這個訊息,真是嚇死我了...
root@demo-server:~# iptables -L
modprobe: ERROR: ../libkmod/libkmod.c:556 kmod_search_moddep() could not open moddep file '/lib/modules/3.13.0-36-generic/modules.dep.bin'
iptables v1.4.21: can't initialize iptables table `filter': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

後來根據官方的討論論壇,解藥:
apt-get install linux-image-$(uname -r)

再重新下 iptables -L 就可以了。
(下 iptables 需要 root 權限,sudo iptables -L,範例沒有是因為我已經是用 root 登入)


參考
* problem with iptables and ubuntu Ubuntu 13.10
* How To Set Up a Firewall Using IP Tables on Ubuntu 12.04
* 配置Ubuntu後透過SSH連線設定Host以及防火牆
佛祖球球-[Ubuntu]iptables 設定


2015年2月11日 星期三

DigitalOcean 移機 / Resize 經驗



一般來說我們在 cloud service 商 (AWS, DigitalOcean, Linode) 那邊建立 instance,可能會有需要升級的情況,像是升級記憶體等等 (嚴格來說我也不知道哪些東西可以升... 因為我只用過 DigitalOcean...)。

在 DigitalOcean 上,instance 就是 Droplets,不過要升級原有已經建立好的 Droplets,要注意的是只能升級記憶體,其他的都不行。


總而言之,在 DigitalOcean 有兩條路

1. 原 instance 升級 (resize),但是只能針對記憶體,其他則無。
2. 備份原 Droplet (暫時關機 snapshots 下來 , DB 備份等等),然後建立新的 Droplet (在 DigitalOcean 一樣的錢如果是用來開新的 Droplet 我覺得比較划算,resize 的話只有得到記憶體,可是也是花一樣的錢... ),建立的時候可以直接選用已經建立的 snapshot,詳細步驟可以參考:How To Resize Droplets Using Snapshots

選 2 的風險來了,如果你的產品已經在線上,又另購 instance,那就是 IP 要重新指定到新 instance,至於 DNS 什麼時候生效也是無法保證,我有遇過 5 分鐘,也有遇過真的要 2 天的
...。無法解釋的清楚,要換好的,就是得等了 :P (不過那一刻真的超緊張...,真的深怕會等上兩天)

預計下次有機會想要用 AWS 了。雖然說 DigitalOcean 目前用起來感覺不錯,介面簡單,客服回應速度夠快,但總是想用用別家的看看。


用 snapshot 建立新的 instance

我的嘗試結果是,任何設定檔都一樣,連 mysql 的密碼都一樣,資料也還在,無痛轉。
阿有啦,想起來了,只有 hostname 不一樣,那是一開始在建立 instance 的時候的名字 XD
但是對整個 server 的運作來說,幾乎沒有影響。


Vue multiselect set autofocus and tinymce set autofocus

要在畫面一進來 focus multiselect 的方式: 參考: https://jsfiddle.net/shentao/mnphdt2g/ 主要就是在 multiselect 的 tag 加上 ref (例如: my_multiselect), 另外在 mounted...