TL;DR flush slow logs のタイミングでバイナリログに書き込まれる それによって GTID がズレる = errant transaction このスクリプトを mackerel-agent で定期実行することで解決 事象 あるタイミングでスレーブの GTID が進んで errant gtid が起きる。 f…
なにしてるの errant transaction の検知 errant transaction の修正 can-replicate-from-gtid を叩く Mackerel で使う なにしてるの errant transaction の検知 errant transaction の修正 can-replicate-from-gtid を叩く errant transaction の検知 funct…
dnf め... mysql repo を入れる # dnf install https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm -y mysql-community-server を探す # dnf list | grep mysql-community-server mysql-community-server-debug.x86_64 8.0.19-1.el8 mys…
これを使う grafana.com generator.yml ↑ の generator.yml は古い書き方で現在の generator では使えない。 こうする ↓ modules: edgemax: walk: - ifHCInOctets - ifHCOutOctets - ssCpuIdle - memTotalFree - memTotalReal - hrSystemUptime lookups: - s…
今回は S3 簡単なやつ使うモジュール s3_bucket s3_lifecycle バケットの作成 - name: Create a bucket s3_bucket: name: "{{ project }}-dbbackup" state: present region: ap-northeast-1 ライフサイクルの追加 - name: Add a lifecycle s3_lifecycle: nam…
よくあるアフィ記事のタイトル風 Cloudflare 無料で色んなことできるのに周りで使っている人が少ないから布教してみる。 Cloudflare Cloudflare の日本でのシェア Cloudflare の企業ミッション 無料で使える (無料)証明書の用意なんてしなくても HTTPS が…
xbcloud xbcloud を使う理由 50GB を超えれない xbcloud はインストールが手軽 フルバックアップ リストア デメリット xbcloud www.percona.comxtrabackup (innobackupex) と S3 (minio) とか GCS と組み合わせるときに、公式純正の CLI よりも速いしリソー…
これの続き blog.luispc.comログ監視、ここではアプリケーションのエラーログについて Slack に通知をする fluentd.conf ネストされた JSON を展開する アプリのログ以外は無視したい Elasticsearch に送りながら Slack に送る 確認 Tips ロガー Gin を Grac…
新年1発目 アプリケーションのログを標準エラーに出力する zap がパフォーマンスが良いという意見だけで zap にした。結果、こんなのが標準エラーに出力されるようにした。 { "level":"error", "ts":1577969526.688373, "caller":"lib/logger.go:29", "msg"…
TL;DR 静的配信 WordPres は重い セキュリティ対策 wp2static wp2static を使ったワークフロー デメリット WordPress 本体の話 WordPress からはてなに移動したのに 仕事で WordPress を扱うとは思ってもいなかった。 TL;DR 静的配信をしよう 静的配信 なん…
フロントはメンテ入れた。 後は API 本番環境でやらかしちゃった人 Advent Calendar 2019 - Qiita ※ 追記 2019/12/21 0時31分 ご指摘を貰ったのでこの Advent Calendar の必須項目があることを知らんかったので追記します。 惨劇はなぜおこってしまったのか …
お金あります?僕はありません。 良い感じのコンテナレジストリが欲しいですか?ありますよ。Dockerhub は無料だとプライベートは1つしか持てないけど無制限に作れるやつがあるんです。GitLab の中にあるんですが。 https://docs.gitlab.com/ee/user/packag…
drone のどっかのバージョンから server と runner が別イメージになった。 job "drone" { datacenters = ["luis"] type = "service" update { max_parallel = 1 min_healthy_time = "10s" healthy_deadline = "3m" progress_deadline = "10m" auto_revert =…
今の所順調です。 blog.luispc.comあとは CI/CD を作るわけで、ワイの自宅には Drone が動いているので Drone を使って Nomad へデプロイをする。 github.com .drone.yml kind: pipeline name: default platform: arch: amd64 steps: - name: build docker i…
前回こんな記事を書いた後に、コンテナオーケストレーションを導入した。 blog.luispc.com 今までの構成はイケてなかった オンプレに k8s の環境はしんどかった マネージド k8s k8s に拘るのをやめた Nomad + Consul の構築は簡単だった Nomad + Consul 構築…
CentOS 8 を最近触るようになった。 dnf install --nobest 例えば、依存関係でパッケージが入れることができなかった場合 [root@nomad01 ~]# dnf install docker-ce Last metadata expiration check: 0:03:38 ago on Thu Dec 5 21:34:46 2019. Error: Proble…
個人開発 Advent Calendar 2019 5日目です。 qiita.com個人開発をやる上でやらないといけないこととを紹介してみようと思います。 Easy Uploader easyuploader.app僕が作ってるサービスです。 普通のアップローダーです。他のアップローダーと差別しているの…
Ansible Advent Calendar 2019 2日目ーーー qiita.com1日目は sky_jokerxx さんのこちらの記事でした。 sky-joker.tech2018 の Ansible Advent Calendar ではこんな記事を書いていた。 blog.luispc.com モジュールを作った経緯 Go で Ansible モジュール作る…
Proxmox で特定のプールだけに対しての操作を許可する ユーザーを作る グループを作る ロールを作る プールを作る グループにユーザーを追加 グループとプールを紐付ける Proxmox で特定のプールだけに対しての操作を許可する ユーザーを作る # pveum userad…
InnoDB Cluster クエリが少ないとき クエリが多いとき 最低5秒以上で MySQL Router は新プライマリへ切り替わる MySQL Router のメタデータが更新されるタイミング InnoDB Cluster 環境は MySQL 8.0.17 Single-Primaryパターンは下記2つ クエリが少ないと…
tar + pv journalctl -fu service tar + pv $ pv backup.gz | tar xf - --use-compress-prog=pigz -C /mnt/data $ tar cf - --use-compress-prog=pigz mysql -P | pv -s $( du -sb mysql | awk '{print $1}' ) > mysql.gz journalctl -fu service systemctl …
今までプライベートクラウドで動いてたサービスが、データセンターの閉鎖に伴いどこかに移設しないといけない物語に AWS DMS を使ったので覚書として書いておく。 DB は 1.5TB の 45 億レコードとそれなりに大きいけどメンテ時間は動作確認を除いて 30 分ぐ…
既存のテーブルが Group Replication に準拠してるか エンジンが InnoDB かどうか テーブル構造が Group Replication 準拠か 既存のテーブルが Group Replication に準拠してるか エンジンが InnoDB であることが必要 Primary Key が必須だよ エンジンが Inn…
「お前のタイトル良く分かんねえんだけど?」 アクセスログに Cloudflare じゃなくてクライアント IP にしたい!&Cloudflare からのみアクセスしたい! 1. Cloudflare からプロキシされたアクセスを Nginx のアクセスログのクライント IP を正しいのにする …
俺的 MySQL 8 メモ 俺的 MySQL 8 メモ 1. MySQL 8 から SET PERSIST が使える 1. MySQL 8 から SET PERSIST が使える SET GLOBAL のグローバル変数の変更に加えて、再起動しても反映されるようになる。 mysql> SET PERSIST innodb_buffer_pool_size = 268435…
1. MySQL Router はどこで動かすべきか 2. MySQL Router を挟むことでパフォーマンスに影響はあるか 2. bootstrap を実行したあとは気をつけろ 3. REST API で MySQL Router のメトリクスを取りたい REST API の有効化 1. MySQL Router はどこで動かすべきか…
1. admin ユーザーを作成する DRONE_USER_CREATE=username:octocat,machine:false,admin:true,token:55f24eb3d61ef6ac5e83d550178638dc2. drone-cli インストール docs.drone.io3. drone-cli 設定 $ export DRONE_SERVER=http://192.168.20.21:8081 $ export…
Kubernetes 勉強したい 手順 1. k3OS iso download 2. ↑ の iso で VM を作る 3.1, server としてインストール 3.2. agent としてインストール 4. Reboot 後 3. 確認 Kubernetes 勉強したい ということで、自作サーバー3台(Proxmox)上に k3OS を3台用意…
めっちゃ参考になるやつ。 yakst.comフェイルオーバーはしても Non-GTID だと CHANGE MASTER が実行されずに孤立した。 けど、↑ の yakst を見ると何も問題ないように書かれてる。 公式ドキュメントにも、GTID(Pseudo−GTID)じゃないと孤立するよとは書かれ…
Cloudflare WorkersKV 夢あって、個人サービスに導入してみたので感想 uploader.xzy.pw Cloudflare WorkersKV について 料金 始め方 公式 SDK で WorkersKV の操作 ベンチマーク 本番で Cloudflare WorkersKV を使うのはやめたほうが良いかもしれない たまに…