なんかかきたい

プログラミングなどの個人的なメモやサークル「ゆきいろパラソル」の情報を載せてます

技術系

【読み物】2022年にJenkinsのジョブ管理を自動化するには時代が追いついていない

完全に理解したから何もわからないに突入したので2022年現在の状況をまとめておこうと思います。 Jenkins自動化完全に理解したの人向けのメモなので、Jenkinsfileをまだ触ったことがない、ちょっと触っていて便利かもって人向けではないです。 先に結論だけ…

Cloudflareの障害の件

本日15時27分(JST) cloudflareで大規模なサーバ障害があり、多くのWebサービスの利用に影響が出ました。 インターネットではAWS障害かという声もありましたが、cloudflare (CDN) の障害でした。 世界的な影響となった割に、比較的短時間で復旧が行われ 16:42…

Ubuntu 20.04 の /boot に使っているパーティションでext4拡張を有効にすると grub でブートできなくなる

Ubuntu 20.04 の /boot に使っているパーティションでext4拡張を有効にすると grub でブートできなくなる 辛いけどこれが現実なのよね。 今回は grub rescue: unknown file system になってしまったのでご報告と復旧方法の共有です。

elasticsearch 6.7を7.12までアップグレードする

こんにちは、百合好きインフラエンジニアです。最近はわたなれが熱いですね。 今回はelasticsearchのバージョンアップをやっていこうと思います。

AWSでAZ障害が起きたので困ったことを書いておく

前にも似たようなこと書いたなと思ったけどもう一年半も前のことになるのか t-cyrill.hatenablog.jp ご存知の通り昨日 2021/02/19 23:20頃 AWSにて東京リージョンの一つ apne-az1 にて大規模な障害が発生。多くのAWSを利用していたサービスで影響があった。 …

MySQLの証明書をローテーションする方法を書いておく

前書き MySQL certificate rotate とかでググってもよくわからなかったので書いた。 RDSの情報はあるが、ネットにはあまり書いてない話題かもしれない。 サマリー 再起動またはMaster昇格が必要 影響を最小限にするためクライアントの証明書を現Masterと新Ma…

ISUCON10 本戦に鍋部2人前のインフラ枠で参加しました

諸事情でISUCON10の本戦に並行チーム枠として参加させていただきました。本当に疲れたのでざっくりとまとめだけ。

Jenkins Configrations as Code と Groovy サンドボックス

サマリー JenkinsにはGroovyを実行する機能があるが、任意のコードの実行を防ぐため、実行できるメソッドを制限する Groovy Sandbox という仕組みがある。 Groovy Sandbox を有効にするには、Authorize Project plugin で特定のユーザ権限で動作させる必要が…

AWSでAZ障害が起きたのでなるべく影響を受けない構成の考えを書いておく

AZ障害は受け入れるしかないクラウド時代のインフラ ただの日記。 今日の昼、AWSを利用している人たちは大変だったところもあると思う。 AZの一つが丸々機能しなくなる大きなAWSの障害があり、AWSを利用して運用されていたサービスは多かれ少なかれ影響を受…

rsyncでpigzするやつ v2

普段よく使っているのでリモートからローカルにコピーする場合に使えるように機能拡張した。 ほとんど同じコードなのに共通化できなくて辛い。ifで分岐して二つのシェルスクリプトを一個にしたような作りがイケてないが使い勝手はよい。 細かい話だと rsync …

Jenkins job-dsl-plugin の Dynamic DSL について書いておく

Dynamic DSLについては以下を読めばわかるがググっても日本語が出てこないのでざっくり書いておく https://github.com/jenkinsci/job-dsl-plugin/wiki/Dynamic-DSL

MySQLで定期的に SHOW PROCESSLIST を実行して長時間走っているクエリを探す

前略、大きいMySQLのデータベースがあります。すると、大きなデータベースから多くのデータを取得するため、非常に重いクエリが実行されることがあります。 そうするとデータベースが高負荷になるため重い処理を見つけたくなります。 (innodb_query_queued …

nginxでupstreamをhttpsにしたいとき

ちょっとだけ知って置く必要がある設定があるので残しておく。あまり難しくはない。 証明書を更新しておく CentOSならyum、Debianならapt、その他はいい感じに。 yum install ca-certificate nginx をビルドする がんばってください。 SSLを使うことになるの…

カスタムして作った CentOS7.4 をAWSの M5, C5 で動かすときに落ちた沼について書いておく

今回もそこそこの不幸があった。普通にセットアップする分には簡単な案件だけど、ちょっと面倒なオプションがついて、カスタムしてダレカの作ったAMIをいい感じに新しいタイプのインスタンスで動かしたいというのがきた。やれやれ。 前知識 新しい世代のEC2…

zabbixについてまとめておく

Zabbixは総合監視ツールでmuninのようなメトリクスグラフを出したり、nagiosのような死活監視を行う機能をまとめて持っている便利ツール。 prometheus + grafana のように高速ではないが、長く使われているためそれなりの情報がある。 反面、古いといえば古…

AWS CodeDeployについて書いておく

CodeDeployはAWSが提供しているアプリケーションコードデプロイの仕組みで、各サーバに特権で動くagentをあらかじめインストールしておき、CodeDeployにデプロイ指示を出すと、agentがコードをダウンロードし、サーバ上で任意のコードを実行することで、アプ…

AWS CodePipelineからCodeBuildを呼んでlambdaで古いAMIを消すといい感じになる

前回の続き t-cyrill.hatenablog.jp AWSでAMIの作成をCodeBuildを使って自動化したけど、CodeBuildが動く部分も自動化したいので、Githubに置いてあるリポジトリのmasterにマージされたタイミングで自動的にAMIが作られるといい感じなんじゃないかと思って、…

AWSの管理をterraformとroadworkerにした

Ansibleのcloud_moduleで大量に書かれたplaybookをterraformに少しずつ移して、 Route53の管理だけをroadworkerに移してみたのですが、 今のところうまくいっているようなので紹介しておきます。 terraform HashiCorpのGoで書かれたオーケストレーションツー…

git-browse-remoteが恋しくなったのでgolangで書いてみた

現職場で何か足りないなーと思っていたことがあって、そうか git-browse-remote かと思ったので、お得意の gem install しようと思いましたが、 手元のRubyはバージョンアップのたびに入れなおすのが面倒と思ったので、golangの勉強がてらgoで書き直すことに…

HOMEを手に入れる話

世の中にはいろいろな不幸がある。今回の不幸はユーザが作れないLinuxサーバの運用を任されたことだ。 まあ、こんな不幸は滅多に遭遇することでもないとは思うけど、今後また同じ不幸に遭遇した時のために書いておく。 こんな情報いるのか?という疑問もある…

そこそこ使えるストレージサーバを作るときに考えていたこと(概念)

前置き 私がWebサービスの会社でサーバ構築・運用の仕事をやっていた頃の話です。 ストレージサーバはユーザさんのコンテンツを保存する重要なサーバでしたが、 コンテンツの増加に伴い、既存のサーバでは十分な性能を出せていなかったことがありました。 運…

C92夏コミに来てくださった皆様、ありがとうございました!

C92お疲れ様でした。ようやく落ち着いたのでちょこっとアフター記事を書きます。 今年の夏コミは曇りということもあって比較的涼しく過ごしやすい天候でしたね。 た13bは東7ホールの端っこです。よろしくお願いしますー pic.twitter.com/yHswKSOIf2— シリル…

PXEBOOT/BOOTP/DHCPあたりのことをまとめておく

この辺りはよく使ってる技術なんだけど一回作ってしまうと細かなことは忘れてしまうし、 AWSのようなクラウドサービスを使っていると触れる機会も減ってしまうので、 覚えているうちにまとめておこうと思う。 PXEBOOT ネットワークカードに搭載されているPXE…

老エンジニアだけど dotfiles を更新したい、だけど慣れた設定書き換えるのって怖くない?辛い...って思ってサボってきた更新をなんとかした話

概略 最小のSandbox環境を作る。 イマドキ風にやるならdockerとかVMとか。 とりあえずDebian系で動けばいいので、debootstrap + chrootで動かす。 /home/$USER を git init してコミット どうせ Sandbox だし乱暴する dotfiles をいい感じに書き換えてセット…

Dotenvはproductionで使わないほうがよいのではという話の続き

前の話 t-cyrill.hatenablog.jp もう二年近く前の話になりますが、昔の書いた記事のアクセスが地味に多いので、 結局自分はどうしているのかという話を少しだけ書きます。

真剣にRedisを使ってみようという気持ちになったのでRedisについて知っていることを書く

年末ですね。更新がおろそかになっていたので、たまにはちゃんとした話をしたいなと思い、前々から書こうと思っていたRedisの話を書いてみました。 検証に使用したRedisは3.2ですので、新しくバージョンが変わると以下の話は変わってくるかもしれませんが今…

C90夏コミありがとうございました&サークル活動の休止について

C90でゆきいろパラソルのブースに来てくださったみなさま、ありがとうございました。 今回も無事「ひだまりPHPシリーズ」の新刊を出すことができました。 あと、10部ほどコピー本も用意してみました。Kinko'sさんで初めて作ってみたのですが、無事刷れてよか…

MySQL 5.6の InnoDB バッファープールのプリロード機能が優秀で頭悪いクエリを投げなくても良くなった

再起動を高速化するための InnoDB バッファープールのプリロード https://dev.mysql.com/doc/refman/5.6/ja/innodb-preload-buffer-pool.html 特に大きなバッファプールを扱う場合にMySQLを再起動すると、起動直後はメモリにDBのデータが乗っていないので大…

Elasticsearch 1.7から2.3にアップグレードする

重い腰を上げてElasticsearchのメジャーバージョンアップを行うことになったのでメモ。

Fluentdを使ってKibanaにデータを入れてるけど一部のログを落としていたのでリプレイしたい

Fluentdを使ってKibanaにデータを入れてるけど一部のログを落としていたのでリプレイしたいってときに、 取りこぼした時間分のログを置いて、Fluentdに読み込ませて送ればいいじゃんっていう気持ちになるけど、 ログの量が多いとクライアントが高速にログを…