limitusus’s diary

主に技術のことを書きます

AmazonLinux2でkontena-lensを使えるようにする

AmazonLinux2でkontena-lensを起動しようとしたところ、以下のようになってうまく起動できませんでした。 % kontena-lens info: Setting Lens as protocol client for lens:// info: failed ❗ 調べて何とか解決したものの、それなりに大変だったので経緯と…

Apache httpd 2.4での設定の小ネタ

Apache httpd 2.4の設定を毎回ググっては忘れるので、ポイントになるところをまとめておく 気が向いたら書き足すかも

Chefの界隈で起きた事件について日本語で書いておく

これは2019年9月に起きたChef関連OSSの削除騒ぎの経緯を個人的に記録するための記事である。この記事はどちらの立場にも立たず、確認できた記事の内容を記載するにとどめる。 記載している2019年9月24日現在、事態は進行中であり、変更が確認されれば更新し…

Chef15になったらTravis CIが全部コケた

掲題の通りです。かなしい。 ログを確認してみたところ、Chefのライセンスに同意する?っていうプロンプトが出ているようでした。 gist6e5b13d2544dbcc89235005714909790

HOWTO: release Chef cookbooks

tl;dr Use stove. I tried to release a new version of chrony_ii cookbook in the same way I used to, but it did not succeed. I found that the subcommand I was using is now deprecated, so I determined to use the dedicated tool for that. Probl…

TravisCI upgraded to Xenial, and ChefDK install failed

tl;dr Should you have a trouble on ChefDK install in TravisCI for Chef cookbook you maintain, you can fix it by fixing .travis.yml What happened I received a TravisCI notification that indicates my cookbook's weekly test build failed. The …

複数OSSのContributerになりました

年末ということで1つ記事を書いて今年を締めたいと思います。 インフラエンジニアとしての仕事も6年目となりましたが、この間にITインフラ界隈はオンプレからクラウドへの移行というものが急速に進んできているのを感じています。 そんなわけで仕事ではAWSを…

CircleCIをv1からv2に上げたら4倍速くなった話

tl;dr 今までRubyのテストをCircleCI v1で行ってきましたが、v2がGAになったことを受けてv2への移行を行いました。 結果、それまで2分40秒ほどかかっていたテストが40秒台で完了できるようになりました。この過程と効果について紹介します。

terraformのバージョンを上げようとしたらハマったのでメモしておく

terraform 0.9.11を使っていたが、あるとき0.10系がリリースされたのでバージョンアップを試みたところ、かなりハマってしまったのでメモ。 tl;dr terraform init -backend-config=/path/to/config -reconfigure

この時代にupstartに関する知見をいくつかまとめておく

背景 なぜSysVinitからupstart、さらにsystemdへと進化が進んでいる中、upstartなのかという疑問が当然ありますが、理由は簡単で最近Amazon Linuxを使っているため。 Amazon LinuxはCentOS6ベースで構築されており、入っているのはsystemdではなくupstartな…

AWSのコストを取得するgemを調べた

AWSは料金表を提供していますが、JSONを取得してごにょごにょ…と自分でやるのは何か違う気がします。どうせgemくらい誰か作ってるだろう、ということで少し調べてみました。 tl;dr 今のところamazon-pricingを使うか、やっぱり自前で書くのがいいのではない…

RDS logをRubyでダウンロード

AuroraのAudit log検証をしていて、「これ定期的にS3にアップロードしないと消えるよね?」って話になったので、まずはRDSから取ってくるとこからだね…ってことでやってみることにしました。 候補手段 方法はいくつかあるんですが、 1. rds-cliを使う もうde…

terraformのprovider aliasを使うときのtips

最近よくterraformで構成管理とか構築をやってて、ハマったのでメモ。 やろうとしたこと AWS ap-northeast-1で主な構成を組んでいて、CloudFrontでの静的コンテンツ配信をhttpsで行いたい。このときACMを利用するが、証明書はus-east-1に配置する必要がある…

はてなブログに移行しました

ふと思い立ったのではてなダイアリーからはてなブログへと移行を行いました。 既存記事は移行ツールにより全てリダイレクトされているはず… 一番人気の Server::Starterに対応するとはどういうことか - limitusus’s diary も正常に移行されています。

El CapitanでUSB-Serialを使う

OSX

その手の人には常識かもしれないんですが、OS X 10.10あたりからドライバ署名されていないもののインストールができなくなってますね。 手元にあるUSB-CVRS9はLinuxで問題なく動いていたので気付くのが遅れてしまいました。サンワサプライ USB-RS232Cコンバ…

EBSがattachされたらSlackに通知する仕組みを作った

AWS Lambdaを以前から使ってみたいなあと思っていたのですが、「何かの操作にhookする」というので試してみました。今回は「任意のEBS VolumeがEC2 instanceにattachされたら(AttachVolume)Slackのwebhookを叩いて通知する」というのをやってみました。Pytho…

ISUCON5 予選通過してきた

9/26,9/27で開催されたISUCON5の予選に9/27分で参加して通過してきました。3人チームで出場しましたが、自分の視点での時系列でまとめておこうと思います。 (書いてある内容は自分の作業だけではありません) 概要 spec: n1-highcpu-4 (4vCPU, 3.5GB RAM) 1台…

YAPC::Asia 2015レポ

去る8/20,8/21でYAPC::Asia 2015に行ってきました。2012,2013ではstaff参加し、2014,2015は普通の参加者です。 今年は最後のYAPC::Asiaということで、(個人スポンサーチケットは買えなかったけど)参加してきました。 本当はスタッフ参加できればよかったのだ…

うるう秒をテストしたら仮想インタフェースが落ちた話

今月末はうるう秒が予定されていますね。 http://jjy.nict.go.jp/news/leaps2015.htmlこれについては様々なところで「何が影響を受ける?」「どう対応する?」などが書かれています。今回はその中でも、「事前に試験環境でうるう秒を入れてみる」ことについ…

Perlからshared objectの関数を呼び出す

今回のお題 foo.so に含まれている関数 void func(void) をPerlから呼び出す。 プロトタイプ宣言の通り、引数は取らないし戻り値もない(あるいは見ない)。 やりかたはいくつかあって、 普通ならXSモジュールを書いて対応する。 ただこのシンプルな目的のた…

Perlのglobはもうshellを呼ばない

もう10年以上前の話だが、メモ。IPAのセキュア・プログラミング講座にある4-2. Perl の危険な関数には以下の記載がある。 便利な<> 構文,glob関数であるが,実は内部的にシェルを呼び出している。そのためリスト7の1行目のような文字列を渡した場合,パス…

PerlでGoogle Calendar APIを勉強

アラートのメール通知がきたらGoogle Calendarに記入しておくとあとで振り返るのが簡単なんじゃないかなーと思ったので、まずはお勉強から。 要素 できるようになってから振り返ると、以下の要素を理解する必要があった。 REST OAuth 2.0 Application Creden…

PerlでTwitter API SSL化に対応するたった1行

手元でTwitterの古いpostを削除するスクリプトをcron実行してるのですが、Twitter APIってSSLのみ対応になったのをすっかり放置してしまっていました。 cron実行に失敗してメール通知が来たので1週間くらい経ってようやく対応。Net::Twitterを使っているので…

Parallel::Fork::BossWorkerAsyncがいい感じ

先日 id:hirose31 と 並列処理はParallel::ForkManagerとかParallel::Preforkが定番だけど、もうちょっと効率よくやりたいこともある P::ForkManagerはタスクごとにforkするので負荷の分散は綺麗にできるが、タスクの数だけforkが発生して効率がよくない P::…

Server::Starterに対応するとはどういうことか

StarletやStarmanと組み合わせてよく使われているServer::Starterですが、普段気にしないような部分を読む機会があったのでメモ。Server::Starterは --port (TCP) や --path (Unix Domain Socket) を渡すとこれでlisten(2)して起動するworkerに引き渡してく…

YAPC::Asia 2013 Staff Report

去年の YAPC::Asia 2012にStaff参加してきた - Limitの日記 に引き続き、今年も YAPC::Asia 2013 のStaffとして参加してきました。 今年も「ブログを書くまでがYAPC::Asia」ということで、書きます。今年は僭越ながら多目的教室2という部屋のリーダーを仰せ…

MacBook Air 11インチ用ケース

4年くらい前に800円くらいで買ったケースがだいぶボロボロになってしまったので、いっそのこと、ということで新しいのを買うことに。 近所の電器店で眺めて、収まりのよさそうなやつを選択。いい感じ。だが、結果的にはAmazonで買った方が安かったじゃないか…

MacのDockが暴走した

最近メインで使っているのはMacbook Air (Lion) なのだけど、数日前から妙に動きが重くなり、ファンもうるさくなったのでちょっと調べてみた。 まずhtopで長めてみると Dock がCPU 100%食っていた。原因はまずこれだ。 減少としては17秒くらいに1回DockがSIG…

YAPC::Asia 2012にStaff参加してきた

日本で最も大きなPerlの会議、YAPC::Asia 2012に参加してきました。 去年は学生チケットで参加させていただいたのですが、今年はボランティアスタッフとして。ということで、スタッフをやりながら印象に残った発表などを書いていきます。 前夜祭の日は参加で…

Githubの証明書問題をまっとうに解決する

github SSL certificate problem - A Life Less Ordinary と同じ問題に遭遇してしまったので、まっとうな解決策を探ってみたところ、無事に解決できたのだが、どうやら同じようなことをしているページが見つからなかったので書いておく。 error: SSL certifi…