@AureoleArk Mastodonはドキュメントに案内があってpgbouncer使ってる人が多いんだけど、
こいつもpauseして接続先切り替えてresumeするようにすると具合がいい。
Mastodonのプロセスからコネクション維持されててちょっと応答が遅延したぐらいにしか見えないので、擬似的にダウンタイムゼロにみえる。
@AureoleArk Mastodonはドキュメントに案内があってpgbouncer使ってる人が多いんだけど、
こいつもpauseして接続先切り替えてresumeするようにすると具合がいい。
Mastodonのプロセスからコネクション維持されててちょっと応答が遅延したぐらいにしか見えないので、擬似的にダウンタイムゼロにみえる。
@AureoleArk ダウンタイムゼロまで持っていくと格好いいよね! 切り替わったことだれも気付かないw
pg_basebackupはこんな感じ。
# sudo -u postgres pg_basebackup -h xxx.xxx.xxx.xxx -p 5432 -D /var/lib/postgresql/14/main/ -U replication_user -R -P --checkpoint=fast -X stream -v && pg_ctlcluster 14 main start
xxx.xxx.xxx.xxxは元サーバのIPアドレス。ポートも指定してるけど、5432ならいらないかな。
rootになって、pg_basebackupから、完了後のstartまで一気にやる。これはUbuntu / Debian系ね。
新規のサーバでやること
・一旦データベース初期設定して、整えとく。停止状態。
・データは消しちゃう(rm -fr /var/lib/postgresql/14/main みたいな)
・元サーバのpgtune.confなど、パラメータをある程度一致させとく(コネクション数とか元と違うと蹴られたり)
・もちろんpg_hba.confなどセキュリティ設定は済ませておく
・とりあえずpsqlコマンドでreplication_userで繋がるか事前にテスト
・pg_basebackupで一気に持ってくる
・起動
・レプリケーションできてることを確認する
・(元のサーバに新規書き込みするのやめて、転送しきったら元DB止める)
・promoteする(昇格してこっちが本体になる)
・新規DBサーバへの読み書きを開始する
元のサーバでやること
・外からつながるようにインタフェースをlistenする(そのままだとlocalhostしかlistenしてない)
・replication_user作る(名前は別になんでもいい)
・pg_hba.confで、新鯖からのreplication_userでの接続を許可する
・その他のレプリケーション設定パラメータを足す(wal_level = replicaなど)
・ファイアーウォールでも接続許可する
データベースでかくなると、pg_basebackupが終わる前にどんどん新しい更新が溜まっていって、あとからではWAL転送が追いつかなくなってしまうことがあるので、同時にWALもストリーミング受信して、完了時に追いついているようにする。(そういうオプションがある)
完了したら直ちに起動したいので、そこまで一気に実行するようにコマンド書く。
レプリケーションはじまってしまえば、あとは落ち着いていつでも元をとめて、新環境をpromoteできる。
レプリケーションも、つまるところpg_basebackupで一気にコピーしてしまうだけなので、むしろdump, restoreより楽まであるよ
あさ〜。あさだよ〜
@mitarashi3799 done!
よろしくお願いします!
@mitarashi3799 www
@mitarashi3799 まあ安くしたいわけじゃないんでむしろBoothでBoostしようかなと思いますがw、お手間どうですか? 落ち着いてから発送で全然かまいません。
@bvtsang まあ優先順位は低くなるよね。
Twitterも2013年頃にはちょっとやってて隠し機能として実験してたみたいだし、Mastodonも無効化してあるけど内部実装はある。
そのうち実装されるんじゃないかなぁ。
@mitarashi3799 おはよー! 新刊でてるんだよね。ちょっと出遅れてるけど買うね!
@kamisuke おはよう、王
Twitterの暗号化メッセージ機能についてのヘルプページがあるんだけど、最高に面白いね。高度な皮肉かと思ってしまうwhttps://help.twitter.com/ja/using-twitter/encrypted-messages
※ 英語版に存在しないので、まあそういうことかなと
@An3_8008 私が投稿したやつちょっと集めておいたので、参照からみてみてください。こんな感じです。
3月末頃からイーロン・マスクさんがTwitterの株式を取得しはじめたことが明らかになったこと、で、買収。微博(中国のTwitter系サービス)で強制fusianasan(IPアドレスや地域が強制表示されるようになる)されることになったこと。そこにEUがマストドンサーバたてたとか、いくつかの要素が組み合わさってます。 [参照]
@An3_8008 日本はまだ微風って感じだけど、世界的にはかなり動いてるね
@zundan こんどE2Eにするよ! みたいなの流れてきたばかりだからねw
ログボ
@tateisu まさに。
主に、Fediverseへの関心に基づいた投稿を行うアカウントです。DTP・印刷に関する話をしたり、同人の話をしたり、カレーをブーストしたりします。Mastodonのcollaborator(開発者の一員)です。また、独自機能を盛り込んだFedibirdを管理・開発しています!Mastodonサーバ『fedibird.com』の管理者アカウントでもあります。ご連絡は当アカウントへ、サーバインフォメーションについては https://fedibird.com/about/more と @info を参照してください。#webdev #fedi22
senooken JP Social is a social network, courtesy of senooken. It runs on GNU social, version 2.0.2-beta0, available under the GNU Affero General Public License.
All senooken JP Social content and data are available under the Creative Commons Attribution 3.0 license.