Running Ghost blog on Nomad Cluster
nomad

Running Ghost blog on Nomad Cluster

このブログは数年間単一のサーバーで稼働していました。学習も兼ねてわざわざ自前でサーバーを運用していたのですが、最近新しい構成に移したくなり、Kubernetes の流行もあってクラスターやマイクロサービスといった時代の流れに乗るべく、Nomad クラスターへの移行を行いました。Nomad クラスターの作成までは下記記事にまとめています (インフラやクラスターの設定等はここからさらに変更しています)。Nomad クラスターを作成する今回はこの Nomad クラスター上で Ghost を動かすところまでをまとめます。構成以下の通り、DigitalOcean のマネージドロードバランサー配下に Droplet を 3台配置し、クラスターを構成しています。クラスターを構成するノードではそれぞれ Nomad と Consul が稼働しており、Consul でサービスディスカバリーを、Nomad でワークロードオーケストレーションを行なっています。稼働しているジョブNomad

  • Lorentzca
    Lorentzca
7 min read
OTOKOMAE CAMP #7
camp

OTOKOMAE CAMP #7

今年も男前キャンプに参加してきました!!⛺男前キャンプは水道橋にあるアウトドアをコンセプトにしたカフェバー、 BASE CAMP のオーナーである A-suke さんが主催しているイベントです。男前キャンプカフェ&バー BASE CAMP の紹介私は今回で3回目の参加となります。男前キャンプ#5に参加してきました!男前キャンプ#6に参加してきました!会場は月尾根自然の森キャンプ場でした。その名の通り、尾根にあるキャンプ場で森の中にある素敵な場所でした。キャンプ場の概要は以下。朝から入れる釣り堀がある直火は禁止ゴミは持ち帰り水道有りシャワー有りトイレ有り (汲み取り式)中央線梁川駅から徒歩で15分ほど (坂を登っていく)駅前に個人商店有り (9時開店) 今回の男前目標は、バックパック1つ、電車で参加木と木の間にロープを張り、張ったロープを使ってタープを設営する方法を試してみる薪は全て落ちている枝を使う (バックパックでそもそも薪持っていけないので)でした。出発〜

  • Lorentzca
    Lorentzca
6 min read
Create Nomad Cluster on DigitalOcean
nomad

Create Nomad Cluster on DigitalOcean

Nomad 上にこのブログ (Ghost) を移そうと考えています。 Nomad by HashiCorp そこで、まずは Nomad クラスターを DigitalOcean 上に作成してみました。 この記事の一番最後にクラスター作成に使用している Terraform のファイルを貼っておきます。 Nomad とは Nomad とは Docker コンテナや Qemu 仮想マシン、 Java アプリケーション等のデプロイ、それらによる処理の実行の管理を自動的に行うツールです。 つまり、ワークロードオーケストレーターです。 Introduction - Nomad by

  • Lorentzca
    Lorentzca
9 min read
Manage state files on Terraform Cloud
terraform

Manage state files on Terraform Cloud

先日発表された Terraform Cloud の Remote State Management 機能、絶対いいやつなので試してみます。 Introducing Terraform Cloud Remote State Management Terraform Cloud とは Terraform Cloud とは terraform のために作られた SaaS です。 以下のような機能が (今後公開予定の機能も含め) あります。 state ファイル管理ストレージ terraform を複数人で運用するためのコラボレーション機能 terraform

  • Lorentzca
    Lorentzca
3 min read
I am Mackerel ambassador
mackerel

I am Mackerel ambassador

先日 Mackerel アンバサダープログラムへ招待いただき、アンバサダーの任を仰せつかりました。 🙏🙏🙏 Mackerel アンバサダープログラム はじめます! - Mackerel ブログ #mackerelio Mackerel は愛着のある監視サービスであり、プライベートでも有料プランを契約し使用しておりました。 mackerel - ゆるふわキャンパー Mackerel との出会い 前職で、まだ Nagios や Cacti をメインに使用していた時代に社内勉強会で取り上げられていたのをきっかけに知りました (確か)。 それから Mackerel の採用が決まり、 Mackerel への移行やプラグインの作成等を業務で行なっていました。 勉強も兼ねて運用している当ブログをホストしているサーバも個人で取得した Mackerel

  • Lorentzca
    Lorentzca
1 min read
Monitor lock status with Mackerel
mackerel

Monitor lock status with Mackerel

Sesame というスマート鍵を購入し、より快適な生活が手に入りました。 セサミスマートロックを買った また、 Sesame の API を試してみました。 Sesame API を試す 次の段階として、鍵の状態を Mackerel で監視してみます。 ※念のため補足すると、公式アプリでも鍵の施錠/開錠を検知したら push 通知することができるので、必要最低限の監視はできていると言えます。 なぜ監視するのか ちょっと話が横道に逸れますが、スマート鍵の導入に興味がありつつためらう理由の一つに、セキュリティが挙げられるんじゃないかな、と思っています。特に「不具合や誤作動で知らないうちに解錠される可能性があるんじゃないか」「クラッキングされて解錠されてしまうことはないのか」という点が不安に思われるんじゃないかな、と思います。 個人的には不具合で解錠されてしまう可能性より、

  • Lorentzca
    Lorentzca
6 min read
Sesame API
smartlock

Sesame API

Sesame というスマート鍵を使い始めてはや1ヶ月が経ちました。 セサミスマートロックを買った Wi-fi と接続するモジュールも買い、 Sesame はもはや生活に欠かせない機器となりました。神。ハンズフリーで解錠できることがこんなに快適だったなんて! Wi-fi モジュールを買ったことでインターネットと接続できるようになり、 API も使えるようになったのでとりあえず鍵かかってるか API から取得してみます。 条件 API を利用するための条件です。 Wi-fi モジュールを購入し、セットアップ済みであること (Sesame がインターネットへ接続している必要があるため) Sesame の設定でクラウド連携が有効になっていること API キーの取得 Sesame 公式サイトのダッシュボード (BETA) から API キーを取得できます。

  • Lorentzca
    Lorentzca
1 min read
Sesame Smart Lock
iot

Sesame Smart Lock

帰宅時に鍵をゴソゴソするのが面倒 (特に雨天時の買い物帰り) で Sesame というスマートロック製品をポチりました。 ポチった!在庫切れなのでいつ届くか…。セサミminiが出たらキャンセルしてminiの方買おうかな。— †深淵の覚醒者† (@lorentzca) 2019年2月9日 在庫が無く2億年ほど待ちましたがようやく届いた!!! 届いたので続き。幅はビクトリノックスとほぼ同じ長さ。事前に大きさ測ってはいたけど、思ったよりずんぐりした印象! pic.twitter.com/OmkZqTHcZK— †深淵の覚醒者† (@lorentzca) 2019年3月30日 Amazon で買いました。 Amazon.co.jp: 【Works with Alexa認定製品】

  • Lorentzca
    Lorentzca
4 min read
Cloud Support Engineer Recruiting Day!
meetup

Cloud Support Engineer Recruiting Day!

下記イベントに参加してきました。🏃 クラウドサポートエンジニアRecruiting Day! | Peatix サポートエンジニアNight さんのイベントは以前にも一度参加していて、サポートエンジニアに焦点を当てたイベントは (多分) 珍しいので、あまりサポートエンジニアについて知らない方が参加してみても楽しいんじゃないかな〜と思います。 以前参加した際の記事はこちらです。 サポートエンジニアNight vol.2 例のごとく感想を書きます。 お客さまの課題をエンジニアリングで解決する" Mackerel CRE のアプローチ @a_know さんと @mur_ms_ さんの登壇でした。この前お二人の対談記事も上がっていましたね。 はてなで働くエンジニアにアンケートシリーズ第4回 a-know, missasan - Hatena

  • Lorentzca
    Lorentzca
5 min read
Alaexa, when's garbage day?
alexa

Alaexa, when's garbage day?

今まで実家に住んでいたのですが、去年の12月に目黒区へ引越ししました。 そこで問題になったのがゴミの日がよくわからんということです。 なので Amazon Echo Dot (第3世代) に教えてもらうことにしました。 Amazon Echo Dot 実家にいた頃も Amazon Echo を所有していたのですが、それは親が主に音楽を聴くのに使用していたので置いていきました。 そこで新しく買ったのが Amazon Echo Dot です。第3世代は前の世代より少し大きくなったみたいですが、その分音質が良くなったみたいです。大きくなったと言っても手のひらサイズで十分小さいです。 Amazon | New Echo Dot - コンパクトスマートスピーカー 開発環境 Alexa

  • Lorentzca
    Lorentzca
5 min read
I bought Iris Keyboard PCB
mech-keyboard

I bought Iris Keyboard PCB

現在 Planck という自作キーボードを使用しています。 planck - ゆるふわキャンパー Planck は1年弱ほど仕事でもプライベートでも使っており、既に手に馴染み非常に良い感じなのですが、そろそろ分離型の自作キーボードに手を出してみます。(単に組み立ててみたいという気持ちもありますが)以下の理由からです。 より疲労が少なそうな分離型を使ってみたい Planck は半分お試しという目的があった 40% キーボードが自分に合うか 格子型のレイアウトが自分に合うか はんだ付けする部分がキースイッチ(とオプショナルで LED ライト)のみで初心者向け というわけで分離型、何が良いかな〜と物色した結果 Iris を選びました。理由は以下の通り。 40% キーボードと格子レイアウトが手が疲れず気に入ったので同じテイストのもので かつ分離型 キーの配置がエルゴノミクス

  • Lorentzca
    Lorentzca
4 min read
I'm going home button
aws

I'm going home button

毎日仕事が終わった際に、これから帰るよ〜的なメッセージを LINE で送っているのですが、この作業をボタンにしてみたら便利かと思ってやってみました。 勉強のために勢いで買った AWS IoT エンタープライズボタンの使い道として手頃だったというのが本音…! 使うボタン AWS IoT エンタープライズボタンを使います。 Amazon.co.jp: AWS IoT エンタープライズボタン 仕組み AWS IoT 1-Click に AWS IoT エンタープライズボタンを登録し、ボタンの押下をトリガーに LINE へメッセージを送る Lambda 関数を実行しています。

  • Lorentzca
    Lorentzca
3 min read
Open dictionary from command line
fish

Open dictionary from command line

わからない単語があった時、 macOS ではトラックパッドを使うことで簡単に辞書を引くことが出来ます。 調べる:Web ページやメールメッセージのテキストを強めにクリックすると、そのテキストに関する詳しい情報が表示されます。情報源は、辞書や Wikipedia などです。 感圧タッチトラックパッドの使い方 私は現在 Magic Mouse 2 を使っているのですが、 Magic Mouse 2 ではトラックパッドのような簡単に辞書を引くジェスチャーがありません…。 私は普段ディスプレイを2つ使っていて、大抵1つはターミナルを開いていて、もう片方はブラウザを開いています。普段の使い方的にターミナルから辞書を引ければ結構便利そうなので、 dict コマンドを作成して簡単に辞書を起動出来るようにしてみました。 fish shell を使っているので fish shell でコマンドを作成します。

  • Lorentzca
    Lorentzca
1 min read
Customize Planck key map
planck

Customize Planck key map

Planck のキーマップの設定方法をまとめます。 Planck については以下。 planck - ゆるふわキャンパー キーマップを CircleCI で自動ビルド & GitHub へリリースしている話は以下。 キーマップのビルドとリリースを CircleCI で自動化する GUI で設定する方法 EasyAVR というキーボードのファームウェアを GUI で作成するツールがあります。 Planck 以外にも色々対応しています。 GitHub - dhowland/EasyAVR: Easy AVR USB Keyboard Firmware

  • Lorentzca
    Lorentzca
3 min read
Create Kubernetes Cluster on DigitalOcean
digitalocean

Create Kubernetes Cluster on DigitalOcean

このブログは DigitalOcean 上で動かしています。サーバの構築は Terraform で、ミドルウェアの設定などは Ansible で行なっているのですが、そろそろ飽きてきたので Kubernetes に移行しようと考えています。 そこで、まずは Kubernetes クラスタを DigitalOcean 上に作成するところからやってみます。 使用するツール クラスタの構築を全て手動でやるのはかなり苦しそうなので kops (Kubernetes Operations) を使ってみます。 GitHub - kubernetes/kops: Kubernetes Operations (kops) - Production

  • Lorentzca
    Lorentzca
4 min read
HashiCorp UG Japan Meetup #3
meetup

HashiCorp UG Japan Meetup #3

行ってきた!✨ DevOpsを支える今話題のHashiCorpツール群について - connpass 補欠だったんですが、藁人形20個分くらいでなんとか繰り上がりました。 生ハム生ビール、ワインなどが設置されていました。 例によって感想などを書きます。 ※ 日を跨ぐと公開するのがめんどくさくなるので生メモの状態で公開します。スライド等上がってきたタイミングで清書しようかな…。 ご挨拶、HashiCorpについてご紹介とツール解説 hashicorpの紹介。 学生時代に作った会社なのか…vagrantから始まったらしい。 vagrantとpackerはoss。 terraform, vault, consul, nomadはエンプラ版がある。エンプラ版は可用性とかパフォーマンスの面が強化されている。あとサポートがある。 vaultの説明とconsulの説明が気になる。 vauld: セキュイリティのツール。「ipベースのセキュリティは難しくなるだろう」「ダイナミックに変化していく時代」をれを解決するのがvault。「権限の管理を確実にできるソフトウェア」「1つ1つのデータをエンクリプションしてauthorizationして管理する」 consul(コンソル?

  • Lorentzca
    Lorentzca
4 min read
Build and release keymap on CircleCI
circleci

Build and release keymap on CircleCI

ここ数日、組み立てた Planck キーボードのキーマップをあれこれいじっています。 planck - ゆるふわキャンパー キーマップはファームウェアの一部として C 言語で書かれているのでコンパイルする必要があります。 私はファームウェアのリポジトリを自分用にクローンして、そのリポジトリに対して PR を出して変更を加え、コンパイル・適用する運用をしています。 俺のキーマップ by lorentzca · Pull Request #1 · lorentzca/qmk_firmware · GitHub あれこれ試しながら楽しく作業しているので、一連の作業を手動で行うことは今のところさほど苦痛では無いのですが、私は PCB のリビジョンが違う2台の Planck (家用、

  • Lorentzca
    Lorentzca
2 min read
Assembly second Planck keyboard
planck

Assembly second Planck keyboard

今年の3月に Planck を組み立てました。 Planck の組み立てと使い心地の感想 上の Planck は会社で使用しています。とってもいい感じです。 そして上記の記事にもボソッと書いてあるとおり、 Massdrop で2台目も注文しており、ようやく8月に入って届きました! 🎉 Massdrop x OLKB Planck Mechanical Keyboard Kit 出荷の進捗がメールで度々来ていたのですが、品質に問題が発生して作り直したり、色々あったみたいです。 🙏 この2台目は家での使用、もくもく会などへの持ち運び用にします。 ※ Massdrop の Planck は PCB のバージョンが古く、 (Rev4) 最新の

  • Lorentzca
    Lorentzca
2 min read
Mackerel Meetup #12 Tokyo #mackerelio
mackerel

Mackerel Meetup #12 Tokyo #mackerelio

第12回目となる Makerel ミートアップに参加してきました。 Mackerel Meetup #12 Tokyo #mackerelio - connpass 今回はブログ枠で参加しました。😃 会場は ドリコム さんでした。おしゃれカフェスペース的なのがあったぞ! 内容は以下でした。 200週連続新機能リリースとこれから 機械学習を用いたMackerelの異常検知機能について トレタのインフラ運用を支えるMackerel フルマネージドホスティングの運用監視にMackerelを導入した話 感想など書いていきます。スライドは随時足していきます。 200週連続新機能リリースとこれから 200週は本当にすごいですね…。 今後の継続リリースは、毎週必ず新機能ではなく、大きめの新機能を計画的・継続的に届ける方にシフトするとのこと。 200週連続機能リリースの達成と、これからのMackerelについて - Mackerel ブログ

  • Lorentzca
    Lorentzca
5 min read
OTOKOMAE CAMP #6
camp

OTOKOMAE CAMP #6

1ヶ月半ほど前ですが、5/12,13に男前キャンプというイベントがあり、参加してきました!⛺ 男前キャンプは水道橋にあるアウトドアをコンセプトにしたカフェバー、 BASE CAMP のオーナーである A-suke さんが主催しているイベントです。 男前キャンプ 去年の夏に第5回男前キャンプに参加し、私としては今回で2回目の参加となります。 男前キャンプ#5に参加してきました! 今回男前キャンプでやりたかったことは、 男前グリルプレートで色々焼く 夜は少し寒そうなのでタープの貼り方を工夫する 豚汁を作る でした。 出発〜集合 今回の会場は浩庵テント村です。 浩庵キャンプ場ではないです!浩庵キャンプ場は湖沿い、浩庵テント村は森の中、と言った感じです。両方良い場所です。 本栖湖沿いのキャンプ場です。千円札の元ネタがありますw 千円札が好きな方は聖地巡礼されてはいかがでしょうか。💴 タープ設営

  • Lorentzca
    Lorentzca
4 min read
Convert HEIF image file to PNG with ImageMagick
imagemagick

Convert HEIF image file to PNG with ImageMagick

先日 iPhone で撮った写真を Mac に取り込んで加工しようとしたら、拡張子が .heic という見慣れないものでした。 サイズも妙に小さいのでなんじゃこりゃと思ったら、 iOS 11 と macOS High Sierra から対応した新しいメディアフォーマットとのこと。 Apple 製のデバイスで HEIF/HEVC メディアを扱う HEIF が画像用、 HEVC が動画用。画質を保ったまま、より圧縮率の高い形式らしい。 今風の機能にも最適化されていていい感じのフォーマット感が出ている。 イメージシーケンス 複数の時間的に関連のある画像または一時的な予測画像(例:バーストモードで撮影した画像、シネマグラフ)

  • Lorentzca
    Lorentzca
1 min read
Using cURL with HTTP/2
curl

Using cURL with HTTP/2

cURL で HTTP/2 の動作確認を行いたいと思ったのですが、 macOS Sierra 標準の cURL では対応していなかった…。[1] 調べてみると Nghttp2 という HTTP/2 のライブラリがあって、これ込みで cURL を再コンパイルすれば HTTP/2 に対応できるようでした。 Nghttp2 はサードパーティのライブラリですが、 HTTP/2 の実装は HTTP/1.1 の実装に比べて複雑であるのと、 Nghttp2

  • Lorentzca
    Lorentzca
1 min read