初心易得,始終難守
C'est la vie.© 2002 - 2025
  • 我是誰-Who Am I
  • 我在哪-Where Am I
  • 我是什麼-What Am I
  • 年鑑-YearBook
    • 二零零六年终总结
    • 一吻定情—二零零八年年终总结
    • 突如其来的明天—二零零九年年终总结
    • 人生大起大落得太快——二零一零年年终总结
    • 贰零①①年年终总结-女朋友已经成家了
    • 贰零壹贰年年终总结-奔波的肿瘤
    • 贰零壹叁年年终总结
    • 雪字怎么写-贰零壹肆年年终总结
    • 每个不曾表白的今天,都是对青春的亏欠-贰零壹伍年年终总结
    • 按部就班的IT 人生-貳零貳肆年年終總結
  • 連結
RSS
7 月 23 日, 2024 年

Compile latest redis on Amazon Linux 2023 and configure with systemd

Ken Tech 0 Comments

因為AL2023 默認repo內只有redis6 沒有redis7,所以很多人都希望可以自行安裝redis7,但編譯安裝後主要的問題是無法自啟動,本文主要解決自啟動的問題。

獲取並安裝必要的組件:

dnf install openssl-devel gcc tcl systemd-devel -y
wget http://download.redis.io/redis-stable.tar.gz
tar zxf redis-stable.tar.gz
cd redis-stable

compile 時需要加入systemd的支持:

make BUILD_TLS=yes USE_SYSTEMD=yes
make test
make install

編輯一下默認的配置文件:

vi redis.conf

pidfile /var/run/redis/redis_6379.pid
dir /var/db/redis

cp redis.conf /etc/

添加必要的OS level user

groupadd redis
useradd -g redis redis

edit the amazon linux version redis6 startup service file and copy to /etc/systemd/system/redis.service:

—我是分割線—

[Unit]
Description=Redis persistent key-value database
After=network.target
After=network-online.target
Wants=network-online.target
[Service]
ExecStart=/usr/local/bin/redis-server /etc/redis.conf --daemonize no --supervised systemd
ExecStop=/usr/libexec/redis-shutdown
Type=notify
User=redis
Group=redis
RuntimeDirectory=redis
RuntimeDirectoryMode=0755
[Install]
WantedBy=multi-user.target

—我是分割線—

edit the amazon linux version redis6 shutdown script and copy to /usr/libexec/redis-shutdown:

—我是分割線—

#!/usr/bin/bash
#
# Wrapper to close properly redis and sentinel
test x"$REDIS_DEBUG" != x && set -x
REDIS_CLI=/usr/local/bin/redis-cli
# Retrieve service name
SERVICE_NAME="$1"
if [ -z "$SERVICE_NAME" ]; then
   SERVICE_NAME=redis
fi
# Get the proper config file based on service name
CONFIG_FILE="/etc/$SERVICE_NAME.conf"
# Use awk to retrieve host, port from config file
HOST=`awk '/^[[:blank:]]*bind/ { print $2 }' $CONFIG_FILE | tail -n1`
PORT=`awk '/^[[:blank:]]*port/ { print $2 }' $CONFIG_FILE | tail -n1`
PASS=`awk '/^[[:blank:]]*requirepass/ { print $2 }' $CONFIG_FILE | tail -n1`
SOCK=`awk '/^[[:blank:]]*unixsocket\s/ { print $2 }' $CONFIG_FILE | tail -n1`
# Just in case, use default host, port
HOST=${HOST:-127.0.0.1}
if [ "$SERVICE_NAME" = redis ]; then
    PORT=${PORT:-6379}
else
    PORT=${PORT:-26739}
fi
# Setup additional parameters
# e.g password-protected redis instances
[ -z "$PASS"  ] || ADDITIONAL_PARAMS="-a $PASS"
# shutdown the service properly
if [ -e "$SOCK" ] ; then
    $REDIS_CLI -s $SOCK $ADDITIONAL_PARAMS shutdown
else
    $REDIS_CLI -h $HOST -p $PORT $ADDITIONAL_PARAMS shutdown
fi

—我是分割線—

chmod 755 /usr/libexec/redis-shutdown

reboot instance to test and enjoy!

7 月 15 日, 2024 年

傳統的刮鬚刀

Ken 随笔 0 Comments

帶過來的吉列鋒隱刀片不知道放去了哪裡,怎麼找也找不到,上Pchome看了一下,一個刀片居然要價一百多塊,也是,淘寶上都是經銷商的水貨,或是跨區域攛貨的價格,Pchome根本拼不贏,但問題是這個長期成本到底算起來還是貴的。

所以我尋覓了一下傳統刮鬚刀,買了兩隻,一隻金色,一隻銀色。

刀片的選擇就各國爭鮮鬥豔了,德國的,俄國的,美國的,先選了十片俄國的,看看效果如何,傳統刀片大約十五到二十塊一片,就算每個月換一片,一年也才差不多吉列一個刀片的價格,但吉列的刀片只能用三個月左右,一年的成本是四百塊到五百塊,傳統刀片成本大約是一半。

好了,以上是買買買的理由,兩個刀頭花了三千塊。那也就是說,每年的刀片差價為二百五十塊,需要十年才能把刀頭的價格賺回來,除非刀片可以使用超過一個月,如果可以達到吉列五層刀片的三個月時長就能更快回本。

上一次見到這刀片,還是外公還在世的時候,我去他家看到的,這一轉眼,已經快要三十年了吧。

HHKB用得尚好,可能因為他和Mac鍵盤區別並不大,習慣了Windows鍵盤的人可能需要時間來適應,不過他的位置比MagicKeyboard要高那麼一點點,還是要去買個手托才行。

下午終於在辦公室見到了Lannie,我就覺得這妹紙很眼熟,但是一下子又沒想起來是誰,等她走過去才想起來,我這記憶力缺失有點嚴重,眼熟是因為只在公司的宣傳影片中見過她,雖然通話了很多次,但從沒見過真人。

還有一個妹紙叫Judy,之所以會注意到她是因為她走路的步伐,其他人的步伐都是穩穩的踩在地上,或是輕輕踩在地板上,或是像Sonia一樣直接風一般咚咚咚跑過去,只有Judy的步伐,像是踩在棉花上要走著走著快要倒下去的感覺,使得我總是升高了Alert,幾次之後就發現,是她,
就是她。

7 月 12 日, 2024 年

UPS跳閘

Ken 随笔 0 Comments

租的這間房位置很好,每天上午窗邊都會有直直落下的陽光,但是我的ups自從裝上後就時不時的跳閘,上面的警示燈也一直亮著,ups的說明書上並沒有說明警示燈亮著可能的原因是什麼,只是說讓召喚專業電工師傅來查看。我覺得這可能是因為房東男主人自己把房間裡面的線路重新拉過,因為房東女主人講起這件事情的時候並沒有表現出自豪感,我深深的懷疑可能是地線沒有接地,所以我用電筆測了一下。

火線110v
中性線/零線55v
地線12v

這他媽的到底是接地了還是沒接地啊?

ups跳閘倒並不那麼嚴重,因為他很快就跳了回去,並沒有進入電池低容量狀態,觸發NAS關機,然而,最近兩天不知道為什麽NAS關機了兩次,我以為是NAS的boot volume又掛了,拆開檢查了一遍,重新啟動沒有發現任何日誌記錄,反反覆覆查看日誌,發現是ups觸發了關機。

APC 650M1的這款ups 是在台灣可以買到支持通過數據訊號自動關機價格最低的入門款,但是他和在中國銷售的型號不太一樣,我之前在中國使用的型號是BK650,也許是usb driver 有所不同?所以我把FreeNAS裡面的usb driver 換了一個,運行了幾天,似乎沒有再出問題,當然,根本原因也許只是usb 線鬆了,就像最近的群組裡面大家已經開始在懷疑數據中心的溫度和濕度對於網路丟包的影響。

從日本亞馬遜買的hhkb終於到手,一共三萬日圓,其實比淘寶還貴了,這是因為中國的官方代理在淘寶上似乎偷偷把日本的官方翻新機當作全新機賣,我對此有一些疑慮,所以才直接從日本買。

還好,並沒有很驚艷的感覺,大概是因為我二十幾年前第一個keyboard就是acer的機械鍵盤而不是現在的這些薄膜鍵盤,機械鍵盤現在的價格真是莫名其妙,acer還沒倒閉,居然還在生產超級本。

7 月 10 日, 2024 年

天龍國夏季的天氣總是會有午後雷陣雨,像極了花都的天氣

Ken 随笔 0 Comments

AL2023 真難用,不知道研發團隊是怎麼想的,常用套件,沒有,有的吧,還很舊,然後明年AL2就要EOL,我感覺這不是要逼著客人換AL2023,這是要逼著客人換其他的OS,不如大膽的預測一下,明年AL2會繼續推遲EOL時間,直到AL2023上形成足夠豐富的軟體套件。

但是我仔細看了一下官方文件,發現文件在暗示EL9的軟體都可以用,我試了幾個,確實如此。

下午和Alex 聊了一會兒,原來他一直在竹科晶片行業,能跑馬拉松的人我是很敬佩的,42公里我是斷然拒絕的,騎車也不行,在帝都的時候騎車好像最多也是騎過40公里,上午兩小時下午兩小時,好像後面兩天都腿酸得不行。

Catherine 真是很八卦,逢人就說我說她像明星,還擔心我說的是不漂亮的明星,我是沒說她又胖了,瘦下來才比較像陳嘉玲,不過她貌似對藍綠議題很敏感,我說中配她要陸配,雖然我並不持有什麼立場態度,但某些詞彙確實是很好的試探,不是讓藍的生氣,就是讓綠的生氣,哈哈哈。

公司新來了一批CS和SE,然後Manager 們組織了一個迎新的活動,我也算是新人,第一個活動是牆壁上掛滿了寫著我們各自名字的卡片,而卡片背後是另外一個人的描述,這些描述是上個星期由CS manager Ines 發出來的表單收集的。

我拿到了Maeve 的卡片,Jenny 拿到了我的卡片,Claire 一開場就跑過來問我她的卡片背面寫的是不是我,我看了一下上面寫的是來公司六年,看來在Claire眼裡我年紀很大。

Maeve 是和我一起進公司新人培訓認識的,她在Deployment ,我知道她的愛好是戶外,爬山,但是我拿到的卡片上寫著一個人去爬了富士山我還真沒想到是她,因為我覺得這也太慘了,孤獨的十級境界裡面,這應該要算七八級,不符合她大大咧咧的性格,不過回想起新人培訓時她要強的性格,也許是我理解不正確。

Jenny拿到了我的卡片,想要表現出她對水草的興趣,但其實我還沒在天龍國開始養水草,我現在比較擔心有地震,魚缸會掉下來。

Claire,則像極了十幾年前,琦姐剛到公司的時候,那種充滿自信但又帶著初出社會的懵懂,她直接趴在地上棒式的時候,我第一時間在想棒式是什麼,好吧,這暴露了我的身分,但是我沒有問別人,而是事後查了一下,原來是plank,這個。

天龍國夏季的天氣總是會有午後雷陣雨,像極了花都的天氣,使得我沒有辦法晚上出去騎車,不過這白雲還不錯。

不得不說,天龍國的物價真是太低了,雖然有三千塊一客的牛排,但是也有一百塊的自助餐,而這一百塊,他們還覺得貴。

上面這份因為我加了一大隻雞腿,所以是一百三十五。

他們會去吃更便宜又大碗的麵食,我是不吃的,因為太鹹了,怪不得這麼多人洗腎。

7 月 6 日, 2024 年

IPsec VPN between pfSense and AWS with BGP routing

Ken Tech 0 Comments

IPsec VPN這個話題很常見,但是也很不常見,常見是因為企業應用中必然有他的影子,不常見是因為他配置好之後就幾乎再也不會去動他。

使用static routing 方式配置pfSense 到AWS的IPsec VPN,網路上的blog和youtube 有很多很多很多。

但是,使用BGP routing的我沒看到,我也不會,因為我跟BGP沒有很熟,直到我昨天發現了有一個人使用Azure 配置IPsec VPN with BGP routing的示例,所以我就照著畫葫蘆,不錯,方案可行。

AWS 提供的IPsec VPN 默認就是使用BGP routing的方式,也就是說,網路上所有配置為static routing的blog和youtube,都是手動修改為static routing的,我的理解是,他們也不會。

BGP routing的好處在於,一個connection 上的兩條tunnel 可以HA方式同時運行,畢竟兩條tunnel後面就是兩台ec2 instance,偶爾壞個一次,也並非是很難見到的情形,而企業應用中,高可用在很多場景下都是必要的元素。

而在我之前的使用經驗中,使用static routing的方式,flapping的情形還是很多的。

環境描述:

雲端 10.2.0.0/16
地端 10.1.2.0/24

在AWS上創建IPsec VPN 只需要點幾下,首先在VPC中創建cgw,然後創建vgw,把vgw attach到VPC,

然後創建VPN connection,在該頁面選擇之前創建好的vgw和cgw,在routing options 請保留為默認的Dynamic,也就是BGP。

在VPN connection 創建完成後,會根據客人本地使用的防火牆型號提供一個詳細的配置說明文件,文件中包含了AWS側的public IP,phase1和phase2的協商加密方式,pre-share key,BGP配置信息等,對於pfSense 來說,需要選擇Generic。

和static routing方式配置不一樣的地方是,該配置說明文件中包含了BGP配置信息,其中有雲端的AS,地端的AS,以及私有互聯IP。

到這裡,AWS上的配置就已經完成了,是不是很簡單。

接下來進行pfSense的配置,首先從Package Manager 來安裝FRR。

FRR routing daemon for BGP, OSPF。

安裝完成後,啟用FRR。

創建Route Maps,為他起個名字,Action設置為permit。

進入BGP配置,啟用BGP Routing,並設置Local AS和Networks to Distribute,這裡我們要advertise的就是本地網路10.1.2.0/24,而Local AS 65000 來自於剛才從AWS下載的配置說明文件。

接下來再打開從AWS下載的配置說明文件,裡面除了Local AS,還有AWS側的Remote AS,以及neighbor address,那麼兩條tunnel,就會有兩個neighbor。

依次添加兩個neighbor:

將neighbor添加完成後,啊,VPN還沒創建呢。

在pfSense上創建VPN的方式就不多說了,phase1 和static routing 方式一模一樣,區別在於,phase2 mode 需要修改為VTI方式,並在Networks 中填入由AWS下載的配置說明文件中分配的雲端和地端私有IP地址。

當VPN創建完成,連結成功建立後,可以從Status中來查看BGP的狀態,也可以斷掉一條測試看看。

從AWS側,你將會看到提示,有1 BGP route up,也就是上面的10.1.2.0/24。

參考文件:https://www.linkedin.com/pulse/site-to-site-vpn-between-pfsense-azure-bgp-allow-dynamic-mario-brenes-ud10e/

«‹ 8 9 10 11›»

過 客

  1. R2 on 卷進了美商5 月 15 日, 2024 年

    终于回来了,好。

  2. Ken on Mommy最後的樣子11 月 6 日, 2023 年

    也沒有很久吧,最近終於閒下來

  3. R2 on Mommy最後的樣子10 月 26 日, 2023 年

    好久不见

  4. Ken on 天朝Loli控组曲(带歌词,修正版)10 月 12 日, 2023 年

    哈哈哈,祝福你,好人一生平安

  5. liu on 天朝Loli控组曲(带歌词,修正版)10 月 12 日, 2023 年

    hello,我在找天朝lolicon组曲时发现了你的博客,感谢你十四年前做出的贡献,祝一切安好

December 2025
S M T W T F S
 123456
78910111213
14151617181920
21222324252627
28293031  
« Nov    

Spam Blocked

101,924 spam blocked by Akismet

↑

© 初心易得,始終難守 2025
Powered by WordPress • Themify WordPress Themes