DNS 管理基本上都是大同小異啦,可是namecheap 免費賬戶不提供 API ,應該說要使用namecheap 提供的API ,需要滿足以下的條件
```
I want to enable API for my account. Are there any specific requirements?
We have certain requirements for activation to prevent system abuse. In order to have API enabled for your account, you should meet one of the following requirements:
- have at least 20 domains under your account;
- have at least $50 on your account balance;
- have at least $50 spent within the last 2 years.
<p>An sincerity so extremity he additions. Her yet <strong>there truth merit</strong>. Mrs all projecting favourable now unpleasing. Son law garden chatty temper. Oh children provided to mr elegance marriage strongly. Off can admiration prosperous now devonshire diminution law.</p>
<p>An sincerity so extremity he additions. Her yet <strong>there truth merit</strong>. Mrs all projecting favourable now unpleasing. Son law garden chatty temper. Oh children provided to mr elegance marriage strongly. Off can admiration prosperous now devonshire diminution law.</p>
<p>Received overcame oh sensible so at an. Formed do change merely to county it. <strong>Am separate contempt</strong> domestic to to oh. On relation my so addition branched. Put hearing cottage she norland letters equally prepare too. Replied exposed savings he no viewing as up. Soon body add him hill. No father living really people estate if. Mistake do produce beloved demesne if am pursuit.</p>
<p>Received overcame oh sensible so at an. Formed do change merely to county it. <strong>Am separate contempt</strong> domestic to to oh. On relation my so addition branched. Put hearing cottage she norland letters equally prepare too. Replied exposed savings he no viewing as up. Soon body add him hill. No father living really people estate if. Mistake do produce beloved demesne if am pursuit.</p>
<p><imgsrc="/img/about.jpg"alt="This is me"></p>
<p><imgsrc="/img/about.jpg"alt="This is me"/></p>
<p>The Big Oxmox advised her not to do so, because there were thousands of bad Commas, wild Question Marks and devious Semikoli, but the Little Blind Text didn’t listen. She packed her seven versalia, put her initial into the belt and made herself on the way.</p>
<p>The Big Oxmox advised her not to do so, because there were thousands of bad Commas, wild Question Marks and devious Semikoli, but the Little Blind Text didn’t listen. She packed her seven versalia, put her initial into the belt and made herself on the way.</p>
<h4id="education">Education</h4>
<h4id="education">Education</h4>
<ul>
<ul>
<li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li>
<li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li>
<li>Aliquam tincidunt mauris eu risus.</li>
<li>Aliquam tincidunt mauris eu risus.</li>
</ul>
</ul>
<p>When she reached the first hills of the Italic Mountains, she had a last view back on the skyline of her hometown Bookmarksgrove, the headline of Alphabet Village and the subline of her own road, the Line Lane. Pityful a rethoric question ran over her cheek, then</p>
<p>When she reached the first hills of the Italic Mountains, she had a last view back on the skyline of her hometown Bookmarksgrove, the headline of Alphabet Village and the subline of her own road, the Line Lane. Pityful a rethoric question ran over her cheek, then</p>
<p>DNS 管理基本上都是大同小異啦,可是namecheap 免費賬戶不提供 API ,應該說要使用namecheap 提供的API ,需要滿足以下的條件</p>
<pre><code>I want to enable API for my account. Are there any specific requirements?
We have certain requirements for activation to prevent system abuse. In order to have API enabled for your account, you should meet one of the following requirements:
- have at least 20 domains under your account;
- have at least $50 on your account balance;
- have at least $50 spent within the last 2 years.
<divclass="highlight"><prestyle="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><codeclass="language-shell"data-lang="shell">sudo vim /etc/systemd/system/acme-dns.service
<divclass="highlight"><prestyle="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><codeclass="language-shell"data-lang="shell"><spanstyle="color:#75715e"># 第一個ACME_DNS_API_BASE是剛剛設定acme-dns API port</span>
2021/08/26 12:00:53 <spanstyle="color:#f92672">[</span>INFO<spanstyle="color:#f92672">]</span><spanstyle="color:#f92672">[</span>*.abc.com<spanstyle="color:#f92672">]</span> Server responded with a certificate.
</code></pre></div><p>同樣地,會產生新的ssl 憑證</p>
<divclass="highlight"><prestyle="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><codeclass="language-shell"data-lang="shell">2021-08-26 12:00:53 <spanstyle="color:#f92672">[</span>minion@hqs058 ~<spanstyle="color:#f92672">]</span>$ ls -la .lego/certificates/
total <spanstyle="color:#ae81ff">28</span>
drwx------ <spanstyle="color:#ae81ff">2</span> minion sudo <spanstyle="color:#ae81ff">4096</span> Aug <spanstyle="color:#ae81ff">26</span> 12:00 .
drwx------ <spanstyle="color:#ae81ff">5</span> minion sudo <spanstyle="color:#ae81ff">4096</span> Aug <spanstyle="color:#ae81ff">26</span> 11:59 ..
-rw------- <spanstyle="color:#ae81ff">1</span> minion sudo <spanstyle="color:#ae81ff">5325</span> Aug <spanstyle="color:#ae81ff">26</span> 12:00 _.abc.com.crt
-rw------- <spanstyle="color:#ae81ff">1</span> minion sudo <spanstyle="color:#ae81ff">3751</span> Aug <spanstyle="color:#ae81ff">26</span> 12:00 _.abc.com.issuer.crt
-rw------- <spanstyle="color:#ae81ff">1</span> minion sudo <spanstyle="color:#ae81ff">238</span> Aug <spanstyle="color:#ae81ff">26</span> 12:00 _.abc.com.json
-rw------- <spanstyle="color:#ae81ff">1</span> minion sudo <spanstyle="color:#ae81ff">227</span> Aug <spanstyle="color:#ae81ff">26</span> 12:00 _.abc.com.key
2021/08/26 12:04:00 <spanstyle="color:#f92672">[</span>*.abc.com<spanstyle="color:#f92672">]</span> The certificate expires in <spanstyle="color:#ae81ff">89</span> days, the number of days defined to perform the renewal is 30: no renewal.
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/another-way-to-keep-ansible-log/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/another-way-to-keep-ansible-log/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -401,11 +391,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>因為工作上的需要,要修改client端的 /etc/environment 檔案</p>
<p>因為工作上的需要,要修改client端的 /etc/environment 檔案</p>
<p>在有權限使用proxy 服務的user的環境中,加入proxy 的設定</p>
<p>在有權限使用proxy 服務的user的環境中,加入proxy 的設定</p>
<p>原本的清單中,有host/user/ip 這幾個值可以拿來判斷</p>
<p>原本的清單中,有host/user/ip 這幾個值可以拿來判斷</p>
<p>proxy server 那邊是採用ip 來控制,所以這邊也跟著用 ip 來判斷要不要修改 /etc/environment</p>
<p>proxy server 那邊是採用ip 來控制,所以這邊也跟著用 ip 來判斷要不要修改 /etc/environment</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-run-task-depends-on-ipaddr/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-run-task-depends-on-ipaddr/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -462,9 +449,7 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>在ansible中,關於如何引用自定義的變數,一直讓我很頭疼</p>
<p>在ansible中,關於如何引用自定義的變數,一直讓我很頭疼</p>
<p>尤其是有牽涉到從外部導入yaml檔案時,更是常常讓我不知道到底該怎麼抓出想要的變數</p>
<p>尤其是有牽涉到從外部導入yaml檔案時,更是常常讓我不知道到底該怎麼抓出想要的變數</p>
<p>這次還是用selectattr 來處理,希望下次能夠記得…</p>
<p>這次還是用selectattr 來處理,希望下次能夠記得…</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-selectattr-from-list-in-dictionary/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-selectattr-from-list-in-dictionary/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/transfer-file-content-using-xclip-in-terminal/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/transfer-file-content-using-xclip-in-terminal/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<p>storage 選擇QNAP NAS TS-932X + 960G SSD x 4 (raid 10 , NFS) + QNAP 10G Switch QSW-1280C-8C</p>
<p>storage 選擇QNAP NAS TS-932X + 960G SSD x 4 (raid 10 , NFS) + QNAP 10G Switch QSW-1280C-8C</p>
<p>既然storage這邊選用了10G的機種,伺服器上當然也要增加10G網卡</p>
<p>既然storage這邊選用了10G的機種,伺服器上當然也要增加10G網卡</p>
<p>一樣,成本考量,就不用INTEL 了,買了這張 ASUS 10G 網卡</p>
<p>一樣,成本考量,就不用INTEL 了,買了這張 ASUS 10G 網卡</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-asus-10g-nic-in-proxmox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-asus-10g-nic-in-proxmox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/incredibly-slow-mdadm-rebuild/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/incredibly-slow-mdadm-rebuild/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/cloudcmd-web-file-manager/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/cloudcmd-web-file-manager/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -394,7 +388,6 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>感覺最近應該會用到類似這樣的功能,趁著最近比較閒一點</p>
<p>感覺最近應該會用到類似這樣的功能,趁著最近比較閒一點</p>
<p>就把系統弄起來玩玩看,順便建立ansible 的playbook</p>
<p>就把系統弄起來玩玩看,順便建立ansible 的playbook</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/various-self-hosted-file-sharing-system-test/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/various-self-hosted-file-sharing-system-test/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-postgresql-pg_strom-nvidia_driver-cuda-in-ubuntu-20.04/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-postgresql-pg_strom-nvidia_driver-cuda-in-ubuntu-20.04/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-letsencrypt-cloudflare-wildcard/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-letsencrypt-cloudflare-wildcard/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -573,15 +560,10 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>手機上的廣告越來越討厭了</p>
<p>手機上的廣告越來越討厭了</p>
<p>但是用手機看頁面、影片的機會越來越高</p>
<p>但是用手機看頁面、影片的機會越來越高</p>
<p>所以一直想看看有沒有什麼方式可以解決這個問題</p>
<p>所以一直想看看有沒有什麼方式可以解決這個問題</p>
<p>不只可以用在safari 上,連APP 裡面的廣告最好都能夠擋掉</p>
<p>不只可以用在safari 上,連APP 裡面的廣告最好都能夠擋掉</p>
<p>在github上面看到有個專案是 wireguard + pihole</p>
<p>在github上面看到有個專案是 wireguard + pihole</p>
<p>滿有趣的,就來研究一下</p>
<p>滿有趣的,就來研究一下</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/wireguard-pihole-in-ubuntu-20.04/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/wireguard-pihole-in-ubuntu-20.04/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -638,25 +620,15 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>最近在玩ansible + openwrt + wireguard</p>
<p>最近在玩ansible + openwrt + wireguard</p>
<p>ansible 腳本寫好之後,可以把config 佈署到 openwrt 上</p>
<p>ansible 腳本寫好之後,可以把config 佈署到 openwrt 上</p>
<p>當然前提是最好用同樣的機器,不同的機器在config 上會有一些差異</p>
<p>當然前提是最好用同樣的機器,不同的機器在config 上會有一些差異</p>
<p>但是這些差異常常就會造成無法連線、無法使用的狀況</p>
<p>但是這些差異常常就會造成無法連線、無法使用的狀況</p>
<p>BTW 我是用 ubiquiti 的 edgerouter X 來做</p>
<p>BTW 我是用 ubiquiti 的 edgerouter X 來做</p>
<p>都弄好之後,就想說來跑個iperf3 測試一下連線速度</p>
<p>都弄好之後,就想說來跑個iperf3 測試一下連線速度</p>
<p>也好和之前做的 IPSEC 比較一下</p>
<p>也好和之前做的 IPSEC 比較一下</p>
<p>結果很奇怪的是,明明一樣的機器、一樣用ansible 跑出來的config</p>
<p>結果很奇怪的是,明明一樣的機器、一樣用ansible 跑出來的config</p>
<p>但是有一台edgerouter X 的VPN 連接速度就是特別慢</p>
<p>但是有一台edgerouter X 的VPN 連接速度就是特別慢</p>
<p>而且速度都剛好卡在 99.X Mb 左右</p>
<p>而且速度都剛好卡在 99.X Mb 左右</p>
<p>就讓我很納悶了…</p>
<p>就讓我很納悶了…</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/check-port-speed-in-openwrt/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/check-port-speed-in-openwrt/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -713,19 +685,12 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>上禮拜某天在開會的時候,LINE不斷傳來訊息</p>
<p>上禮拜某天在開會的時候,LINE不斷傳來訊息</p>
<p>不過因為我向來開會都很認真(驕傲,所以都沒看,接著就變成來電了</p>
<p>不過因為我向來開會都很認真(驕傲,所以都沒看,接著就變成來電了</p>
<p>看來大概有啥事發生</p>
<p>看來大概有啥事發生</p>
<p>不過畢竟不是正職的工作,就先放著吧</p>
<p>不過畢竟不是正職的工作,就先放著吧</p>
<p>後來變成連學長都直接打來告訴我,某間公司的伺服器出事了,客戶找不到我</p>
<p>後來變成連學長都直接打來告訴我,某間公司的伺服器出事了,客戶找不到我</p>
<p>叫我趕快連進去看</p>
<p>叫我趕快連進去看</p>
<p>是說,啊我又沒跟人家簽維護,趕什麼趕…</p>
<p>是說,啊我又沒跟人家簽維護,趕什麼趕…</p>
<p>總之,開完會後就了解一下狀況</p>
<p>總之,開完會後就了解一下狀況</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/debian-buster-server-been-hacked/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/debian-buster-server-been-hacked/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -782,13 +747,9 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>工作用的電腦,昨天終於難得的reboot了(uptime 看了一下,大概是三百多天)</p>
<p>工作用的電腦,昨天終於難得的reboot了(uptime 看了一下,大概是三百多天)</p>
<p>結果重開機之後,發現原本在打tunnel 連 ptt 的 wireguard VPN 掛掉了</p>
<p>結果重開機之後,發現原本在打tunnel 連 ptt 的 wireguard VPN 掛掉了</p>
<p>手動下指令也啟動不了</p>
<p>手動下指令也啟動不了</p>
<p>查了一下發現是 ubuntu 18.04 kernel 4.15.0-106 的包</p>
<p>查了一下發現是 ubuntu 18.04 kernel 4.15.0-106 的包</p>
<p>看來就連kernel 最好都不要自動升級…</p>
<p>看來就連kernel 最好都不要自動升級…</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-kernel-4-15-0-106-unable-to-start-wireguard-interface/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-kernel-4-15-0-106-unable-to-start-wireguard-interface/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -845,9 +806,7 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>ubuntu 18.04 預設移掉了 /etc/rc.local 的功能</p>
<p>ubuntu 18.04 預設移掉了 /etc/rc.local 的功能</p>
<p>變成要用 systemd 的方式來運作,可是有點難用…</p>
<p>變成要用 systemd 的方式來運作,可是有點難用…</p>
<p>紀錄一下步驟,再來研究怎麼整合到 preseed 裡面</p>
<p>紀錄一下步驟,再來研究怎麼整合到 preseed 裡面</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1804-preseeds/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1804-preseeds/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1404-preseed/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1404-preseed/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/config-networkmanager-in-ubuntu-to-stop-modify-resolvconf/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/config-networkmanager-in-ubuntu-to-stop-modify-resolvconf/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-it500u-card-reader-in-ubuntu-1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-it500u-card-reader-in-ubuntu-1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -1095,11 +1041,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>前幾天修復了因為intel cpu bug 導致無法使用的 synology DS415+</p>
<p>前幾天修復了因為intel cpu bug 導致無法使用的 synology DS415+</p>
<p>就來玩玩看promox 加上 synology high availability 再加上 NFS share 的環境</p>
<p>就來玩玩看promox 加上 synology high availability 再加上 NFS share 的環境</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/proxmox-with-synology-high-availability/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/proxmox-with-synology-high-availability/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/first-try-synology-ha/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/first-try-synology-ha/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -1221,11 +1159,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>昨天老闆在slack 上面問說現在的幾台 DB Server 有沒有跑過 pgbench</p>
<p>昨天老闆在slack 上面問說現在的幾台 DB Server 有沒有跑過 pgbench</p>
<p>分數大概如何,想要跟他的筆電做個比較</p>
<p>分數大概如何,想要跟他的筆電做個比較</p>
<p>之前有跑過幾次,這次就順便測試一下不同的硬體配置、以及不同的軟體版本</p>
<p>之前有跑過幾次,這次就順便測試一下不同的硬體配置、以及不同的軟體版本</p>
<p>對於pgbench 跑分會有多大的影響</p>
<p>對於pgbench 跑分會有多大的影響</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/postgresql-pgbench-benchmark/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/postgresql-pgbench-benchmark/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -1282,9 +1217,7 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>2020/01/02 , 2020年上工的第一天,群暉的 DS415+ NAS 掛了!</p>
<p>2020/01/02 , 2020年上工的第一天,群暉的 DS415+ NAS 掛了!</p>
<p>因為群暉的文件在最關鍵的一步寫得亂七八糟!</p>
<p>因為群暉的文件在最關鍵的一步寫得亂七八糟!</p>
<p>所以在這邊紀錄一下我操作的步驟!</p>
<p>所以在這邊紀錄一下我操作的步驟!</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/rescue-synology-nas-with-ubuntu-livecd/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/rescue-synology-nas-with-ubuntu-livecd/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-get-value-from-loop-register/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-get-value-from-loop-register/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-ssh-forwardagent/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-ssh-forwardagent/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/test-pg_prewarm/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/test-pg_prewarm/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/accidentally-typed-an-extra-space-in-ansible-playbook/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/accidentally-typed-an-extra-space-in-ansible-playbook/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/add-system-wide-favorite-apps-in-dconf/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/add-system-wide-favorite-apps-in-dconf/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-dconf-proxy-settings/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-dconf-proxy-settings/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/awesome-all-in-one-vpn-server-streisand/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/awesome-all-in-one-vpn-server-streisand/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/pg_auto_failover_in_ubuntu_1804_psql_11/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/pg_auto_failover_in_ubuntu_1804_psql_11/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -1902,9 +1803,7 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>前面測試了用pgbarman / pgbackrest 來備份 postgresql</p>
<p>前面測試了用pgbarman / pgbackrest 來備份 postgresql</p>
<p>這次改從system file level 來下手</p>
<p>這次改從system file level 來下手</p>
<p>採用zfs 的快照來備份、還原postgresql 資料庫</p>
<p>採用zfs 的快照來備份、還原postgresql 資料庫</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/postgresql-backup-restore-using-zfs-snapshot/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/postgresql-backup-restore-using-zfs-snapshot/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/pgbarman-in-ubuntu-1804-postgresql-10/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/pgbarman-in-ubuntu-1804-postgresql-10/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -2132,11 +2028,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>因為老闆說要試試看用GPU 來跑postgresql 威力</p>
<p>因為老闆說要試試看用GPU 來跑postgresql 威力</p>
<p>手邊剛好有一張 geforce gt 720</p>
<p>手邊剛好有一張 geforce gt 720</p>
<p>一開始沒想太多,看到有這張卡的驅動程式,然後CUDA也有支援</p>
<p>一開始沒想太多,看到有這張卡的驅動程式,然後CUDA也有支援</p>
<p>就直接從桌機拔下來,接去LAB Server ,然後就開始一連串的難關了…</p>
<p>就直接從桌機拔下來,接去LAB Server ,然後就開始一連串的難關了…</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-nvidia-driver-cuda-pgstrom-in-ubuntu-1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-nvidia-driver-cuda-pgstrom-in-ubuntu-1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/do-no-use-10-0-0-0-private-ipaddr-in-gcp/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/do-no-use-10-0-0-0-private-ipaddr-in-gcp/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<p>之前買了兩台edgerouter X 拿來玩了一下 wireguard,感覺還不錯,不過只有測試到點對點</p>
<p>之前買了兩台edgerouter X 拿來玩了一下 wireguard,感覺還不錯,不過只有測試到點對點</p>
<p>這次試試看躲在gateway後面,看看能不能建立多點的VPN環境</p>
<p>這次試試看躲在gateway後面,看看能不能建立多點的VPN環境</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/multiple-site-to-site-vpn-using-wireguard/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/multiple-site-to-site-vpn-using-wireguard/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -2325,23 +2207,14 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>之前總部和分公司之間 是用buffalo 的小AP 灌 openwrt</p>
<p>之前總部和分公司之間 是用buffalo 的小AP 灌 openwrt</p>
<p>然後用strongswan 來打 IPSEC site to site VPN</p>
<p>然後用strongswan 來打 IPSEC site to site VPN</p>
<p>config 看起來不是很難 (只是看起來)</p>
<p>config 看起來不是很難 (只是看起來)</p>
<p>但是實際上已經找不到當初的文件</p>
<p>但是實際上已經找不到當初的文件</p>
<p>所以要維護很困難(光那些RSA KEY 就不知道為何、如何產生)</p>
<p>所以要維護很困難(光那些RSA KEY 就不知道為何、如何產生)</p>
<p>後來採購了兩台edgerouter X 做測試</p>
<p>後來採購了兩台edgerouter X 做測試</p>
<p>也用openvpn 成功的建立了 site to site VPN</p>
<p>也用openvpn 成功的建立了 site to site VPN</p>
<p>本來想說 openvpn 已經夠簡單了</p>
<p>本來想說 openvpn 已經夠簡單了</p>
<p>今天看到文章說用wireguard 可以更簡單</p>
<p>今天看到文章說用wireguard 可以更簡單</p>
<p>於是研究了一下,發現還真的很簡單!</p>
<p>於是研究了一下,發現還真的很簡單!</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/site-to-site-vpn-using-wireguard-in-two-edgerouters/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/site-to-site-vpn-using-wireguard-in-two-edgerouters/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -2398,19 +2271,12 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>最近有個任務,需要大量安裝client</p>
<p>最近有個任務,需要大量安裝client</p>
<p>想用PXE來處理,只要user開機按F12(acer 桌機) 選擇PXE Boot</p>
<p>想用PXE來處理,只要user開機按F12(acer 桌機) 選擇PXE Boot</p>
<p>然後選擇OS版本,就可以自動進行安裝</p>
<p>然後選擇OS版本,就可以自動進行安裝</p>
<p>安裝完成後,會自動重新開機,接著就用ansible來做user環境設定</p>
<p>安裝完成後,會自動重新開機,接著就用ansible來做user環境設定</p>
<p>PXE的部份本來是沒有什麼問題,自動安裝系統的部份都做好了</p>
<p>PXE的部份本來是沒有什麼問題,自動安裝系統的部份都做好了</p>
<p>可是因為這次的量比較多,想說讓每一台在完成PXE安裝後的第一次重開機</p>
<p>可是因為這次的量比較多,想說讓每一台在完成PXE安裝後的第一次重開機</p>
<p>就送出一封郵件來通知我,說已經完成安裝,可以執行ansible 了</p>
<p>就送出一封郵件來通知我,說已經完成安裝,可以執行ansible 了</p>
<p>看似很簡單的一件事情,卻搞了我兩天….</p>
<p>看似很簡單的一件事情,卻搞了我兩天….</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/send-mail-to-notify-after-pxe-install/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/send-mail-to-notify-after-pxe-install/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/remote-management-system-meshcentral/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/remote-management-system-meshcentral/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/change-timezone-in-docker/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/change-timezone-in-docker/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/inx-collect-detail-hardware-info/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/inx-collect-detail-hardware-info/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/log-all-bash-commands/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/log-all-bash-commands/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/fix-zpool-device-busy-using-dmsetup/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/fix-zpool-device-busy-using-dmsetup/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -2770,7 +2622,6 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>公司的一台老伺服器空間不足了,要執行指令都會中斷,所以想要擴充空間。</p>
<p>公司的一台老伺服器空間不足了,要執行指令都會中斷,所以想要擴充空間。</p>
<p>看起來不難搞,事實上…..</p>
<p>看起來不難搞,事實上…..</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/transfer-cent62-using-rsync/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/transfer-cent62-using-rsync/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-timeshift-on-ubuntu1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-timeshift-on-ubuntu1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -2888,7 +2736,6 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>買了一張 DELL 6/iR 低階的raid 卡</p>
<p>買了一張 DELL 6/iR 低階的raid 卡</p>
<p>來測試把系統裝在硬體做的RAID上,結果沒想到居然不能開機…</p>
<p>來測試把系統裝在硬體做的RAID上,結果沒想到居然不能開機…</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-ubuntu1804-on-dell-6ir-raid-controller/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-ubuntu1804-on-dell-6ir-raid-controller/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -2945,9 +2792,7 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>最近在弄一台機器,想要把ubuntu 18.04 安裝在software raid上</p>
<p>最近在弄一台機器,想要把ubuntu 18.04 安裝在software raid上</p>
<p>因為新開的機器大部分都是在proxmox上,所以很少碰實體機器了</p>
<p>因為新開的機器大部分都是在proxmox上,所以很少碰實體機器了</p>
<p>結果在安裝過程中,做raid碰到一些問題,來紀錄一下</p>
<p>結果在安裝過程中,做raid碰到一些問題,來紀錄一下</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1804-install-root-on-raid/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1804-install-root-on-raid/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -3004,11 +2849,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>這兩天在弄兩台Freenas ,準備當作Proxmox 的Storage & Server Backup</p>
<p>這兩天在弄兩台Freenas ,準備當作Proxmox 的Storage & Server Backup</p>
<p>因為伺服器的限制,只能接六個SATA,我接了六個2T的硬碟做raid10</p>
<p>因為伺服器的限制,只能接六個SATA,我接了六個2T的硬碟做raid10</p>
<p>然後把Freenas 安裝在隨身碟上</p>
<p>然後把Freenas 安裝在隨身碟上</p>
<p>不過會一直出現Smartd failed to start 的錯誤訊息</p>
<p>不過會一直出現Smartd failed to start 的錯誤訊息</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/smartd-failed-to-start-in-freenas/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/smartd-failed-to-start-in-freenas/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -3065,11 +2907,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>因為工作的關係,現在很多時間都花在VIM的操作上</p>
<p>因為工作的關係,現在很多時間都花在VIM的操作上</p>
<p>所以之前花了滿多時間,調整出一個適合自己的VIM環境</p>
<p>所以之前花了滿多時間,調整出一個適合自己的VIM環境</p>
<p>原本的作法是把這個設定好的環境,丟到自己建立的gitea 上面</p>
<p>原本的作法是把這個設定好的環境,丟到自己建立的gitea 上面</p>
<p>然後每到一台新的機器,就要去clone 下來</p>
<p>然後每到一台新的機器,就要去clone 下來</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/create-portable-vim-environment/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/create-portable-vim-environment/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/10g-lab-using-proxmox-and-mellanox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/10g-lab-using-proxmox-and-mellanox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -3197,9 +3028,7 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>在上一篇 <ahref="https://h.cowbay.org/post/ansible-selectattr/">Ansible how to use ‘list’ in yaml file </a></p>
<p>在上一篇 <ahref="https://h.cowbay.org/post/ansible-selectattr/">Ansible how to use ‘list’ in yaml file </a></p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-selectattr-filter/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-selectattr-filter/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -3256,11 +3085,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>這幾天在玩ansible 時,碰到一個問題</p>
<p>這幾天在玩ansible 時,碰到一個問題</p>
<p>假如我有個yaml檔作為資料來源,檔名是 abc.yml</p>
<p>假如我有個yaml檔作為資料來源,檔名是 abc.yml</p>
<p>大概長這樣</p>
<p>大概長這樣</p>
<pre><code>"teams": [
<pre><code>"teams": [
{
{
"chinese_name": "TEAM1",
"chinese_name": "TEAM1",
@ -3354,11 +3180,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>最近在測試metabase,記得幾個月前就有測試過</p>
<p>最近在測試metabase,記得幾個月前就有測試過</p>
<p>但是當時的界面和現在的樣子差很多,看樣子改版還滿勤勞的</p>
<p>但是當時的界面和現在的樣子差很多,看樣子改版還滿勤勞的</p>
<p>所以這次改用docker來建立,根本五分鐘不到就建好了(挖鼻孔)</p>
<p>所以這次改用docker來建立,根本五分鐘不到就建好了(挖鼻孔)</p>
<p>不過呢,很討厭的是,一進去就發現語系採用的是簡體中文</p>
<p>不過呢,很討厭的是,一進去就發現語系採用的是簡體中文</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/change-preferred-language-in-firefox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/change-preferred-language-in-firefox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -3415,11 +3238,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>因為工作上的需求,有個資料庫需要開放給不同team的人去存取</p>
<p>因為工作上的需求,有個資料庫需要開放給不同team的人去存取</p>
<p>雖然都是在同一台機器上的同一個資料庫</p>
<p>雖然都是在同一台機器上的同一個資料庫</p>
<p>但是希望能夠不同team的人用不同的資料庫使用者</p>
<p>但是希望能夠不同team的人用不同的資料庫使用者</p>
<p>這樣萬一出事,會比較好抓兇手??</p>
<p>這樣萬一出事,會比較好抓兇手??</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/copy_role_in_pgsql/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/copy_role_in_pgsql/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -3476,17 +3296,11 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>這是發生在一個夜黑風高的寂寥深夜….. ( What The FXXX … )</p>
<p>這是發生在一個夜黑風高的寂寥深夜….. ( What The FXXX … )</p>
<p>來到這個環境之後,有一個很詭異的狀況一直困擾著我</p>
<p>來到這個環境之後,有一個很詭異的狀況一直困擾著我</p>
<p>在每個分公司,都會有一台伺服器作為KVM Host</p>
<p>在每個分公司,都會有一台伺服器作為KVM Host</p>
<p>上面跑兩台VM,一台作為ansible controller (目前沒作用)</p>
<p>上面跑兩台VM,一台作為ansible controller (目前沒作用)</p>
<p>另一台作為這邊所謂的 “Build Server”</p>
<p>另一台作為這邊所謂的 “Build Server”</p>
<p>用途包含了DHCP Server / Proxy Server (squid3) / APT Proxy (squid-deb-proxy)</p>
<p>用途包含了DHCP Server / Proxy Server (squid3) / APT Proxy (squid-deb-proxy)</p>
<p>問題就發生在這台 Build Server 上…</p>
<p>問題就發生在這台 Build Server 上…</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/weird-client-server-connection/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/weird-client-server-connection/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/bookstack-docker/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/bookstack-docker/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<description><p>在上一篇 <a href="https://h.cowbay.org/post/ansible-selectattr/">Ansible how to use &lsquo;list&rsquo; in yaml file </a></p>
<description><p>在上一篇 <a href="https://h.cowbay.org/post/ansible-selectattr/">Ansible how to use &lsquo;list&rsquo; in yaml file </a></p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/synology-ds415-repair-cost/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/synology-ds415-repair-cost/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/what-a-piss-in-synology-document/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/what-a-piss-in-synology-document/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<p>When she reached the first hills of the Italic Mountains, she had a last view back on the skyline of her hometown Bookmarksgrove, the headline of Alphabet Village and the subline of her own road, the Line Lane. Pityful a rethoric question ran over her cheek, then</p>
<p>When she reached the first hills of the Italic Mountains, she had a last view back on the skyline of her hometown Bookmarksgrove, the headline of Alphabet Village and the subline of her own road, the Line Lane. Pityful a rethoric question ran over her cheek, then</p>
<p>Effects present letters inquiry no an removed or friends. Desire behind latter me though in. Supposing shameless am he engrossed up additions. My possible peculiar together to. Desire so better am cannot he up before points. Remember mistaken opinions it pleasure of debating. Court front maids forty if aware their at. Chicken use are pressed removed.</p>
<p>Effects present letters inquiry no an removed or friends. Desire behind latter me though in. Supposing shameless am he engrossed up additions. My possible peculiar together to. Desire so better am cannot he up before points. Remember mistaken opinions it pleasure of debating. Court front maids forty if aware their at. Chicken use are pressed removed.</p>
<p>Able an hope of body. Any nay shyness article matters own removal nothing his forming. Gay own additions education satisfied the perpetual. If he cause manor happy. Without farther she exposed saw man led. Along on happy could cease green oh.</p>
<p>Able an hope of body. Any nay shyness article matters own removal nothing his forming. Gay own additions education satisfied the perpetual. If he cause manor happy. Without farther she exposed saw man led. Along on happy could cease green oh.</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/cloudcmd-web-file-manager/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/cloudcmd-web-file-manager/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -381,7 +375,6 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>感覺最近應該會用到類似這樣的功能,趁著最近比較閒一點</p>
<p>感覺最近應該會用到類似這樣的功能,趁著最近比較閒一點</p>
<p>就把系統弄起來玩玩看,順便建立ansible 的playbook</p>
<p>就把系統弄起來玩玩看,順便建立ansible 的playbook</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/various-self-hosted-file-sharing-system-test/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/various-self-hosted-file-sharing-system-test/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-postgresql-pg_strom-nvidia_driver-cuda-in-ubuntu-20.04/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-postgresql-pg_strom-nvidia_driver-cuda-in-ubuntu-20.04/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-letsencrypt-cloudflare-wildcard/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-letsencrypt-cloudflare-wildcard/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -551,15 +538,10 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>手機上的廣告越來越討厭了</p>
<p>手機上的廣告越來越討厭了</p>
<p>但是用手機看頁面、影片的機會越來越高</p>
<p>但是用手機看頁面、影片的機會越來越高</p>
<p>所以一直想看看有沒有什麼方式可以解決這個問題</p>
<p>所以一直想看看有沒有什麼方式可以解決這個問題</p>
<p>不只可以用在safari 上,連APP 裡面的廣告最好都能夠擋掉</p>
<p>不只可以用在safari 上,連APP 裡面的廣告最好都能夠擋掉</p>
<p>在github上面看到有個專案是 wireguard + pihole</p>
<p>在github上面看到有個專案是 wireguard + pihole</p>
<p>滿有趣的,就來研究一下</p>
<p>滿有趣的,就來研究一下</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/wireguard-pihole-in-ubuntu-20.04/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/wireguard-pihole-in-ubuntu-20.04/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<description><p>在上一篇 <a href="https://h.cowbay.org/post/ansible-selectattr/">Ansible how to use &lsquo;list&rsquo; in yaml file </a></p>
<description><p>在上一篇 <a href="https://h.cowbay.org/post/ansible-selectattr/">Ansible how to use &lsquo;list&rsquo; in yaml file </a></p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/fix-zpool-device-busy-using-dmsetup/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/fix-zpool-device-busy-using-dmsetup/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -381,7 +375,6 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>公司的一台老伺服器空間不足了,要執行指令都會中斷,所以想要擴充空間。</p>
<p>公司的一台老伺服器空間不足了,要執行指令都會中斷,所以想要擴充空間。</p>
<p>看起來不難搞,事實上…..</p>
<p>看起來不難搞,事實上…..</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/transfer-cent62-using-rsync/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/transfer-cent62-using-rsync/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/command_to_test_main_ssl/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/command_to_test_main_ssl/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-timeshift-on-ubuntu1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-timeshift-on-ubuntu1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -544,7 +532,6 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>買了一張 DELL 6/iR 低階的raid 卡</p>
<p>買了一張 DELL 6/iR 低階的raid 卡</p>
<p>來測試把系統裝在硬體做的RAID上,結果沒想到居然不能開機…</p>
<p>來測試把系統裝在硬體做的RAID上,結果沒想到居然不能開機…</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-ubuntu1804-on-dell-6ir-raid-controller/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-ubuntu1804-on-dell-6ir-raid-controller/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1804-install-root-on-raid/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1804-install-root-on-raid/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -381,11 +375,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>這兩天在弄兩台Freenas ,準備當作Proxmox 的Storage & Server Backup</p>
<p>這兩天在弄兩台Freenas ,準備當作Proxmox 的Storage & Server Backup</p>
<p>因為伺服器的限制,只能接六個SATA,我接了六個2T的硬碟做raid10</p>
<p>因為伺服器的限制,只能接六個SATA,我接了六個2T的硬碟做raid10</p>
<p>然後把Freenas 安裝在隨身碟上</p>
<p>然後把Freenas 安裝在隨身碟上</p>
<p>不過會一直出現Smartd failed to start 的錯誤訊息</p>
<p>不過會一直出現Smartd failed to start 的錯誤訊息</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/smartd-failed-to-start-in-freenas/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/smartd-failed-to-start-in-freenas/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/incredibly-slow-mdadm-rebuild/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/incredibly-slow-mdadm-rebuild/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -499,11 +486,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>因為工作的關係,現在很多時間都花在VIM的操作上</p>
<p>因為工作的關係,現在很多時間都花在VIM的操作上</p>
<p>所以之前花了滿多時間,調整出一個適合自己的VIM環境</p>
<p>所以之前花了滿多時間,調整出一個適合自己的VIM環境</p>
<p>原本的作法是把這個設定好的環境,丟到自己建立的gitea 上面</p>
<p>原本的作法是把這個設定好的環境,丟到自己建立的gitea 上面</p>
<p>然後每到一台新的機器,就要去clone 下來</p>
<p>然後每到一台新的機器,就要去clone 下來</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/create-portable-vim-environment/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/create-portable-vim-environment/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/synology-ds415-repair-cost/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/synology-ds415-repair-cost/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/10g-lab-using-proxmox-and-mellanox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/10g-lab-using-proxmox-and-mellanox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -393,9 +381,7 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>在上一篇 <ahref="https://h.cowbay.org/post/ansible-selectattr/">Ansible how to use ‘list’ in yaml file </a></p>
<p>在上一篇 <ahref="https://h.cowbay.org/post/ansible-selectattr/">Ansible how to use ‘list’ in yaml file </a></p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-selectattr-filter/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-selectattr-filter/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -449,11 +435,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>這幾天在玩ansible 時,碰到一個問題</p>
<p>這幾天在玩ansible 時,碰到一個問題</p>
<p>假如我有個yaml檔作為資料來源,檔名是 abc.yml</p>
<p>假如我有個yaml檔作為資料來源,檔名是 abc.yml</p>
<p>大概長這樣</p>
<p>大概長這樣</p>
<pre><code>"teams": [
<pre><code>"teams": [
{
{
"chinese_name": "TEAM1",
"chinese_name": "TEAM1",
@ -544,11 +527,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>最近在測試metabase,記得幾個月前就有測試過</p>
<p>最近在測試metabase,記得幾個月前就有測試過</p>
<p>但是當時的界面和現在的樣子差很多,看樣子改版還滿勤勞的</p>
<p>但是當時的界面和現在的樣子差很多,看樣子改版還滿勤勞的</p>
<p>所以這次改用docker來建立,根本五分鐘不到就建好了(挖鼻孔)</p>
<p>所以這次改用docker來建立,根本五分鐘不到就建好了(挖鼻孔)</p>
<p>不過呢,很討厭的是,一進去就發現語系採用的是簡體中文</p>
<p>不過呢,很討厭的是,一進去就發現語系採用的是簡體中文</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/change-preferred-language-in-firefox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/change-preferred-language-in-firefox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -602,11 +582,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>因為工作上的需求,有個資料庫需要開放給不同team的人去存取</p>
<p>因為工作上的需求,有個資料庫需要開放給不同team的人去存取</p>
<p>雖然都是在同一台機器上的同一個資料庫</p>
<p>雖然都是在同一台機器上的同一個資料庫</p>
<p>但是希望能夠不同team的人用不同的資料庫使用者</p>
<p>但是希望能夠不同team的人用不同的資料庫使用者</p>
<p>這樣萬一出事,會比較好抓兇手??</p>
<p>這樣萬一出事,會比較好抓兇手??</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/copy_role_in_pgsql/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/copy_role_in_pgsql/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<p>這是發生在一個夜黑風高的寂寥深夜….. ( What The FXXX … )</p>
<p>這是發生在一個夜黑風高的寂寥深夜….. ( What The FXXX … )</p>
<p>來到這個環境之後,有一個很詭異的狀況一直困擾著我</p>
<p>來到這個環境之後,有一個很詭異的狀況一直困擾著我</p>
<p>在每個分公司,都會有一台伺服器作為KVM Host</p>
<p>在每個分公司,都會有一台伺服器作為KVM Host</p>
<p>上面跑兩台VM,一台作為ansible controller (目前沒作用)</p>
<p>上面跑兩台VM,一台作為ansible controller (目前沒作用)</p>
<p>另一台作為這邊所謂的 “Build Server”</p>
<p>另一台作為這邊所謂的 “Build Server”</p>
<p>用途包含了DHCP Server / Proxy Server (squid3) / APT Proxy (squid-deb-proxy)</p>
<p>用途包含了DHCP Server / Proxy Server (squid3) / APT Proxy (squid-deb-proxy)</p>
<p>問題就發生在這台 Build Server 上…</p>
<p>問題就發生在這台 Build Server 上…</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/weird-client-server-connection/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/weird-client-server-connection/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/bookstack-docker/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/bookstack-docker/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/check-port-speed-in-openwrt/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/check-port-speed-in-openwrt/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -397,19 +383,12 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>上禮拜某天在開會的時候,LINE不斷傳來訊息</p>
<p>上禮拜某天在開會的時候,LINE不斷傳來訊息</p>
<p>不過因為我向來開會都很認真(驕傲,所以都沒看,接著就變成來電了</p>
<p>不過因為我向來開會都很認真(驕傲,所以都沒看,接著就變成來電了</p>
<p>看來大概有啥事發生</p>
<p>看來大概有啥事發生</p>
<p>不過畢竟不是正職的工作,就先放著吧</p>
<p>不過畢竟不是正職的工作,就先放著吧</p>
<p>後來變成連學長都直接打來告訴我,某間公司的伺服器出事了,客戶找不到我</p>
<p>後來變成連學長都直接打來告訴我,某間公司的伺服器出事了,客戶找不到我</p>
<p>叫我趕快連進去看</p>
<p>叫我趕快連進去看</p>
<p>是說,啊我又沒跟人家簽維護,趕什麼趕…</p>
<p>是說,啊我又沒跟人家簽維護,趕什麼趕…</p>
<p>總之,開完會後就了解一下狀況</p>
<p>總之,開完會後就了解一下狀況</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/debian-buster-server-been-hacked/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/debian-buster-server-been-hacked/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -463,13 +442,9 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>工作用的電腦,昨天終於難得的reboot了(uptime 看了一下,大概是三百多天)</p>
<p>工作用的電腦,昨天終於難得的reboot了(uptime 看了一下,大概是三百多天)</p>
<p>結果重開機之後,發現原本在打tunnel 連 ptt 的 wireguard VPN 掛掉了</p>
<p>結果重開機之後,發現原本在打tunnel 連 ptt 的 wireguard VPN 掛掉了</p>
<p>手動下指令也啟動不了</p>
<p>手動下指令也啟動不了</p>
<p>查了一下發現是 ubuntu 18.04 kernel 4.15.0-106 的包</p>
<p>查了一下發現是 ubuntu 18.04 kernel 4.15.0-106 的包</p>
<p>看來就連kernel 最好都不要自動升級…</p>
<p>看來就連kernel 最好都不要自動升級…</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-kernel-4-15-0-106-unable-to-start-wireguard-interface/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-kernel-4-15-0-106-unable-to-start-wireguard-interface/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -523,9 +498,7 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>ubuntu 18.04 預設移掉了 /etc/rc.local 的功能</p>
<p>ubuntu 18.04 預設移掉了 /etc/rc.local 的功能</p>
<p>變成要用 systemd 的方式來運作,可是有點難用…</p>
<p>變成要用 systemd 的方式來運作,可是有點難用…</p>
<p>紀錄一下步驟,再來研究怎麼整合到 preseed 裡面</p>
<p>紀錄一下步驟,再來研究怎麼整合到 preseed 裡面</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1804-preseeds/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1804-preseeds/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1404-preseed/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-1404-preseed/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/config-networkmanager-in-ubuntu-to-stop-modify-resolvconf/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/config-networkmanager-in-ubuntu-to-stop-modify-resolvconf/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-it500u-card-reader-in-ubuntu-1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-it500u-card-reader-in-ubuntu-1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -449,11 +435,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>前幾天修復了因為intel cpu bug 導致無法使用的 synology DS415+</p>
<p>前幾天修復了因為intel cpu bug 導致無法使用的 synology DS415+</p>
<p>就來玩玩看promox 加上 synology high availability 再加上 NFS share 的環境</p>
<p>就來玩玩看promox 加上 synology high availability 再加上 NFS share 的環境</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/proxmox-with-synology-high-availability/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/proxmox-with-synology-high-availability/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/first-try-synology-ha/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/first-try-synology-ha/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -569,11 +547,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>昨天老闆在slack 上面問說現在的幾台 DB Server 有沒有跑過 pgbench</p>
<p>昨天老闆在slack 上面問說現在的幾台 DB Server 有沒有跑過 pgbench</p>
<p>分數大概如何,想要跟他的筆電做個比較</p>
<p>分數大概如何,想要跟他的筆電做個比較</p>
<p>之前有跑過幾次,這次就順便測試一下不同的硬體配置、以及不同的軟體版本</p>
<p>之前有跑過幾次,這次就順便測試一下不同的硬體配置、以及不同的軟體版本</p>
<p>對於pgbench 跑分會有多大的影響</p>
<p>對於pgbench 跑分會有多大的影響</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/postgresql-pgbench-benchmark/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/postgresql-pgbench-benchmark/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<p>2020/01/02 , 2020年上工的第一天,群暉的 DS415+ NAS 掛了!</p>
<p>2020/01/02 , 2020年上工的第一天,群暉的 DS415+ NAS 掛了!</p>
<p>因為群暉的文件在最關鍵的一步寫得亂七八糟!</p>
<p>因為群暉的文件在最關鍵的一步寫得亂七八糟!</p>
<p>所以在這邊紀錄一下我操作的步驟!</p>
<p>所以在這邊紀錄一下我操作的步驟!</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/rescue-synology-nas-with-ubuntu-livecd/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/rescue-synology-nas-with-ubuntu-livecd/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/what-a-piss-in-synology-document/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/what-a-piss-in-synology-document/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-get-value-from-loop-register/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-get-value-from-loop-register/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-ssh-forwardagent/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-ssh-forwardagent/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/test-pg_prewarm/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/test-pg_prewarm/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/accidentally-typed-an-extra-space-in-ansible-playbook/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/accidentally-typed-an-extra-space-in-ansible-playbook/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/add-system-wide-favorite-apps-in-dconf/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/add-system-wide-favorite-apps-in-dconf/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-dconf-proxy-settings/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ubuntu-dconf-proxy-settings/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/awesome-all-in-one-vpn-server-streisand/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/awesome-all-in-one-vpn-server-streisand/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -563,7 +544,6 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>這兩天在找關於在 ubuntu 中做搜尋的軟體</p>
<p>這兩天在找關於在 ubuntu 中做搜尋的軟體</p>
<p>意外找到一個非常好用的工具 ulauncher</p>
<p>意外找到一個非常好用的工具 ulauncher</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/recommended-ulauncher-in-ubuntu-1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/recommended-ulauncher-in-ubuntu-1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/pg_auto_failover_in_ubuntu_1804_psql_11/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/pg_auto_failover_in_ubuntu_1804_psql_11/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -441,9 +432,7 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>前面測試了用pgbarman / pgbackrest 來備份 postgresql</p>
<p>前面測試了用pgbarman / pgbackrest 來備份 postgresql</p>
<p>這次改從system file level 來下手</p>
<p>這次改從system file level 來下手</p>
<p>採用zfs 的快照來備份、還原postgresql 資料庫</p>
<p>採用zfs 的快照來備份、還原postgresql 資料庫</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/postgresql-backup-restore-using-zfs-snapshot/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/postgresql-backup-restore-using-zfs-snapshot/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/pgbarman-in-ubuntu-1804-postgresql-10/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/pgbarman-in-ubuntu-1804-postgresql-10/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -383,11 +376,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>因為老闆說要試試看用GPU 來跑postgresql 威力</p>
<p>因為老闆說要試試看用GPU 來跑postgresql 威力</p>
<p>手邊剛好有一張 geforce gt 720</p>
<p>手邊剛好有一張 geforce gt 720</p>
<p>一開始沒想太多,看到有這張卡的驅動程式,然後CUDA也有支援</p>
<p>一開始沒想太多,看到有這張卡的驅動程式,然後CUDA也有支援</p>
<p>就直接從桌機拔下來,接去LAB Server ,然後就開始一連串的難關了…</p>
<p>就直接從桌機拔下來,接去LAB Server ,然後就開始一連串的難關了…</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-nvidia-driver-cuda-pgstrom-in-ubuntu-1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-nvidia-driver-cuda-pgstrom-in-ubuntu-1804/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/do-no-use-10-0-0-0-private-ipaddr-in-gcp/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/do-no-use-10-0-0-0-private-ipaddr-in-gcp/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<p>之前買了兩台edgerouter X 拿來玩了一下 wireguard,感覺還不錯,不過只有測試到點對點</p>
<p>之前買了兩台edgerouter X 拿來玩了一下 wireguard,感覺還不錯,不過只有測試到點對點</p>
<p>這次試試看躲在gateway後面,看看能不能建立多點的VPN環境</p>
<p>這次試試看躲在gateway後面,看看能不能建立多點的VPN環境</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/multiple-site-to-site-vpn-using-wireguard/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/multiple-site-to-site-vpn-using-wireguard/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -567,23 +546,14 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>之前總部和分公司之間 是用buffalo 的小AP 灌 openwrt</p>
<p>之前總部和分公司之間 是用buffalo 的小AP 灌 openwrt</p>
<p>然後用strongswan 來打 IPSEC site to site VPN</p>
<p>然後用strongswan 來打 IPSEC site to site VPN</p>
<p>config 看起來不是很難 (只是看起來)</p>
<p>config 看起來不是很難 (只是看起來)</p>
<p>但是實際上已經找不到當初的文件</p>
<p>但是實際上已經找不到當初的文件</p>
<p>所以要維護很困難(光那些RSA KEY 就不知道為何、如何產生)</p>
<p>所以要維護很困難(光那些RSA KEY 就不知道為何、如何產生)</p>
<p>後來採購了兩台edgerouter X 做測試</p>
<p>後來採購了兩台edgerouter X 做測試</p>
<p>也用openvpn 成功的建立了 site to site VPN</p>
<p>也用openvpn 成功的建立了 site to site VPN</p>
<p>本來想說 openvpn 已經夠簡單了</p>
<p>本來想說 openvpn 已經夠簡單了</p>
<p>今天看到文章說用wireguard 可以更簡單</p>
<p>今天看到文章說用wireguard 可以更簡單</p>
<p>於是研究了一下,發現還真的很簡單!</p>
<p>於是研究了一下,發現還真的很簡單!</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/site-to-site-vpn-using-wireguard-in-two-edgerouters/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/site-to-site-vpn-using-wireguard-in-two-edgerouters/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/another-way-to-keep-ansible-log/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/another-way-to-keep-ansible-log/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -388,19 +378,12 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>最近有個任務,需要大量安裝client</p>
<p>最近有個任務,需要大量安裝client</p>
<p>想用PXE來處理,只要user開機按F12(acer 桌機) 選擇PXE Boot</p>
<p>想用PXE來處理,只要user開機按F12(acer 桌機) 選擇PXE Boot</p>
<p>然後選擇OS版本,就可以自動進行安裝</p>
<p>然後選擇OS版本,就可以自動進行安裝</p>
<p>安裝完成後,會自動重新開機,接著就用ansible來做user環境設定</p>
<p>安裝完成後,會自動重新開機,接著就用ansible來做user環境設定</p>
<p>PXE的部份本來是沒有什麼問題,自動安裝系統的部份都做好了</p>
<p>PXE的部份本來是沒有什麼問題,自動安裝系統的部份都做好了</p>
<p>可是因為這次的量比較多,想說讓每一台在完成PXE安裝後的第一次重開機</p>
<p>可是因為這次的量比較多,想說讓每一台在完成PXE安裝後的第一次重開機</p>
<p>就送出一封郵件來通知我,說已經完成安裝,可以執行ansible 了</p>
<p>就送出一封郵件來通知我,說已經完成安裝,可以執行ansible 了</p>
<p>看似很簡單的一件事情,卻搞了我兩天….</p>
<p>看似很簡單的一件事情,卻搞了我兩天….</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/send-mail-to-notify-after-pxe-install/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/send-mail-to-notify-after-pxe-install/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -454,11 +437,8 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>因為工作上的需要,要修改client端的 /etc/environment 檔案</p>
<p>因為工作上的需要,要修改client端的 /etc/environment 檔案</p>
<p>在有權限使用proxy 服務的user的環境中,加入proxy 的設定</p>
<p>在有權限使用proxy 服務的user的環境中,加入proxy 的設定</p>
<p>原本的清單中,有host/user/ip 這幾個值可以拿來判斷</p>
<p>原本的清單中,有host/user/ip 這幾個值可以拿來判斷</p>
<p>proxy server 那邊是採用ip 來控制,所以這邊也跟著用 ip 來判斷要不要修改 /etc/environment</p>
<p>proxy server 那邊是採用ip 來控制,所以這邊也跟著用 ip 來判斷要不要修改 /etc/environment</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-run-task-depends-on-ipaddr/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-run-task-depends-on-ipaddr/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
@ -512,9 +492,7 @@ if (!doNotTrack) {
<divclass='excerpt-content'>
<divclass='excerpt-content'>
<article>
<article>
<p>在ansible中,關於如何引用自定義的變數,一直讓我很頭疼</p>
<p>在ansible中,關於如何引用自定義的變數,一直讓我很頭疼</p>
<p>尤其是有牽涉到從外部導入yaml檔案時,更是常常讓我不知道到底該怎麼抓出想要的變數</p>
<p>尤其是有牽涉到從外部導入yaml檔案時,更是常常讓我不知道到底該怎麼抓出想要的變數</p>
<p>這次還是用selectattr 來處理,希望下次能夠記得…</p>
<p>這次還是用selectattr 來處理,希望下次能夠記得…</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-selectattr-from-list-in-dictionary/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/ansible-selectattr-from-list-in-dictionary/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/remote-management-system-meshcentral/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/remote-management-system-meshcentral/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<p>storage 選擇QNAP NAS TS-932X + 960G SSD x 4 (raid 10 , NFS) + QNAP 10G Switch QSW-1280C-8C</p>
<p>storage 選擇QNAP NAS TS-932X + 960G SSD x 4 (raid 10 , NFS) + QNAP 10G Switch QSW-1280C-8C</p>
<p>既然storage這邊選用了10G的機種,伺服器上當然也要增加10G網卡</p>
<p>既然storage這邊選用了10G的機種,伺服器上當然也要增加10G網卡</p>
<p>一樣,成本考量,就不用INTEL 了,買了這張 ASUS 10G 網卡</p>
<p>一樣,成本考量,就不用INTEL 了,買了這張 ASUS 10G 網卡</p>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-asus-10g-nic-in-proxmox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/install-asus-10g-nic-in-proxmox/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/change-timezone-in-docker/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/change-timezone-in-docker/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/transfer-file-content-using-xclip-in-terminal/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/transfer-file-content-using-xclip-in-terminal/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/inx-collect-detail-hardware-info/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/inx-collect-detail-hardware-info/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/log-all-bash-commands/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<divclass="more-link-wrapper"><aclass="more-link"href="https://h.cowbay.org/post/log-all-bash-commands/">Read the post<spanclass="screen-reader-text">This is a Standard Post</span></a></div>
<h3id="strongfont-colorred必須作-vmbridge-才能指定這個網卡給vm用-fontstrong"><!-- raw HTML omitted --><!-- raw HTML omitted -->必須作 vmbridge 才能指定這個網卡給VM用 <!-- raw HTML omitted --><!-- raw HTML omitted --></h3>
<h3id="strongfont-colorreddisk-cache-type-要改fontstrong"><!-- raw HTML omitted --><!-- raw HTML omitted -->Disk Cache type 要改<!-- raw HTML omitted --><!-- raw HTML omitted --></h3>
<h3id="strong-font-color-red-disk-cache-type-要改-font-strong"><strong><fontcolor="red">Disk Cache type 要改</font></strong></h3>
<pre><code>kvm: -drive file=/zp/images/100/vm-100-disk-1.qcow2,if=none,id=drive-virtio0,format=qcow2,cache=none,aio=native,detect-zeroes=on: file system may not support O_DIRECT
<pre><code>kvm: -drive file=/zp/images/100/vm-100-disk-1.qcow2,if=none,id=drive-virtio0,format=qcow2,cache=none,aio=native,detect-zeroes=on: file system may not support O_DIRECT
kvm: -drive file=/zp/images/100/vm-100-disk-1.qcow2,if=none,id=drive-virtio0,format=qcow2,cache=none,aio=native,detect-zeroes=on: Could not open '/zp/images/100/vm-100-disk-1.qcow2': Invalid argument
kvm: -drive file=/zp/images/100/vm-100-disk-1.qcow2,if=none,id=drive-virtio0,format=qcow2,cache=none,aio=native,detect-zeroes=on: Could not open '/zp/images/100/vm-100-disk-1.qcow2': Invalid argument
<h3id="strongfont-colorred必須手動設定路由fontstrong"><!-- raw HTML omitted --><!-- raw HTML omitted -->必須手動設定路由<!-- raw HTML omitted --><!-- raw HTML omitted --></h3>
"description" : "\x3cp\x3e在上一篇 \x3ca href=\x22https:\/\/h.cowbay.org\/post\/ansible-selectattr\/\x22\x3eAnsible how to use \x26lsquo;list\x26rsquo; in yaml file \x3c\/a\x3e\x3c\/p\x3e\n\n\x3cp\x3e有提到怎麼用 with_items \/ set_fact 來取得在yaml 檔案中的清單\x3c\/p\x3e\n\n\x3cp\x3e不過就是有點醜\x3c\/p\x3e",
"description" : "\x3cp\x3e在上一篇 \x3ca href=\x22https:\/\/h.cowbay.org\/post\/ansible-selectattr\/\x22\x3eAnsible how to use \x26lsquo;list\x26rsquo; in yaml file \x3c\/a\x3e\x3c\/p\x3e\n\x3cp\x3e有提到怎麼用 with_items \/ set_fact 來取得在yaml 檔案中的清單\x3c\/p\x3e\n\x3cp\x3e不過就是有點醜\x3c\/p\x3e",
<divclass="highlight"><prestyle="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><codeclass="language-yaml"data-lang="yaml">- <spanstyle="color:#66d9ef">name</span>: set dc_users
<pre><codeclass="language-yaml">- name: set dc_users
Tuesday 24 December 2019 14:28:58 +0800 (0:00:00.067) 0:00:00.946 ******
Tuesday 24 December 2019 14:28:58 +0800 (0:00:00.067) 0:00:00.946 ******
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: Exception: b'Error: no DISPLAY environment variable specified\n'
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: Exception: b'Error: no DISPLAY environment variable specified\n'
@ -365,18 +354,11 @@ Shared connection to 192.168.11.75 closed.
PLAY RECAP ***********************************************************************************************************************
PLAY RECAP ***********************************************************************************************************************
[16623.393858] usb 4-1: SerialNumber: DF56419883B20
[16623.393858] usb 4-1: SerialNumber: DF56419883B20
</code></pre>
</code></pre><h4id="直接測試吧">直接測試吧</h4>
<h4id="直接測試吧">直接測試吧</h4>
<p>不看型號了,直接測試吧!先切好分割、格式化,然後掛載到 /mnt,再用 dd 測試寫入
<p>不看型號了,直接測試吧!先切好分割、格式化,然後掛載到 /mnt,再用 dd 測試寫入
結果如下</p>
結果如下</p>
<pre><code>2019-09-10 13:24:03 [minion@hqdc075 ~]$ for i in {4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384};do sudo dd if=/dev/zero of=/mnt/"$i"k bs="$i"k count=1k;done
<pre><code>2019-09-10 13:24:03 [minion@hqdc075 ~]$ for i in {4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384};do sudo dd if=/dev/zero of=/mnt/"$i"k bs="$i"k count=1k;done
<pre><code>The default language for this Metabase instance.This only applies to emails, Pulses, etc. Users' browsers will specify the language used in the user interface.
<pre><code>The default language for this Metabase instance.This only applies to emails, Pulses, etc. Users' browsers will specify the language used in the user interface.
<divclass="highlight"><prestyle="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><codeclass="language-shell"data-lang="shell">swconfig dev switch0 show
<pre><codeclass="language-shell">swconfig dev switch0 show
<divclass="highlight"><prestyle="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><codeclass="language-shell"data-lang="shell">root@OpenWrt-15:~# swconfig dev switch0 show
<p>所以在有問題的那台機器跑一次,結果就發現了port0 的連線速度只有100BaseT</p>
<pre><codeclass="language-shell">root@OpenWrt-15:~# swconfig dev switch0 show
<p>Dev_A upload to google drive —> Dev_B Download from google drive —> Dev_B scp download file to me —> I upload to server.</p>
<p>Dev_A upload to google drive —> Dev_B Download from google drive —> Dev_B scp download file to me —> I upload to server.</p>
<description><p>在上一篇 <a href="https://h.cowbay.org/post/ansible-selectattr/">Ansible how to use &lsquo;list&rsquo; in yaml file </a></p>
<description><p>在上一篇 <a href="https://h.cowbay.org/post/ansible-selectattr/">Ansible how to use &lsquo;list&rsquo; in yaml file </a></p>
<pre><code>PG-Strom module must be loaded on startup of the postmaster process by the shared_preload_libraries. Unable to load it on demand. Therefore, you must add the configuration below.
<pre><code>PG-Strom module must be loaded on startup of the postmaster process by the shared_preload_libraries. Unable to load it on demand. Therefore, you must add the configuration below.
Aug 20 14:23:43 hqdc032 postgresql@11-main[11801]: 2019-08-20 14:23:43.538 CST [11806] LOG: PG-Strom version 2.2 built for PostgreSQL 11
Aug 20 14:23:43 hqdc032 postgresql@11-main[11801]: 2019-08-20 14:23:43.538 CST [11806] LOG: PG-Strom version 2.2 built for PostgreSQL 11
Aug 20 14:23:43 hqdc032 postgresql@11-main[11801]: 2019-08-20 14:23:43.565 CST [11806] LOG: PG-Strom: GPU0 GeForce GT 720 - CC 3.5 is not supported
Aug 20 14:23:43 hqdc032 postgresql@11-main[11801]: 2019-08-20 14:23:43.565 CST [11806] LOG: PG-Strom: GPU0 GeForce GT 720 - CC 3.5 is not supported
@ -553,18 +466,11 @@ Aug 20 14:23:43 hqdc032 postgresql@11-main[11801]: Examine the log output.
Aug 20 14:23:43 hqdc032 systemd[1]: postgresql@11-main.service: Can't open PID file /run/postgresql/11-main.pid (yet?) after start: No such file or directory
Aug 20 14:23:43 hqdc032 systemd[1]: postgresql@11-main.service: Can't open PID file /run/postgresql/11-main.pid (yet?) after start: No such file or directory
Aug 20 14:23:43 hqdc032 systemd[1]: postgresql@11-main.service: Failed with result 'protocol'.
Aug 20 14:23:43 hqdc032 systemd[1]: postgresql@11-main.service: Failed with result 'protocol'.
Aug 20 14:23:43 hqdc032 systemd[1]: Failed to start PostgreSQL Cluster 11-main.
Aug 20 14:23:43 hqdc032 systemd[1]: Failed to start PostgreSQL Cluster 11-main.
<divclass="highlight"><prestyle="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><codeclass="language-YAML"data-lang="YAML"><spanstyle="color:#75715e">######### use inxi instead ##################</span>
<pre><codeclass="language-YAML">######### use inxi instead ##################
- <spanstyle="color:#66d9ef">name</span>: copy inxi binary to remote Ubnutu/Debian
<p>if want to add more nodes into VPN , just follow the logic and steps.</p>
<p>if want to add more nodes into VPN , just follow the logic and steps.</p>
<pre><code>create private/public key
<pre><code>create private/public key
create wg0.conf
create wg0.conf
add new nodes in every other nodes wg0.conf as peer
add new nodes in every other nodes wg0.conf as peer
</code></pre>
</code></pre><ol>
<ol>
<li>for route , must add remote network in AllowedIPs</li>
<li>for route , must add remote network in AllowedIPs</li>
<li>check ip_forward is enable</li>
<li>check ip_forward is enable</li>
<li>I think the postup haws no effect here , because the firewall service was disable by default , and if I use iptables -F to flush all firewall rules , the network still remain in connected.</li>
<li>I think the postup haws no effect here , because the firewall service was disable by default , and if I use iptables -F to flush all firewall rules , the network still remain in connected.</li>
<li>need to create an ansible playbook for this</li>
<li>need to create an ansible playbook for this</li>
</ol>
</ol>
<h4id="update">Update</h4>
<h4id="update">Update</h4>
<h5id="strongswan-ipsec-vs-wireguard">strongswan IPSEC VS wireguard</h5>
<h5id="strongswan-ipsec-vs-wireguard">strongswan IPSEC VS wireguard</h5>
<p><strong>wireguard almost twice faster than strongswan</strong></p>
<p><strong>wireguard almost twice faster than strongswan</strong></p>
<p>iperf test with wireguard VPN 30 seconds benchmark</p>
<p>iperf test with wireguard VPN 30 seconds benchmark</p>
07:21:33 INFO Managing PostgreSQL installation at "/var/lib/postgresql/11/main"
07:21:33 INFO Managing PostgreSQL installation at "/var/lib/postgresql/11/main"
07:21:33 INFO The version of extenstion "pgautofailover" is "1.0" on the monitor
07:21:33 INFO The version of extenstion "pgautofailover" is "1.0" on the monitor
@ -545,10 +464,7 @@ pg_basebackup: base backup completed
07:21:33 INFO Transition complete: current state is now "secondary"
07:21:33 INFO Transition complete: current state is now "secondary"
07:21:34 INFO Calling node_active for node default/2/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
07:21:34 INFO Calling node_active for node default/2/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
07:21:39 INFO Calling node_active for node default/2/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
07:21:39 INFO Calling node_active for node default/2/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
</code></pre>
</code></pre><p>開新視窗確認狀態</p>
<p>開新視窗確認狀態</p>
<pre><code>2019-09-19 07:22:03 [administrator@pg-slave ~]$ sudo runuser -l postgres -c "pg_autoctl show state --pgdata /var/lib/postgresql/11/main"
<pre><code>2019-09-19 07:22:03 [administrator@pg-slave ~]$ sudo runuser -l postgres -c "pg_autoctl show state --pgdata /var/lib/postgresql/11/main"
Name | Port | Group | Node | Current State | Assigned State
Name | Port | Group | Node | Current State | Assigned State
<pre><code>03:06:02 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
<pre><code>03:06:02 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
03:06:08 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
03:06:08 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
03:06:13 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
03:06:13 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
@ -721,10 +604,7 @@ postgres=#
03:06:33 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is -1.
03:06:33 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is -1.
03:06:38 ERROR PostgreSQL cannot reach the primary server: the system view pg_stat_wal_receiver has no rows.
03:06:38 ERROR PostgreSQL cannot reach the primary server: the system view pg_stat_wal_receiver has no rows.
03:06:38 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is -1.
03:06:38 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is -1.
11:12:29 INFO Managing PostgreSQL installation at "/var/lib/postgresql/11/main"
11:12:29 INFO Managing PostgreSQL installation at "/var/lib/postgresql/11/main"
11:12:29 INFO The version of extenstion "pgautofailover" is "1.0" on the monitor
11:12:29 INFO The version of extenstion "pgautofailover" is "1.0" on the monitor
@ -814,12 +691,8 @@ pg_basebackup: base backup completed
11:12:53 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
11:12:53 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
11:12:58 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
11:12:58 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
11:13:03 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
11:13:03 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
<pre><code>03:12:34 INFO Calling node_active for node default/4/0 with current state: wait_primary, PostgreSQL is running, sync_state is "async", WAL delta is 0.
<pre><code>03:12:34 INFO Calling node_active for node default/4/0 with current state: wait_primary, PostgreSQL is running, sync_state is "async", WAL delta is 0.
03:12:39 INFO Calling node_active for node default/4/0 with current state: wait_primary, PostgreSQL is running, sync_state is "async", WAL delta is 0.
03:12:39 INFO Calling node_active for node default/4/0 with current state: wait_primary, PostgreSQL is running, sync_state is "async", WAL delta is 0.
03:12:45 INFO Calling node_active for node default/4/0 with current state: wait_primary, PostgreSQL is running, sync_state is "async", WAL delta is 0.
03:12:45 INFO Calling node_active for node default/4/0 with current state: wait_primary, PostgreSQL is running, sync_state is "async", WAL delta is 0.
@ -829,12 +702,8 @@ pg_basebackup: base backup completed
03:12:50 INFO Transition complete: current state is now "primary"
03:12:50 INFO Transition complete: current state is now "primary"
03:12:50 INFO Calling node_active for node default/4/0 with current state: primary, PostgreSQL is running, sync_state is "sync", WAL delta is 0.
03:12:50 INFO Calling node_active for node default/4/0 with current state: primary, PostgreSQL is running, sync_state is "sync", WAL delta is 0.
03:12:55 INFO Calling node_active for node default/4/0 with current state: primary, PostgreSQL is running, sync_state is "sync", WAL delta is 0.
03:12:55 INFO Calling node_active for node default/4/0 with current state: primary, PostgreSQL is running, sync_state is "sync", WAL delta is 0.
<pre><code>Sep 20 14:59:34 pg-primary systemd[1]: Started pg_auto_failover.
<pre><code>Sep 20 14:59:34 pg-primary systemd[1]: Started pg_auto_failover.
Sep 20 14:59:34 pg-primary pg_autoctl[7817]: 14:59:34 INFO Managing PostgreSQL installation at "/var/lib/postgresql/11/main"
Sep 20 14:59:34 pg-primary pg_autoctl[7817]: 14:59:34 INFO Managing PostgreSQL installation at "/var/lib/postgresql/11/main"
Sep 20 14:59:34 pg-primary pg_autoctl[7817]: 14:59:34 INFO Found a stale pidfile at "/tmp/pg_autoctl/var/lib/postgresql/11/main/pg_autoctl.pid"
Sep 20 14:59:34 pg-primary pg_autoctl[7817]: 14:59:34 INFO Found a stale pidfile at "/tmp/pg_autoctl/var/lib/postgresql/11/main/pg_autoctl.pid"
Sep 20 15:04:42 pg-primary pg_autoctl[7817]: 15:04:42 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
Sep 20 15:04:42 pg-primary pg_autoctl[7817]: 15:04:42 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
Sep 20 15:04:47 pg-primary pg_autoctl[7817]: 15:04:47 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
Sep 20 15:04:47 pg-primary pg_autoctl[7817]: 15:04:47 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
Sep 20 15:04:52 pg-primary pg_autoctl[7817]: 15:04:52 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
Sep 20 15:04:52 pg-primary pg_autoctl[7817]: 15:04:52 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
15:14:22 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
15:14:22 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
15:14:27 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
15:14:27 INFO Calling node_active for node default/1/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 0.
@ -1101,10 +920,7 @@ sudo service pgautofailover restart
15:16:39 WARN Smart shutdown: received signal Terminated
15:16:39 WARN Smart shutdown: received signal Terminated
15:16:39 INFO pg_autoctl service stopping
15:16:39 INFO pg_autoctl service stopping
2019-09-20 15:23:29 [administrator@pg-primary ~]$
2019-09-20 15:23:29 [administrator@pg-primary ~]$
</code></pre>
</code></pre><p>可是我的服務活著啊!</p>
<p>可是我的服務活著啊!</p>
<pre><code>2019-09-20 15:23:29 [administrator@pg-primary ~]$ sudo service pgautofailover status
<pre><code>2019-09-20 15:23:29 [administrator@pg-primary ~]$ sudo service pgautofailover status
Sep 20 07:25:32 pg-slave pg_autoctl[5840]: 07:25:32 INFO Calling node_active for node default/4/0 with current state: primary, PostgreSQL is running, sync_state is "sync", WAL delta is 0.
Sep 20 07:25:32 pg-slave pg_autoctl[5840]: 07:25:32 INFO Calling node_active for node default/4/0 with current state: primary, PostgreSQL is running, sync_state is "sync", WAL delta is 0.
17:27:13 INFO Calling node_active for node default/1/0 with current state: primary, PostgreSQL is running, sync_state is "sync", WAL delta is 0.
17:27:13 INFO Calling node_active for node default/1/0 with current state: primary, PostgreSQL is running, sync_state is "sync", WAL delta is 0.
17:27:18 INFO Calling node_active for node default/1/0 with current state: primary, PostgreSQL is running, sync_state is "sync", WAL delta is 0.
17:27:18 INFO Calling node_active for node default/1/0 with current state: primary, PostgreSQL is running, sync_state is "sync", WAL delta is 0.
17:31:04 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 320.
17:31:04 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 320.
17:31:09 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 320.
17:31:09 INFO Calling node_active for node default/4/0 with current state: secondary, PostgreSQL is running, sync_state is "", WAL delta is 320.
2019-09-20 17:31:13 [administrator@pg-slave ~]$
2019-09-20 17:31:13 [administrator@pg-slave ~]$
</code></pre>
</code></pre><p>搞定,收工!準備寫 ansible playbook!</p>
<hr>
<p>搞定,收工!準備寫 ansible playbook!</p>
<hr/>
<p>UPDATE</p>
<p>UPDATE</p>
<p>新增用logrotate 來管理 pgautofailover logfile</p>
<p>新增用logrotate 來管理 pgautofailover logfile</p>
<pre><code>sudo vim /etc/logrotate.d/pgautofailover
<pre><code>sudo vim /etc/logrotate.d/pgautofailover
<pre><code>On a general basis, starting from Barman 2.0, backup over streaming replication is the recommended setup for PostgreSQL 9.4 or higher
<pre><code>On a general basis, starting from Barman 2.0, backup over streaming replication is the recommended setup for PostgreSQL 9.4 or higher
The reason why we recommend streaming backup is that, based on our experience, it is easier to setup than the traditional one
The reason why we recommend streaming backup is that, based on our experience, it is easier to setup than the traditional one
</code></pre>
</code></pre><p>事實上呢,設定的確是很簡單,可是有個致命的缺點</p>
<p>事實上呢,設定的確是很簡單,可是有個致命的缺點</p>
<pre><code>Because Barman transparently makes use of pg_basebackup, features such as incremental backup, parallel backup, deduplication, and network compression are currently not available. In this case, bandwidth limitation has some restrictions - compared to the traditional method via rsync.
<pre><code>Because Barman transparently makes use of pg_basebackup, features such as incremental backup, parallel backup, deduplication, and network compression are currently not available. In this case, bandwidth limitation has some restrictions - compared to the traditional method via rsync.
<pre><code>postgres@hqdc034:~$ psql -c 'with aa as ( select * from generate_series (1,1000000) a ) insert into test select aa.a, md5(aa.a::varchar) from aa;'
<pre><code>postgres@hqdc034:~$ psql -c 'with aa as ( select * from generate_series (1,1000000) a ) insert into test select aa.a, md5(aa.a::varchar) from aa;'
INSERT 0 1000000
INSERT 0 1000000
postgres@hqdc034:~$ psql -c 'select count(*) from test;'
postgres@hqdc034:~$ psql -c 'select count(*) from test;'
<pre><code>postgres@hqdc034:~$ time psql -c 'with aa as ( select * from generate_series (1,1000000) a ) insert into test select aa.a, md5(aa.a::varchar) from aa;'
<pre><code>postgres@hqdc034:~$ time psql -c 'with aa as ( select * from generate_series (1,1000000) a ) insert into test select aa.a, md5(aa.a::varchar) from aa;'
<pre><code>postgres@hqdc034:~$ time psql -c 'with aa as ( select * from generate_series (1,8000000) a ) insert into test select aa.a, md5(aa.a::varchar) from aa;'
<pre><code>postgres@hqdc034:~$ time psql -c 'with aa as ( select * from generate_series (1,8000000) a ) insert into test select aa.a, md5(aa.a::varchar) from aa;'
<pre><code>postgres@hqdc034:~$ time psql -c 'with aa as ( select * from generate_series (1,8000000) a ) insert into test select aa.a, md5(aa.a::varchar) from aa;'
<pre><code>postgres@hqdc034:~$ time psql -c 'with aa as ( select * from generate_series (1,8000000) a ) insert into test select aa.a, md5(aa.a::varchar) from aa;'
"name" : "[筆記] postgresql 效能測試 \/ postgresql benchmakr using pgbench",
"name" : "[筆記] postgresql 效能測試 \/ postgresql benchmakr using pgbench",
"headline" : "[筆記] postgresql 效能測試 \/ postgresql benchmakr using pgbench",
"headline" : "[筆記] postgresql 效能測試 \/ postgresql benchmakr using pgbench",
"description" : "\x3cp\x3e昨天老闆在slack 上面問說現在的幾台 DB Server 有沒有跑過 pgbench\x3c\/p\x3e\n\n\x3cp\x3e分數大概如何,想要跟他的筆電做個比較\x3c\/p\x3e\n\n\x3cp\x3e之前有跑過幾次,這次就順便測試一下不同的硬體配置、以及不同的軟體版本\x3c\/p\x3e\n\n\x3cp\x3e對於pgbench 跑分會有多大的影響\x3c\/p\x3e",
"description" : "\x3cp\x3e昨天老闆在slack 上面問說現在的幾台 DB Server 有沒有跑過 pgbench\x3c\/p\x3e\n\x3cp\x3e分數大概如何,想要跟他的筆電做個比較\x3c\/p\x3e\n\x3cp\x3e之前有跑過幾次,這次就順便測試一下不同的硬體配置、以及不同的軟體版本\x3c\/p\x3e\n\x3cp\x3e對於pgbench 跑分會有多大的影響\x3c\/p\x3e",
"name" : "[筆記] 在edgerouter上用wireguard 建立site to site VPN \/ Site to Site Vpn Using Wireguard in Two Edgerouters",
"name" : "[筆記] 在edgerouter上用wireguard 建立site to site VPN \/ Site to Site Vpn Using Wireguard in Two Edgerouters",
"headline" : "[筆記] 在edgerouter上用wireguard 建立site to site VPN \/ Site to Site Vpn Using Wireguard in Two Edgerouters",
"headline" : "[筆記] 在edgerouter上用wireguard 建立site to site VPN \/ Site to Site Vpn Using Wireguard in Two Edgerouters",
"description" : "\x3cp\x3e之前總部和分公司之間 是用buffalo 的小AP 灌 openwrt\x3c\/p\x3e\n\n\x3cp\x3e然後用strongswan 來打 IPSEC site to site VPN\x3c\/p\x3e\n\n\x3cp\x3econfig 看起來不是很難 (只是看起來)\x3c\/p\x3e\n\n\x3cp\x3e但是實際上已經找不到當初的文件\x3c\/p\x3e\n\n\x3cp\x3e所以要維護很困難(光那些RSA KEY 就不知道為何、如何產生)\x3c\/p\x3e\n\n\x3cp\x3e後來採購了兩台edgerouter X 做測試\x3c\/p\x3e\n\n\x3cp\x3e也用openvpn 成功的建立了 site to site VPN\x3c\/p\x3e\n\n\x3cp\x3e本來想說 openvpn 已經夠簡單了\x3c\/p\x3e\n\n\x3cp\x3e今天看到文章說用wireguard 可以更簡單\x3c\/p\x3e\n\n\x3cp\x3e於是研究了一下,發現還真的很簡單!\x3c\/p\x3e",
"description" : "\x3cp\x3e之前總部和分公司之間 是用buffalo 的小AP 灌 openwrt\x3c\/p\x3e\n\x3cp\x3e然後用strongswan 來打 IPSEC site to site VPN\x3c\/p\x3e\n\x3cp\x3econfig 看起來不是很難 (只是看起來)\x3c\/p\x3e\n\x3cp\x3e但是實際上已經找不到當初的文件\x3c\/p\x3e\n\x3cp\x3e所以要維護很困難(光那些RSA KEY 就不知道為何、如何產生)\x3c\/p\x3e\n\x3cp\x3e後來採購了兩台edgerouter X 做測試\x3c\/p\x3e\n\x3cp\x3e也用openvpn 成功的建立了 site to site VPN\x3c\/p\x3e\n\x3cp\x3e本來想說 openvpn 已經夠簡單了\x3c\/p\x3e\n\x3cp\x3e今天看到文章說用wireguard 可以更簡單\x3c\/p\x3e\n\x3cp\x3e於是研究了一下,發現還真的很簡單!\x3c\/p\x3e",
(Reading database ... 37024 files and directories currently installed.)
(Reading database ... 37024 files and directories currently installed.)
@ -346,105 +327,60 @@ Adding 'diversion of /opt/vyatta/share/perl5/Vyatta/Interface.pm to /opt/vyatta/
Adding 'diversion of /opt/vyatta/share/vyatta-cfg/templates/firewall/options/mss-clamp/interface-type/node.def to /opt/vyatta/share/vyatta-cfg/templates/firewall/options/mss-clamp/interface-type/node.def.vyatta by wireguard'
Adding 'diversion of /opt/vyatta/share/vyatta-cfg/templates/firewall/options/mss-clamp/interface-type/node.def to /opt/vyatta/share/vyatta-cfg/templates/firewall/options/mss-clamp/interface-type/node.def.vyatta by wireguard'
Unpacking wireguard (0.0.20190702-1) ...
Unpacking wireguard (0.0.20190702-1) ...
Setting up wireguard (0.0.20190702-1) ...
Setting up wireguard (0.0.20190702-1) ...
</code></pre>
</code></pre><h4id="generate-privatepublic-key-in-left-router">generate private/public key in left router</h4>
<h4id="generate-private-public-key-in-left-router">generate private/public key in left router</h4>
<pre><code>wg genkey | tee /dev/tty | wg pubkey
<pre><code>wg genkey | tee /dev/tty | wg pubkey
</code></pre>
</code></pre><p>first one in private key and the next one is public key of this router</p>
<p>first one in private key and the next one is public key of this router</p>
</code></pre><h3id="need-more-edgerouter-and-lease-line-to-try-multiple-site-to-site-vpn-using-wideguard">need more edgerouter and lease line to try multiple site to site VPN using wideguard</h3>
<h3id="need-more-edgerouter-and-lease-line-to-try-multiple-site-to-site-vpn-using-wideguard">need more edgerouter and lease line to try multiple site to site VPN using wideguard</h3>
<h5id="need-to-study-about-allowed-ips">need to study about allowed-ips</h5>
<h5id="need-to-study-about-allowed-ips">need to study about allowed-ips</h5>
<h3id="sort-out-scripts">sort out scripts</h3>
<h3id="sort-out-scripts">sort out scripts</h3>
<h5id="left-router">left router</h5>
<h5id="left-router">left router</h5>
<pre><code>wg genkey | tee /dev/tty | wg pubkey
<pre><code>wg genkey | tee /dev/tty | wg pubkey
QGAUHJSDFAdkfjskdjo1DP8H1NuLTrXH6kue6kphaQk/iAkc=
QGAUHJSDFAdkfjskdjo1DP8H1NuLTrXH6kue6kphaQk/iAkc=
ta+GJCWNUHJSDFAdkfjskdjnkppY5FpsIs3a8dc4oArtV8FU=
ta+GJCWNUHJSDFAdkfjskdjnkppY5FpsIs3a8dc4oArtV8FU=
@ -502,10 +429,7 @@ set firewall name WAN_LOCAL rule 40 destination port 51820
<pre><code>RAID 1 is pure mirroring. No matter how many drives you add to RAID 1, the size never increases. What you increase is how many drives can fail and how good your read performance is.
<pre><code>RAID 1 is pure mirroring. No matter how many drives you add to RAID 1, the size never increases. What you increase is how many drives can fail and how good your read performance is.
</code></pre>
</code></pre><p>所以,在原地擴充現有的mirror 空間不可行!</p>
<p>所以,在原地擴充現有的mirror 空間不可行!</p>
<p>下一招,擴充不可行,那我改raid type 可以吧??</p>
<p>下一招,擴充不可行,那我改raid type 可以吧??</p>
<!-- raw HTML omitted -->
<hr>
<h3id="convert-raid1-to-raid5">convert raid1 to raid5</h3>
<h3id="convert-raid1-to-raid5">convert raid1 to raid5</h3>
Error determining zone_id: 6003 Invalid request headers. Please confirm that you have supplied valid Cloudflare API credentials. (Did you copy your entire API key?)
Error determining zone_id: 6003 Invalid request headers. Please confirm that you have supplied valid Cloudflare API credentials. (Did you copy your entire API key?)
</code></pre>
</code></pre><p>那就是cloudflare API 那邊的權限設定錯了,我就是在這邊卡很久…</p>
<p>那就是cloudflare API 那邊的權限設定錯了,我就是在這邊卡很久…</p>