0%

雑感

  • まだない

11/18

(独立記事あり)

  • エージェントと話した。もう一箇所必要か…
  • legoで Lets encrypt の証明書を取得するように変更。証明書を更新。

11/19

  • 職務経歴書修正
  • エージェントからきた31件のうち、応募しないものを振りわけした。 20件残った。
  • ここのテーマ変更

TODO

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

痩せる

  • プールに行って泳ぐ

電気通信事業者

電気通信事業者、登録する。

エージェントと話した。

エージェント氏はとてもいい人だった。本当にいい感じだが案件がちょっと…イマイチ。
と言うより数が足りないのでもう一箇所エージェントと話をすることにする。

legoで Lets encrypt の証明書を取得する。

最初の取得

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 普通に実行する場合の例はあるので、シェルスクリプトとして実行する例

# legoは実行時のカレントディレクトリに .lego ディレクトリを作る為、事前にcdしておく必要がある。
cd /opt/lego

export CLOUDFLARE_EMAIL=<cloudflareのメールアドレス>
export CLOUDFLARE_API_KEY=1234567890abcdef1234567890abcdef12345

# wildcard証明書や、複数サブドメインが必要な場合は、 --domainsオプションを複数指定する
# 更新の場合は、末尾のrunをrenewに変更する。
./lego --dns cloudflare --domains example.com --domains *.example.com --email me@example.com --accept-tos run

# nginxをreloadして証明書を読み込み直す。
$ sudo /usr/sbin/nginx -s reload

# 注:
# sudoers に以下の記述をしてある
# execuser ALL=NOPASSWD:/usr/sbin/nginx

雑感

  • もうだめぽ

11/11

  • はてなdiaryの記事を全部ここに引き上げた。
  • はてなのアカウント、消すか迷ってたけど消した。
  • ESディスクフル対応
  • はてなの記事を持ってきたせいで並びがおかしくなってるけど後で直します。。

ElasticSearch ディスクフル

ILM (index lifecycle management)を設定したので油断していたが、設定内容が
誤っていてまったくrolloverされていなかった。
原因は https://discuss.elastic.co/t/getting-errors-related-to-ilm/182256 これとまったく同じ。

なんかこの辺でそれっぽくはなったものの、index名が logstash-2019.11.11 とかだったのが logstash-000000 という
感じになってしまってちょっと残念。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 現状のテンプレート設定を取得
$ curl 192.168.10.20:9200/_template/logstash_index_templates
{"logstash_index_templates":{"order":0,"index_patterns":["logstash-*"],"settings":{"index":{"lifecycle":{"name":"logstash_policy"},"number_of_shards":"1","number_of_replicas":"0"}},"mappings":{},"aliases":{}}}⏎

# rollover_alias が設定されていないので追加してテンプレートを更新
# is_write_index も設定されていないので追加
$ curl -X PUT '192.168.10.20:9200/_template/logstash_index_templates' -H 'Content-Type: application/json' -d '{"index_patterns":["logstash-*"],"settings":{"index":{"lifecycle":{"name":"logstash_policy", "rollover_alias":"logstash"},"number_of_shards":"1","number_of_replicas":"0"}}"mappings":{},"aliases":{}}'
{"acknowledged":true}⏎

# templateを更新しても既存のindexの設定は変わらないので修正
$ curl -X PUT '192.168.10.20:9200/logstash-*/_settings' -H 'Content-Type: application/json' -d '{"settings":{"index":{"lifecycle":{"name":"logstash_policy", "rollover_alias":"logstash"}}}, "aliases":{"logstash":{"is_write_index":true}}}'
{"acknowledged":true}⏎

# index alias が作成されていなかったので作成(rollover_alias と合わせる)
$ curl -X POST '192.168.10.20:9200/_aliases' -H 'Content-Type: application/json' -d '{"actions" : [{ "add" : { "index" : "logstash-*", "alias" : "logstash" }} ] }'

よくわからんのでテストしてみた。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# kibana でpolicyを作成。 test_policy とする

# policy を適用するtemplateを作成
$ curl -X PUT '192.168.10.20:9200/_template/logstash_index_templates' -H 'Content-Type: application/json' -d '{"order":0,"index_patterns":["test-*"],"settings":{"index":{"lifecycle":{"name":"test_policy", "rollover_alias":"test"},"number_of_shards":"1","number_of_replicas":"0"}},"mappings":{},"aliases":{"logstash":{"is_write_index":true}}}}'

# documentがないとaliasが作れないのでとりあえずデータを入れる
$ curl -H "Content-Type: application/json" -XPOST "http://192.168.10.20:9200/test-0/_doc" -d "{ \"field\" : \"value\"}"

### 削除するとき用。(aliasと同名のindexがあるとaliasが作れない)
$$$ curl -X DELETE '192.168.10.20:9200/test' -H 'Content-Type: application/json'

# alias
$ curl -X POST '192.168.10.20:9200/_aliases' -H 'Content-Type: application/json' -d '{"actions" : [{ "add" : { "index" : "test-*", "alias" : "test" }} ] }'

# aliasに書き込んでいくとindexが自動的に切り替わる
$ curl -H "Content-Type: application/json" -XPOST "http://192.168.10.20:9200/test-0/_doc" -d "{ \"field\" : \"value\"}"

11/12

11/13

PPPoEを復活させて一部VMだけそちらを通す

OpenWRTルーターにPPPoEの接続を追加しようとした。
その瞬間、デフォルトゲートウェイが持って行かれて(チェックボックス外すの忘れた)
そこまでは良かったが、PPPoEが予想以上に遅く(DL 6Mbps UL 29Mbps)
こりゃダメだと思って切り戻しをしたら、なんとVPN経由の通信が一部通らない。
その一部がよりによって、k8sのserviceのIPで、見事にサービス停止。
通るIPアドレスは普通のVMのIPで、本当に全く問題なく通る。
k8sのserviceのIPだけがまったくだめで、tcpdumpしても理由が分からず。
VPN先→k8sには届いているが返りのパケットがVPN先まで届いてないような雰囲気だった。
多分、何かの設定が間違ってるのだろう。
深夜だったのでこれ以上何かしても被害が広がると思って寝た。

zfs send recv

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
web画面からzfs dataset pool/minio-backupを作成
バックアップ元は s3/minio

# zfs snapshot の ls
$ zfs list -t snapshot

# バックアップ先の atime が有効になっていると差分更新時に困るので off
$ zfs set atime=off pool/minio-backup

# zfs snapshot create
$ zfs snapshot -r s3/minio-data@backup

# send recv (初回)
$ zfs send s3/minio-data@backup | zfs recv s3/minio

# rename snapshot
$ zfs rename s3/minio-data@backup lastbackup

# 差分
$ zfs send -R -i @lastbackup s3/minio-data@backup | zfs recv -vF pool/minio-backup

11/14

ルーター切り替え

vyos

OpenWRT、GUIで設定しているとどうも不思議な事が起きるのでvyosに再度登板してもらった。
以前に設定したときのconfigをリストアすると普通に繋がってくれて、ああ。。これだよ。。
っていう感じに。

vyosでDS-LiteとPPPoEを併用する

vyosでDS-LiteとPPPoEを併用する場合、同一NIC上だと上手く行かなかった。
pppoe0: Coming Up から進まなかった。
Hyper-V上の第二世代VMなので、NICを増やして(同じ仮想スイッチにつないで)増やしたNICでPPPoEしたらあっという間に繋がった

policy based routing

DS-LiteとPPPoEのどちらを使わせるかを制御しないと片方しか使われないので設定する。
https://vyos.readthedocs.io/en/latest/routing/pbr.html
↑だとPPPoEを指定できないので↓で書く。幸いvyosでも使える
https://help.ubnt.com/hc/en-us/articles/204952274-EdgeRouter-Policy-Based-Routing

なんとなく動きそうな雰囲気はあったが、configが複雑になるのが嫌だったので別の方法にした。

と思ったが…

よく考えたらPPPoEが必要なのは全てVMなので、PPPoE専用のLANとPPPoE接続を行うルーターVMを立てることにした。
と言うことで、使い慣れたpfSenseで必要なものを作成した。はじめからこうすれば良かったんだ。。。

11/15

  • 転職エージェント登録した(その1)
  • 転職エージェント登録した(その2)
  • minioのバックアップをzfs send / recv に切り替えた。
  • 効果は絶大で、65GBの転送が1GB程度になってとてもよい。

minioバックアップをfreenasのcronに設定

1
2
3
4
5
6
zfs destroy s3/minio-data@lastbackup 
&& zfs rename s3/minio-data@backup lastbackup
&& zfs snapshot -r s3/minio-data@backup
&& zfs send -R -i @lastbackup s3/minio-data@backup | zfs recv -vF pool/minio-backup

実際は上記を1行にまとめて入れた。

11/16

  • 新規のサービス向けの頭出しした。

11/17

  • エージェント提出用の書類書いた。

TODO

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

職務経歴書

  • 外枠(プロジェクト名と日付)
  • フォーマット統一
  • プロジェクトの中身 (2018)
  • プロジェクトの中身 (2017)
  • プロジェクトの中身 (2016)
  • プロジェクトの中身 (2015)
  • プロジェクトの中身 (2014)
  • プロジェクトの中身 (2013)
  • プロジェクトの中身 (2012)
  • プロジェクトの中身 (2011)
  • プロジェクトの中身 (2011より前)
  • 自己PR

痩せる

  • プールに行って泳ぐ

電気通信事業者

電気通信事業者、登録する。

雑感

  • そろそろ寿命みたい

11/04

  • S3のSSDが警告気味なところにいたので、無事なSSDに移動。
  • OpenWRTのConnection数ぽいものを取得するようにした。 (/proc/net/nf-conntrack-count)

11/05

  • 環境モニタ MHZ-19B取得バグフィックス
  • httpサーバー機能がなくなっちゃってるので追加

11/6

  • 環境モニタPWMモード追加

11/7

  • Web登録1
  • Web登録2

TODO

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

職務経歴書

  • 外枠(プロジェクト名と日付)
  • フォーマット統一
  • プロジェクトの中身 (2018)
  • プロジェクトの中身 (2017)
  • プロジェクトの中身 (2016)
  • プロジェクトの中身 (2015)
  • プロジェクトの中身 (2014)
  • プロジェクトの中身 (2013)
  • プロジェクトの中身 (2012)
  • プロジェクトの中身 (2011)
  • プロジェクトの中身 (2011より前)
  • 自己PR

進捗ありません!

痩せる

  • プールに行って泳ぐ

電気通信事業者

電気通信事業者、登録する。

雑感

  • 10月、終わっちゃう。。。

10/28

  • 環境モニタ コードコンプリート
  • ServerInfo

10/29

ルーターをVyOSからOpenWRT化したルーターに変更

  • VyOSで tootctl domains crawl するとネットワーク接続が不安定(接続できない)になる問題が解決できなかった。
  • OpenWRTに置き換えてから分かったが、どうもこれはtootctl domains crawl がコネクションを合計5000本以上使用するのが原因のようだ(tcp_fin_timeout含む)
  • ds-liteのCGN(NAT)が5000ポートに制限しているのが原因で新しいセッションが貼れなくなるのが原因のようだ。
  • OpenWRTのRealtime Graph を見ていたら、connection合計が5000でぴったり頭打ちしたあげくに、その時から例の不安定症状が出た。

OpenWRTセットアップ

Software追加

  • zabbix-agentd
  • zabbix-extra-network
  • ds-lite
  • openvpn-openssl
  • luci-openvpn

fw設定

fw設定は、転送方向を設定すればその戻りのパケットは自動的に許可される。
(established, related は自動的に設定されるので戻りを明示的に許可する必要なし)

1
2
3
4
lan => wan/srv
wan => reject
srv => wan/oci
oci => srv

今日やったことその他。無駄になったやつ

  • pfSenseのセットアップ

原因が分かっていない状態でサーバー上で動いて無料で安心できるやつ。
ということでセットアップして設定していたが、気づいたらDS-Lite非対応。
GIFでいけるかと思っていたがそうは問屋が卸さなかった。

  • routerosのセットアップ

Hyper-V上で動かすので、本来ならCHR(Cloud hosted RouterOS)を使うべき。
だがしかし、ライセンスが機能ではなく回線速度でリミットされてるため、RouterOSを
入れようとした。が見事にHyper-VのNICが認識されず、撃沈。

11/1

postgresql 11 => 12

Mastodon インスタンス停止

1
2
3
kubectl scale --replicas=0 deploy/mastodon-sidekiq
kubectl scale --replicas=0 deploy/mastodon-streaming
kubectl scale --replicas=0 deploy/mastodon-web

PostgreSQL復帰

1
2
3
4
5
(postgresql 11 稼働状態で)
kubectl exec -it svc/mastodon-db -- pg_dumpall -U root > pgdump
(podのPV削除なり何なりでデータを削除)
(postgresql 12 に切り替え)
kubectl exec -it svc/mastodon-db -- psql -U root < pgdump

(replica数戻すのは割愛)

11/2

  • FreeNASはMinioが同梱されていてS3を動かすことができる
  • 今まではk8sのpodとして動かしていたが、バックアップ中にI/O Overload警告が出ていて気になっていた。多分恐らくNFS経由であることが色々と負荷になっているのだろう。
  • と言うことで、MinioはFreeNASに任せることにした。
  • FreeNASのWebUIからpoolを作成すると、自動的にswap領域が確保されてしまうので、コマンドラインから確保して、 export/importをするという手順を踏んだ。
1
2
3
zpool create minio da6 (/dev/da6だったので)
zpool export minio
(ここでWeb UI からpoolをimportする。import直後は圧縮やdedupの設定がされていないので、変更がなくても一度変更しておく)
  • 移行は毎度毎度のバックアップから mc mirror で新しいminioにファイル転送を行い、media_attachmentに差分があるのでそれを旧minioから転送(ただのコピー)した。
  • カバンの取っ手を買ってきて付けた。が、色々納得いかないのでやり直し

11/03

TODO

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

職務経歴書

  • 外枠(プロジェクト名と日付)
  • フォーマット統一
  • プロジェクトの中身 (2018)
  • プロジェクトの中身 (2017)
  • プロジェクトの中身 (2016)
  • プロジェクトの中身 (2015)
  • プロジェクトの中身 (2014)
  • プロジェクトの中身 (2013)
  • プロジェクトの中身 (2012)
  • プロジェクトの中身 (2011)
  • プロジェクトの中身 (2011より前)
  • 自己PR

進捗ありません!

痩せる

  • プールに行って泳ぐ

電気通信事業者

電気通信事業者、登録する。

雑感

  • 。。。

10/21

  • FreeNASにPVを移動していく。
  • ちまちまと移動しまくった。
  • 最後、財団のDBを飛ばしかけてかなり焦った。PVCにprotectionがあってもミスるときはミスる。
  • Minio以外はなんとか移転した。

10/22

  • 天皇陛下即位の日。万歳するときは手のひらが内側なんだということを学んだ。
  • MinioのPVを移動。 rsyncでnfs -> nfs に転送してminio podを再起動させて完了とした。
  • これだと、rsyncがスタートした後のデータは恐らく欠落する。
  • 正しくやるなら、minioを2個立ち上げて旧→新でコピーしてminioを切り替え、再度旧→新にコピーすればいいはず。
  • なるほど、ファイルがimmutableだとものすごく楽。
  • と言いつつ、転送先ディレクトリを間違えて3回くらい転送してる。

10/23

  • mstdn.jpがご機嫌斜めらしいので、Sidekiqのプロセスを増やした。
  • 実際は、kustomizeでdeploymentのコンテナを追加できるのか試したかった。

10/24

  • Autoアレのownedがコケていたの修正
  • Raspberry Pi のバックアップがコケていたの修正
  • vyosのお試しを始めた。
  • Sophos UTM 9 をちょっと試したがコレは… UIがびみょ。

10/25

  • VyOSの設定をかきかき。
  • フレッツのセッションは2本貼れるのでそれでテスト環境を作ってテスト。良い感じ

10/26

  • 池ハロみた。楽しかった
  • VyOSのファイアウォール回りの設定書き直し。zoneを定義して、zone-policyでFWを適用した方がスッキリしたため
  • VyOSでRTX1200を置き換えた。
  • DS-Lite
  • Intra LAN seg DHCP
  • Server LAN seg DHCP
  • Intra - Server LAN 疎通確認
  • Intra - Server LAN NAT
  • Firewall設定 v4
  • Firewall設定 v6
  • IPv6 bridge
  • IPv6回りは一旦ペンディング。今現状無くても困らない。
  • 稼働させて、一通り上手くいっているようだが、なぜか家庭内ネットワークがタイムアウトする。
  • ファイアウォールに引っかかっているようでもないし…
  • よく見ると、サーバーセグメントもネットワークが止まるような動きをしている。
  • と思ったら、無線LAN APのWANポートに入れるLANケーブルがLANに刺さっていた。
  • 家庭LANとサーバーLANセグメントのNATをやめてファイアウォールで制御するようにした。
  • ケーブルを差し替えたが、状況は変わらない。なんだこれは…諦めて寝る

10/27

  • 朝起きてみると、ネットワークは普通に戻っていた。
  • 無線LAN APの接続間違いのせいでネットワークループでも起きていたんだろうか?
  • とりあえず、体感でネットワークが少し軽くなったような気がする。
  • IPアドレスに依存するジョブの修正をした
  • zabbixの監視回りの修正(FreeNASのI/O負荷、VyOSの監視)
  • 統計情報取得修正
  • VSCodeでArduinoの書込を試した。普通に書けた。よい。
  • server info 書き終わり
  • https://d.yakumo.dev/2019/09/undefinedtech-20191020-server-build-info/

TODO

k8sに移動したことによって壊れている単純なジョブの修正

  • バックアップ
  • テストインスタンスバックアップ
  • misskeyインスタンスバックアップ
  • 財団バックアップ
  • 統計情報取得(DB部分)
  • sidekiq統計取得
  • 週次メンテナンスジョブ
  • 月次メンテナンスジョブ

done。統計情報取得はkubemasterに任せた。

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

職務経歴書

  • 外枠(プロジェクト名と日付)
  • フォーマット統一
  • プロジェクトの中身 (2018)
  • プロジェクトの中身 (2017)
  • プロジェクトの中身 (2016)
  • プロジェクトの中身 (2015)
  • プロジェクトの中身 (2014)
  • プロジェクトの中身 (2013)
  • プロジェクトの中身 (2012)
  • プロジェクトの中身 (2011)
  • プロジェクトの中身 (2011より前)
  • 自己PR

進捗ありません!

痩せる

  • プールに行って泳ぐ

電気通信事業者

電気通信事業者、登録すると一覧が公表されるとかなんとからしいので保留。

雑感

  • 割と死にたくなってきた。。

10/14

  • 環境モニタの作り直しを決意してボードとArduinoプロジェクトを用意した。
  • コンパイルエラーが不適切なメッセージを出してきて苦戦した。
  • 複数のライブラリが見つかりました。って出てたけど、実はただのシンタックスエラーだった。

10/15

  • 財団のminioをk8sに移動
  • Minio専用NFSが使えてなかったのを修正
  • Minioバックアップジョブ追加。
  • minioをローカルに置いたせいで遅くなるかと思いきや、むしろ早くなっててうーん。

10/16

  • ファイル共有部分を待避。
  • Windowsのディスク(3TB * 3)を記憶域プールに変更。
  • GUIから設定するとエラーでコケる。Powershellでやると通る。この時点で黄色信号。RAID5相当でなく、ミラーとかストライプなら平気なんだろう。
  • この日の深夜、Windows Updateで再起動され、記憶域プールがオフラインになっていた。やってられないので別の方法を考える。

10/17

  • 結局、HDDをRDMしてFreeNASに割り当て、ZFSすることにした。 (Hyper-VにもRDMがあった!)
  • Chinachuの録画データの置き場所に困るが、iSCSIでZFSをマウントする。
  • https://www.tecmint.com/setup-iscsi-target-and-initiator-on-debian-9/
  • OpenTTD会した。 NUTSなかなかいい。用途毎に列車が分かれていて特徴がある。
  • YETIを採用したがこれもなかなか良かった。
  • City Builderの設定がミスっていて、原料を必要物資にしてしまったのは失敗だった。(自分で産業を作らないと受け入れにならない)
  • 必要数を10に減らしたのは正解だった。(このハイトマップでは)
  • The world ハイトマップは失敗。 産業がバニラであれば大丈夫だけれどもYETIで拡張されてしまうと、平地がないと産業がつらい。
  • YETIは使わない産業が8年くらいで閉鎖され、ランダムで次の場所が選ばれる。一瞬よさそうだけれども、このハイトマップだと、どんどん端っこにある平地が多い大陸に産業が偏ってしまう。

10/18

  • バックアップ用のテンポラリなファイル置き場がなくなったことに気づいた。
  • これもFreeNASから iSCSIでマウントすることに。WindowsのiSCSIイニシエータは設定が楽
  • Jenkinsジョブが壊れまくったので修正

10/19

  • misskeyのDBとRedisをstatefulsetにした。
  • 環境モニタ系のスケッチが、液晶アリ常時稼働仕様と、MQTT用ディープスリープ仕様でほぼ同じなのにコードが分離していてつらいので統合する。
  • Chinachuの録画を見た感じ、Resilver中は重かったが今はかなり快適。これはいける
  • NFS用VMやめて、全部FreeNASに任せてしまえば良いのではないか感はある。

10/20

TODO

k8sに移動したことによって壊れている単純なジョブの修正

  • バックアップ
  • テストインスタンスバックアップ
  • misskeyインスタンスバックアップ
  • 財団バックアップ
  • 統計情報取得(DB部分)
  • sidekiq統計取得
  • 週次メンテナンスジョブ
  • 月次メンテナンスジョブ

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

職務経歴書

  • 外枠(プロジェクト名と日付)
  • フォーマット統一
  • プロジェクトの中身 (2018)
  • プロジェクトの中身 (2017)
  • プロジェクトの中身 (2016)
  • プロジェクトの中身 (2015)
  • プロジェクトの中身 (2014)
  • プロジェクトの中身 (2013)
  • プロジェクトの中身 (2012)
  • プロジェクトの中身 (2011)
  • プロジェクトの中身 (2011より前)
  • 自己PR

進捗ありません!

痩せる

  • プールに行って泳ぐ

電気通信事業者

電気通信事業者、登録すると一覧が公表されるとかなんとからしいので保留。

雑感

  • 割と死にたくなってきた。。

10/08

  • OpenTTDプレイした。シナリオは良かった。
  • ECSがびもー。個人的にはFIRSの方が好き。次はYETI試す

10/09

  • 財団が不安定になりまくる。原因は MinIO Azure Gateway。
  • マルチパートアップロードに対応していないのでそういう状態になると変な動きをする模様
  • で、負荷がかかるとVPNのリンクが怪しくなって機能喪失というシナリオ。

あまりに最近サーバー落ちまくりなので、当面は安定性重視でインフラを再構築していく。

  • テストインスタンス Oracle Cloud Object Storageに移行
  • 最初の調べは大変だったが、調べがついてしまえば普通に動く。
  • https://qiita.com/yakumo/items/bd827fd167774a28c2a6
  • Mastodonで使うなら、設定はパブリックにする必要がある。(画像直リンクしてる)

10/10

  • Misskey、OCI Object Storageに移行
  • 財団はローカルにminioを立てて対応

GlusterFS中止。

データが分散されて記録されるのは魅力だが、そのためにI/Oが3倍はキツイ。
あとは容量的にも辛い。 バックアップで保全しているのだからFSレベルは普通のNFSで
良いだろうという考え。SSDでRAID5とかをやるかどうかは・・・今の所考えていない

10/12

台風。それほどでもなかった。インフラつよいなぁと本当におもった。
GlusterFSからNFSへの切り戻しは完了した

10/13

台所用ワゴンに作業棚を追加した。部品の関係で設計を変えたらメタメタになった。
ちゃんと考えないとダメ。

TODO

GlusterFSへの載せ替え

  • テストインスタンス
  • fastladder
  • writefreely
  • Misskey
  • 財団

→中止 NFSに切り戻す。
→完了。

k8sに移動したことによって壊れている単純なジョブの修正

  • バックアップ
  • テストインスタンスバックアップ
  • misskeyインスタンスバックアップ
  • 財団バックアップ
  • 統計情報取得(DB部分)
  • sidekiq統計取得
  • 週次メンテナンスジョブ
  • 月次メンテナンスジョブ

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

職務経歴書

  • 外枠(プロジェクト名と日付)
  • フォーマット統一
  • プロジェクトの中身 (2018)
  • プロジェクトの中身 (2017)
  • プロジェクトの中身 (2016)
  • プロジェクトの中身 (2015)
  • プロジェクトの中身 (2014)
  • プロジェクトの中身 (2013)
  • プロジェクトの中身 (2012)
  • プロジェクトの中身 (2011)
  • プロジェクトの中身 (2011より前)
  • 自己PR

進捗ありません!

痩せる

  • プールに行って泳ぐ

電気通信事業者

電気通信事業者、登録すると一覧が公表されるとかなんとからしいので保留。

雑感

  • そろそろ動かないと本当に本当にやばい

9/30予定

  • moreおしごと

10/1

  • OpenTTDプレイした。シナリオが失敗しててつらみだった。

10/2

  • 倉庫お片付け
  • 外の環境モニタの修理。 18650が2セットほど死んでいた。
  • 寝室用モニタの修理、これはケーブル抜けだった。通りで起動してこないわけだ
  • Twitterダウン
  • またMinIO Azure Gatewayが落ちた。
  • 金曜日飲み会

10/3

  • nat descriptor timer 1 60 したらjenkins slaveが接続断されてしまったので 300 + 15で315にした。

10/4

  • minioの監視を追加する
  • RTX1200 -> OpenWRT
  • テストインスタンス GlusterFSに載せ替え
  • Misskey GlusterFSに載せ替え
  • writefreely GlusterFSに載せ替え
  • GlusterFS情報取得(空き容量とか)

付録

minio監視&再起動スクリプト

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/bin/bash -u

set +e

expected="9d3297fba6b392c0129d831492dee3afdb2cd334 -" # これはテスト画像のsha1sum
sha1=`curl --max-time 15 -s --output - http://internal/yakumofoundation/internal_alive_test.jpg | sha1sum`

echo "Actual: $sha1"
echo "Expected: $expected"

if [ "$sha1" != "$expected" ]; then
# この為に、 sudoersに user ALL=NOPASSWD: /bin/systemctl を記述した
echo "MinIO maybe down. restarting !!"
echo "MinIOが落ちたようです。再起動します。" | ~/jenkins-scripts/slack.sh
sudo systemctl status minio | tee /dev/stderr | ~/jenkins-scripts/slack.sh

sudo systemctl restart minio

sleep 1s
echo "MinIOを再起動しました。" | ~/jenkins-scripts/slack.sh
sudo systemctl status minio | tee /dev/stderr | ~/jenkins-scripts/slack.sh

~/jenkins-scripts/foundation_admin_toots.sh "@yakumo minioが落ちていたので再起動しました。"

fi

TODO

GlusterFSへの載せ替え

  • テストインスタンス
  • fastladder
  • writefreely
  • Misskey
  • 財団

k8sに移動したことによって壊れている単純なジョブの修正

  • バックアップ
  • テストインスタンスバックアップ
  • misskeyインスタンスバックアップ
  • 財団バックアップ
  • 統計情報取得(DB部分)
  • sidekiq統計取得
  • 週次メンテナンスジョブ
  • 月次メンテナンスジョブ

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

職務経歴書

  • 外枠(プロジェクト名と日付)
  • フォーマット統一
  • プロジェクトの中身 (2018)
  • プロジェクトの中身 (2017)
  • プロジェクトの中身 (2016)
  • プロジェクトの中身 (2015)
  • プロジェクトの中身 (2014)
  • プロジェクトの中身 (2013)
  • プロジェクトの中身 (2012)
  • プロジェクトの中身 (2011)
  • プロジェクトの中身 (2011より前)
  • 自己PR

進捗ありません!

痩せる

  • プールに行って泳ぐ

電気通信事業者

電気通信事業者、登録すると一覧が公表されるとかなんとからしいので保留。

雑感

  • そろそろ動かないと本当に本当にやばい

9/23

  • 物置のお片付け。
  • 会社のVPNサーバーをAzureに移転。Oracle Cloudで色々悩んだ経験が生きてあっという間に終わった。
  • Azureにバーストインスタンスあったの?状態。 VM B1-S (1CPU 1GB)で立てたけども512MBのやつでもよかったかも。¥1600/月
  • なお、会社のはAction Pack無料枠が有り余ってるのでそこから捻出。
  • 私用VPSと完全に切り離しできたので少し幸せなのと、費用分離がはっきりしたので会社的にもよろしいと思われる。(無料枠だけど)
  • OCIのnginxがLAN内のAPサーバーに繋がらない。なんでなの

9/24

  • kubernetes 1.16.0 にアップグレードしたら、flannelが起動しなくなった。
  • 理由 kubeletがCNI定義ファイルにバージョン記述を要求するようになったが、flannelが自動生成するファイルにはない
  • 対策 https://twitter.com/maoh_nol/status/1176423005276164096?s=20 flannelのyamlを上書きすればOK
  • OpenVPN起動時にルートを追加したかったけれどもイマイチ上手くいかないので cronに@rebootで仕込んだ。強引〜
  • Oracle Cloud にテストインスタンスのフロントを移転。 画像系直せば後はOK
  • k8sの自動アップグレードにしてるpod、githubにpushしてjenkinsジョブを走らせないとバージョンまき戻るやんけってなってうーん。

9/25

  • テストインスタンス画像系のIP設定 -> Done
  • なかなか疎通が取れなかったけれども、openvpnのローカル側終端サーバーがブロックしてるだけだった。がっくり
  • 靴の修理上がりを取りに行く
  • テストインスタンスをVultrからOCIに移動。
  • k8sのdeploymentのバージョンが extension/v1beta が蹴られるようになったので apps/v1 に変更。中身はそのままでOKだった
  • 財団のドメインのexpire通知が来たのでnamecheapからcloudflareに移管した。
  • 財団のフロントをOCIに移動
  • fastladderのフロントを移動
  • writefreelyのフロントを移動
  • GlusterFSのstorageclass誤り修正。実稼働へ。
  • GlusterFS on k8s の記事更新 https://qiita.com/yakumo/items/3562be29084ca09018d3
  • fastladderのDBをGlusterFSに載せ替え。

9/26

  • Vultrサーバーバックアップ
  • Vultrサーバー廃棄
  • 靴の受け取り
  • 脱毛
  • 財団のDBのPVCを豪快に削除してしまった。PVはPodが動いていたので維持されていたが、この際なのでStatefulsetに載せ替えた(不完全)
  • 財団のDBがGlusterFSに移った。
  • kubectl cp は元ファイルがなくてもエラーにならない。なんだこれ

9/27

めずらしくお仕事。C#でMicrosoft Report書いた。
Microsoft Report、SQL ServerのものともAccessのモノとも多分同じ。
にしても情報が少なくて割と苦労する。でも無償のC#用帳票出力ミドルって多分これくらいではないか

9/28

  • 朝起きたらmineoが落ちていた。journalに大量の例外ログを吐いていた。 とりあえずバージョンアップと再起動を行った。
  • 昨日のお仕事の続き。帳票は細部がてけとーだとなんか全体的にイマイチになるので大変時間がかかる。
  • しかも、テスト用にすぐ帳票出せるコードがないので面倒だった。が、なんとか一通りそれっぽくはなった。
  • X230のセットアップをした。 X220キーボードにするか、X230バックライトキーボードにするか割となやむところ。
  • ウルトラベース欲しい

9/29

  • おしごとした。

TODO

GlusterFSへの載せ替え

  • テストインスタンス
  • fastladder
  • writefreely
  • Misskey
  • 財団

[DONE] Oracle Cloud へのフロントサーバーの移転

  • OpenVPN
  • nginx
  • MinIO Gateway
  • テストインスタンス
  • fastladder
  • writefreely
  • Misskey
  • 財団

k8sに移動したことによって壊れている単純なジョブの修正

  • バックアップ
  • テストインスタンスバックアップ
  • misskeyインスタンスバックアップ
  • 財団バックアップ
  • 統計情報取得(DB部分)
  • sidekiq統計取得
  • 週次メンテナンスジョブ
  • 月次メンテナンスジョブ

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

writefreely への文書コピー

本当にコピー

職務経歴書

  • 外枠(プロジェクト名と日付)
  • フォーマット統一
  • プロジェクトの中身 (2018)
  • プロジェクトの中身 (2017)
  • プロジェクトの中身 (2016)
  • プロジェクトの中身 (2015)
  • プロジェクトの中身 (2014)
  • プロジェクトの中身 (2013)
  • プロジェクトの中身 (2012)
  • プロジェクトの中身 (2011)
  • プロジェクトの中身 (2011より前)
  • 自己PR

進捗ありません!

痩せる

  • プールに行って泳ぐ

電気通信事業者

電気通信事業者、登録すると一覧が公表されるとかなんとからしいので保留。

雑感

  • そろそろ動かないと本当に本当にやばい

9/16

  • 誕生日。

9/17

  • Oracle Cloud の Always Free枠が発表された
  • これを使ってCloud Nativeな雰囲気を出していきたい
  • 性能がでるならVultrを廃棄してコストを抑えたい

Computeはできた。OpenVPNをセットアップできた。
しかし外からの接続ができない。なんでだ

9/21

技術書典。知人のところにご挨拶しにいった。
帰りに別の知人と与太話をした。

9/22

  • Oracle CloudのComputeへの外部接続に成功した。 iptablesだった。。

TODO

Oracle Cloud へのフロントサーバーの移転

  • OpenVPN
  • nginx
  • MinIO Gateway
  • テストインスタンス
  • fastladder
  • writefreely
  • Misskey
  • 財団

GlusterFSへのストレージ移転

  • fastladder
  • テストインスタンス
  • misskey
  • 財団

k8sに移動したことによって壊れている単純なジョブの修正

  • バックアップ
  • テストインスタンスバックアップ
  • misskeyインスタンスバックアップ
  • 財団バックアップ
  • 統計情報取得(DB部分)
  • sidekiq統計取得
  • 週次メンテナンスジョブ
  • 月次メンテナンスジョブ

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

writefreely への文書コピー

本当にコピー

職務経歴書

  • 外枠(プロジェクト名と日付)
  • フォーマット統一
  • プロジェクトの中身 (2018)
  • プロジェクトの中身 (2017)
  • プロジェクトの中身 (2016)
  • プロジェクトの中身 (2015)
  • プロジェクトの中身 (2014)
  • プロジェクトの中身 (2013)
  • プロジェクトの中身 (2012)
  • プロジェクトの中身 (2011)
  • プロジェクトの中身 (2011より前)
  • 自己PR

進捗ありません!

痩せる

  • プールに行って泳ぐ

電気通信事業者

電気通信事業者、登録すると一覧が公表されるとかなんとからしいので保留。

雑感

  • そろそろ転職活動しないとヤバい。

9/12

GlusterFS on kubernetes

デプロイした。何度か失敗しているけれども。。。
詳しくはQiitaに。

9/13

Thinkpad X200 の無線LANアダプタを交換

独立した日記を書いたのでそっち参照。
https://d.yakumo.dev/2019/09/13_thinkpad_x200_replace_wifi/

TODO

k8sに移動したことによって壊れている単純なジョブの修正

  • バックアップ
  • テストインスタンスバックアップ
  • misskeyインスタンスバックアップ
  • 財団バックアップ
  • 統計情報取得(DB部分)
  • sidekiq統計取得
  • 週次メンテナンスジョブ
  • 月次メンテナンスジョブ

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

writefreely への文書コピー

本当にコピー

職務経歴書

  • 外枠(プロジェクト名と日付)
  • フォーマット統一
  • プロジェクトの中身 (2018)
  • プロジェクトの中身 (2017)
  • プロジェクトの中身 (2016)
  • プロジェクトの中身 (2015)
  • プロジェクトの中身 (2014)
  • プロジェクトの中身 (2013)
  • プロジェクトの中身 (2012)
  • プロジェクトの中身 (2011)
  • プロジェクトの中身 (2011より前)
  • 自己PR

進捗ありません!

痩せる

  • プールに行って泳ぐ

電気通信事業者

電気通信事業者、登録すると一覧が公表されるとかなんとからしいので保留。

Fujitsu MX130 時代

Opteron 3260にCPUを差し替えて使用していた。
開発用のVMを起動するのにしか使っていなかったのでそれほど面白いことはしてない。
面白いと言えば、ヒートシンクに金属製の洗濯ばさみを付けてた。これをするとチップセットが冷えて
ファンの回転数が下がるというおもしろい工夫だった。これをしたら本当に静かになって大変助かった。
そのまま、お仕事の事務所用VMホストとして現在も活躍中。小さいのはえらい。
あと、無駄に8コアに見える(4C8T)

Core i7 860時代

2014年ごろ。鼻毛鯖のCPUを交換してサーバーにしていた時代。
途中でCPUが Xeon X3450に交換されている(が性能はまったく変わらないかむしろおちたくらい)
ケースが元々のケースで使用していたがHAF932を貰った為、ケースだけHAF932に。
以降、電源が変更されたりして、徐々に元の部品がなくなっていった。

動作させていた機能

  • Chinachu
  • ファイルサーバー

構成

Hypervisor: ESXi
ストレージ: WD RED 2TB * 3 (途中で3TB * 3に変更)
起動はUSBから行っていた記憶。
メモリも16GB程度だったのでVMは数台だったと思う。

ハイパーバイザーを Xen Server とか Proxmox VE とか Windows Server(hyper-v)に変更して色々実験していた。

RAIDカード沼

いろいろなRAIDカードを買っては試した。感想は以下。

  • Dell Perc 6i

割と普通に動いたけど、確かピンのマスクが必要だった記憶。
ESXiでもちゃんとドライバが当たった…はず。
http://yannickdekoeijer.blogspot.com/2012/04/modding-dell-perc-6-sas-raidcontroller.html

  • HP Smart Array P410

ESXiだと、HPのサーバーじゃないとドライバが入らない。Windows Serverだと普通に動く。なのでWindows Serverの時使ってた。
これもピンをマスクしたような…。 RAIDカード全般にそうだけど、差すと起動がとても遅くなるのつらい。
バッテリーがついてなかったので、ライトバックができなくてつらかった。

  • NEC N8103-117 (LSI 8708EM2)

バッテリつき。割と良かった。 よかったが、3TBのHDDに対応しておらず、残念ながら退役させた。

  • まとめ

ESXiだと割と状態の監視が厳しい(と言ってもOKかDEGRADEかくらいは分かる)。Windows Serverだとその辺はさすがに完備。
でも、色々とESXiは便利だった…

Core i5 4570 時代

いわゆる自作機。Core i7 はコスパ悪いので基本的には選ばない。のお気持ち。

動作させていたVM

  • Chinachu
  • ファイルサーバー
  • fastladder
  • Mastodon

ESXi

前からの構成とほぼ同じ。 RAIDカードは確かPerc6i だった記憶。
安定 of 安定。特に変更する必要はなかったが、やっぱりHypervisorの入替はやっていた模様。
結局ESXiに戻るみたいな。多分このサーバーからMastodonの運用始めてるはず。

Ryzen 7 1700時代 (現行)

買う時、かなりの博打で買った構成。というのも、当時のRyzenはメモリとの相性がキツくて、
動くか動かないかわからない。推奨のメモリは、マザボメーカーの動作確認済みメモリだけ。
みたいな状態。

  • Ryzen 1700
  • ASRock X370 Gaming K4 (Intel NICが乗っているから選んだもののWindows Serverのドライバがない。という罠)
  • Corsair Vengeance LPX 16GB * 2

Windows Server 2019 第一期

ESXiを使いたかったが、RyzenだとPCIパススルーが上手く行かなかったため、諦めてWindows Serverで組む羽目になった。
全てのVMが機能毎に一個ずつ存在する構成。

VMたち

Chinachu

これが問題でWindows Serverになった。今まではPT3をパススルーしていたが、それが不可能になったので
ホスト側でMirakurunを動かし、そこに接続する形で構成した。安定して動いているのでまぁ良い。

Mastodon

本番インスタンスとテストインスタンスがそれぞれ別VM。Non dockerで立てていた。
また、PostgreSQLを独立したVMとして切り出して、そこに依存することでさらに加速させた。

Minio

minio専用VMを立てていた。

fastladder

最初はnon-dockerだったが、dockerにした。昔からmysqlで構成していたのでそのまま。

zabbix

mysqlと組み合わせて作っていた。監視対象が同一PC内にいるってどうなのよ?という問題があったので、
Raspberry Pi (microSDカード運用)→(壊れたのでSSD運用)→(性能不足?)→Jetson Nano
→(Jetsonをzabbixに使うのダメでしょ)→Raspberry Pi(64bit, postgresql)
と、さすらっている。

ElasticSearch

ログ解析というのをやりたくて導入。これが兎にも角にもメモリ食いで、色々と悲劇を生んだ。
elasticsearch + Logstash + Kibana というお約束構成だった、全部を同一VMに入れた為に
メモリ量が4GBでも足りないという状態になり、大変つらかった。

ストレージ

Adaptec 6805T + BBWC を購入して、RAID10を構成していた。WD RED でも、ストライピングすると
割と早いのでとても良かった。

Windows Server 2019 第二期 docker

この頃は、dockerが正直言って本番環境に投入するものではないと思っていた。理由は不安定だから。
CentOS5にdockerを入れて、Webアプリを動かしたら1〜2日でカーネルパニックした苦い思い出がある。
※ CentOS5のカーネルが古すぎただけだと思う。Ubuntu16.04LTSにしたら安定したので。
※ この時以来、サーバーはUbuntuで構成するようになった。

この時期、SSDを買いまくった記憶がある。サービス動かすのに容量より球数が欲しくて、
兎にも角にも毎月のようにSSDを投入したような。(4台まで増えました)

VMたち

基本的にVMは同じだが、全てのVMをdocker化した。
最初は、Mastodonのバージョンアップ時にサービスが停止する時間がながいのが嫌だったんだけれども、
※ assets:precompileがメモリを食いまくる&長いのでその間サービスを停止していた。
docker化してイメージを作ってしまえば、そこの入替とdb:migrateだけでバージョンが上げられるので
大変楽になった。この時期から、Mastodonは自動的にMaster追従するようになった。

そして、dockerのイメージをビルドする為のサーバーがVMとして追加された。
この時点で、メモリがかなり逼迫しており、30GB/32GB くらい常時使用しているような状態だった。
VMをシャットダウンするとメモリ不足で起動できないとか、サーバーでFirefox起動しっぱなしだと
スワップ始まっちゃうとか、本当にギリギリだった。

docker swarm を入れて上手いことやればもっとリソースを詰めることができた(検討はした)
が、ストレージが大げさになって面倒だなぁ。ということでやらなかった。

Windows Server 2019 第三期 kubernetes

kubernetesを入れれば、dockerコンテナの管理が楽になって、システムリソースが有効に使える。
しかも、ナウでトレンディ。将来の為にもこれはやっておくべきだろう。ということで構成変更。
この時、財団は ThinkCentre Tiny M73p で臨時にホストしていた。Hyper-Vでよかったー
と思った瞬間ではある。

で、当然メモリが足りないのでついに増設を決意した。 このマザーボード、メモリを増やすと
速度が落ちるという仕様で、しかも動くかどうか博打だったが、なぜかXMPを有効にするとメモリが
動作して、速度も早いまま。それ以外では動かないというワケの分からない状態で動いている。

VM

dockerイメージビルド

kubernetes内でkanikoを使ってビルドしても良かったが、(テストして動くことは確認した)
唐突にワーカーノードに負荷がかかるのは嬉しくないので独立させている。

Chinachu

これは他にあんまり依存してほしくないので独立したVMとしている

kubernetes

VMの構成は、kubernetes master / worker * 3

kubernetes master は 2core / 2GB RAM
worker は 4core / 8GB RAM

バージョンは最新を追いかけている。 kubeadmによるセットアップ。

ストレージ

NFS

NFSのできるだけ新しい実装が欲しかったのと、使ってみたかったので、Arch Linuxで構築していた。
問題なく動作していたが、あまりに普通であるが故に色々といじられる対象となる

GlusterFS(失敗、切り戻し)

GlusterFS on kubernetesで構築してみた。
https://qiita.com/yakumo/items/3562be29084ca09018d3

しかし、SSDで組んだにもかかわらず速度的に30MB/s程度しか出せず、メリットと速度を天秤にかけた結果切り戻しに。
動作自体はちゃんと動いていたので問題はなさそうだが、次に試すならCephにすると思う。
(CephにすればMinioも廃止できるので)

ダイナミックボリューム(RAID-5、失敗)

元々はRAIDカードがトラブったのが嫌になってしまい、SATAオンリーに切り替えた。
その際、ポート数が足りない為、HDD4台→3台になってしまって RAID1で2台、素が1台という納得いかない
構成で使っていた。結果、RAID1側の空き容量が偏って減ってしまいちょっと嫌だなという状態に。

なので、RAID5(パリティあるの本当はあんまりうれしくないが)を構成しようとして、
Windows Serverの機能のRAID-5を組んでみた。…結果、書込速度が35MB/s程度になってしまいなんだかなぁ…
ググってみると記憶域スペースならもっと早いらしい。ということで移行断念した。

記憶域スペース (parity、RAID-5相当、失敗)

まず最初に、サーバーマネージャから構成しようとするとParityが構成できない。
powershellを使って構成したら上手く構成できた…が。
データのコピー中にWindows Updateで再起動がかかったのか、翌朝起きてみたら
ディスクがオフラインになっていた。
…正直、これを使い続けるのは怖いので撤退。移行は失敗とした。

FreeNAS

2019/10/20導入。 ZFSは以前に導入していた時期があり、信頼はできるのでもうこれでいこうと導入。
Hyper-VにもRDM(Raw Device Mapping) があることをしり、HDD 3台を全部任せることに。
ZFSはさすがに普通に動いてくれたので大変助かった。

そして、FreeNASでNFSが使えるのでSSDもFreeNASに任せて、NFSサーバーを停止したのであった。

内部ネットワーク

flannel、MetalLBを使用している。

外部ネットワーク

RTX期

RTX1200を使用。 LAN1が家庭用セグメント、LAN2がWAN、LAN3がサーバーセグメントという使い分けをしていた。
これは、RTX1000とか1100の時代からのconfigを引き継いで使っていた。LAN1 -> LAN3 はNATで接続する形。
歴代のRTXを使ってきてホント不満がなかった。RTX1200の筐体がいっきに大きくなったのは正直つらい。
その他、EdgeRouter Lite 3 を試したり、OpenWRTを試したりしてる。

VyOS期 (2019/10/27〜)

RTX1200が大きすぎて置き場所に困ったのと、サーバーのLANポートを1ポート開放(ドライバ入れてなかった)
に伴い、RTX1200を無くしてもいけるなという気分で変更された。実利的には、OpenVPNの終端を行うVMが
1core 512MB で構築されていて、そのVMの割り当て分をVyOSに変えることで実質無料みたいな状態で処理できている。
LANの構成そのものは変わっておらず、 zoneはinternet, intra , server と cloud の4つにしてある。
OpenVPNの終端がルーターに移動したので、OpenVPNの先にいるフロントも統合的に扱えるようになって
むしろスッキリした感じである。
Mastodon上での助言で、intra->serverのNATはやめて、ファイヤウォールによるアクセス制御に変更した。
速度的には、RTX1200より向上したように思えるが、速度的にはほぼ変わっていない(VDSLなので100Mbps上限)

OpenWRT期(2019/10/29〜)

VyOS期が短いように思えるが、 tootctl domains crawl を実行するとネットワークが不安定(外部接続不可)
になるというトラブルが発生してどうにかしようとして置き換えたもの。
実はこのトラブルがDS-Lite起因ではないかという疑惑があり、無駄な置き換えだったかもしれない。
ある意味、GUIで設定できて楽と言えば楽。OpenVPNはGUIより設定ファイルいじった方が早い気もするが…
WSR-1166DHPを使用しているが(無線LANは無効)、CPU使用率が意外と高いのでもう少し良いルーターが必要かもしれない。

雑感

  • そろそろ転職活動しないとヤバい。

9/2

dockbix-agent に接続

k8s外のzabbix-serverからk8s上のagentに接続するってどうすれば・・・
serviceを定義すれば繋がるだろうけれども、daemonsetに対してservice定義するってなんかとっても違う気がする。

結局Ansibleを誤爆してしまい、ワーカーに直接zabbix-agentを入れることに。

9/3

zabbixサーバーの移転

Jetson Nanoがzabbixサーバーやってるのはおかしい(色んな意味で)ので、余っていたRaspberryPi 3Bに移動した。
バージョンが違っていて辛かった。 (arm64はVer 4.2、armは4.0が最新)
PostgreSQLに移行しようなんて思ったせいでさらに時間がかかり・・・結局mysqlのママにしたという。
arm64等では 4.2がでているけれども、armは4.0で止まっている。DBのschemaが違って怒られたので、
dbversionを無理矢理4000000に書き換えて動かした。

kanikoを使ったイメージのビルド

メモリを2.5Giほど割り当てると成功することが分かった。(テストはWriteFreelyのイメージで行った)
DockerHubへのアップロードも成功しているようだ(動作は見ていない)

Misskey自動アップグレード

Mastodonのを流用すれば楽だろうと思ったら(事実楽な部分は多い。例えば、Misskeyは起動時に自動的にdb:migrateされるとか)
・・・見事にハマっている。misskeyのバージョンは 11.x.y だけれども、 11.9.1 > 11.31.4 と判定されてしまって、
見事に失敗した。 明日何か考えよう。

オイルヒーター

粗大ゴミに出した。

9/4

Raspberry Pi 3B arm64化

Ubuntu 18.04LTS (arm64) を動かすことでaarch64モードで実行できる事を知ったので切り替え。
これが大変だった。 Qiitaの手順や、公式の手順でもUSB-SSDから起動することができない。
色々と試したが、どうにもらちがあかないので諦めてmicroSDカードから起動させて、
cmdline.txt の rootfs の指定をUSB-SSDにすることで、実質SSDから起動するようにした。

ラズパイのヒートシンク

純正ケースに入っているんだけれども、swapなしの状態でMysqlのdumpをロードしたらそれはそれは・・・
ひどい目にあった。ラズパイの画面に温度計が表示されるのは初めてみた。
即Amazonで注文したけれども届くのは金曜日。あーあ。

9/5

zabbixのアラートスクリプト類のレストア

この部分、 githubに上げてる docker-compose に反映した。

misskey自動アップグレード

毎度毎度 sed のアレを組み立てるのはめんどい。
https://qiita.com/yakumo/items/46fef0bca043bd350e2b

ものほし竿増設

洗濯物を溜めると足りなかったので買ってきた。お値段500円未満。おねだん以上

9/6

kaniko Mastodonに適用

適用した。

書類仕事

電気通信事業者、登録すると一覧が公表されるとかなんとからしいので保留。

TODO

k8sに移動したことによって壊れている単純なジョブの修正

  • バックアップ
  • テストインスタンスバックアップ
  • misskeyインスタンスバックアップ
  • 財団バックアップ
  • 統計情報取得(DB部分)
  • sidekiq統計取得
  • 週次メンテナンスジョブ
  • 月次メンテナンスジョブ

k8sの仕組みでオートデプロイ再構築

  • fastladder
  • writefreely
  • misskey
  • テストインスタンス
  • 本番インスタンス

writefreely への文書コピー

本当にコピー

職務経歴書

  • 外枠(プロジェクト名と日付)
  • フォーマット統一
  • プロジェクトの中身 (2018)
  • プロジェクトの中身 (2017)
  • プロジェクトの中身 (2016)
  • プロジェクトの中身 (2015)
  • プロジェクトの中身 (2014)
  • プロジェクトの中身 (2013)
  • プロジェクトの中身 (2012)
  • プロジェクトの中身 (2011)
  • プロジェクトの中身 (2011より前)
  • 自己PR

進捗ありません!

痩せる

  • プールに行って泳ぐ

そもそも

X200のWiFiがとても遅い。交換のノウハウもたくさんあるようなので
試しに交換することにした。

まず最初に

WiFiカードを交換する前に、BIOSのホワイトリストを除去したmodbiosを書き込む必要があります。

https://www.bios-mods.com/forum/Thread-Request-Lenovo-x200

既に書き込まれているBIOSと同じバージョンのmodbiosを書き込む必要があります。

Windows 10 64bitを入れている場合

modbiosに同梱されているWinPhrashが動かない(落ちる)場合は、64bit番WinPhrashを
探してきてそちらを使用すればOK

カードを購入する前に

実績があるのは、 7260HMW だけれども、同じ型番で仕様が複数ある。
なお、末尾のHMWはminiPCIを示すようで、ここが異なると別モノになるので注意。
似たような値段で、7265があるが、これは形が違う。

そして、7260の正式名称として、

866Mbpsまでいける。変えるならコレでしょう。

そして、見事に間違えて -N を買ってしまったのだが、以下の説明はこの -N の話である。

交換手順

分解

YouTube等で動画があるのでそちらを参照して頂きたいが、WiFiカードへのアクセスは、キーボード側から行う。
キーボードの接続部と、指紋センサーの接続部を切らないように注意

接続

MAINが灰色のアンテナ、SUBが黒のアンテナ線。カードのサイズが元のと異なるが、ネジ穴はちゃんとあるので
何も気にしなくて良い。
なお、この時点ではまだ完全に組み立てずに、すぐに動作確認を行った方が良い。

Windows上でドライバをインストール

Intel純正でもLenovoのドライバでもどちらも同じ。なので好きな方でよい。
これで動けばとてもラッキー。 WiFiとBlutetooth、両方ともテストすること。
なお、ドライバインストール後に一度再起動しないと上手く動作しないので必ず再起動する。
(多分、WiFiが動かないはず)

トラブルシュート

正直、この項目が書きたかった。

Bluetoothが動かない

デバイスマネージャを見ると、不明なUSBデバイスが接続されているように見えるはず。
その場合、51番ピンにビニールテープを貼ると動くようになるかもしれない。

http://fanblogs.jp/hotrodhigh/archive/131/0

ラベルに色々と書いてある面の一番右側のピンである。

WiFiが動かない

20番ピンにビニールテープを貼ると動くようになるかもしれない。

https://plaza.rakuten.co.jp/jashi/diary/200907010000/
http://wireless.sblo.jp/article/32672935.html

裏面の端から2番目である。

なお、当方の環境では

20番ピンのマスクのみで動いた。動かない場合は20番、51番両方をマスクしても良いかもしれない。
これで、本体についている無線スイッチも有効になっているし、液晶下のインジケータも純正と同じ表示になっている。

効果

LAN内のファイルサーバーからのファイルコピー速度が、7MB/s -> 12MB/s に増速された。
・・・が。有線LANだと100MB/s近く行くのでまだまだ遅い。