タグ

ブックマーク / heartbeats.jp (47)

  • RFCの読み方

    こんにちは。技術開発室の伊藤です。 ハートビーツではメールサーバを自社で運用しています。そのメールサーバの移設を実施するにあたり、移設を対応するチームでさまざまなメールの仕様を理解しておく必要がありました。 メールプロトコルの仕様についてはRFC(Request For Comments)が発行されているため、メールに関するRFCを読んでまとめる勉強会を行いました。 その際にRFCを読むにあたって知っておくとよいことがいくつかあったので紹介します。 RFCとは RFCとはIETF(Internet Engineering Task Force)というインターネット技術の標準化を推進する団体やその他の団体が発行している、インターネット標準や技術提供の文書です。もともとは非公式な文書であることを明確にするため、Request For Comments(コメント募集)という名前にしていたようです

  • 安心してリザーブドインスタンスを購入するために

    はじめまして。 今年の5月に入社した、エンジニアリンググループの佐藤です。前職ではメディア関連の会社で就業していて、WebサイトやWebシステムの開発チームでインフラ構築・運用・保守を担当してきました。この度、自分自身の技術力向上を目的にハートビーツに入社しました。 今回は、業務の中でAWSのリザーブドインスタンスを購入する機会があったので関連するTipsをご紹介します。 リザーブドインスタンスとは AWSのリザーブドインスタンスとは、1年もしくは3年の長期間利用を予約することで、通常のオンデマンド料金に対して割引が適用され、オプションによってはキャパシティーを予約できるサービスです。その他様々な購入オプションがありますが、今回はそのオプションについて詳細は触れません。 詳細については AWSの公式サイトをご確認ください。 高額決済ってこわい リザーブドインスタンスの購入手続きは、先述の通

  • サーバ作業を安全に行うための工夫

    こんにちは。 2021年7月にハートビーツに入社後、エンジニアリンググループに所属している北岡です。 以前は同じMSP企業で10年以上勤務しておりましたが、自身のスキル向上などを目的としてハートビーツへ入社しました。 私の転職の経緯やハートビーツへ入社して感じたことなどは今後お話するとして、今回はお客様のLinuxサーバ上で作業する際、私がオペレーション中に意識していることやミスを防ぐために行っていることについて紹介します。 コピー、ペーストのショートカットキーを変更する コピー「Ctrl + c」とペースト「Ctrl + v」はキーが隣り合っており、タイピングミスによってコピーしようとしたつもりがペーストしてしまったということが起こりえます。 メモ帳などで起きた場合は特に問題にはなりませんが、サーバ上で起きると不要なコマンド実行に繋がります。小さなことではありますが防止策をとるべきです。

    サーバ作業を安全に行うための工夫
  • メトリック収集と分散トレーシングのフレームワーク OpenCensus を使ってみた - インフラエンジニアway - Powered by HEARTBEATS

    こんにちは、滝澤です。 先日、社内ISUCONが開催され、運営側として関わっていました。 その中で、試し解きと技術検証(お遊び)も兼ねて、以前から興味があったメトリック収集と分散トレーシングのフレームワークの OpenCensus を使ってみて、処理時間の可視化をしてみました。 そのときに行った内容などを紹介してみます。 OpenCensusとは OpenCensusはメトリック収集および分散トレーシングを行うためのライブラリ集です。 マイクロサービスやモノリシックなアプリケーションに対して Observability (可観測性)を提供します。 Google社が社内で利用しているメトリック収集およびトレーシングのライブラリ集であるCensusのオープンソース実装として、2018年1月にリリースされました。 提供する機能としては大きく分けて次のものになります。 Metrics (メトリック

  • 硬派な高解像度パフォーマンスモニタリングツール Performance Co-Pilot と PCP.CONF 2018

    こんにちは。CTOの馬場です。 Performance Co-Pilotというモニタリングツールをご存知でしょうか? 先日、Performance Co-Pilotのカンファレンス PCP.CONF 2018 に行ってきました。 Performance Co-Pilot Conference 2018 正直かなりマニアックなツールなので、カンファレンス!そんなにユーザいたの!すごい!みたいな気持ちで参加したところ、 参加者は15人くらいで、だいたいはお互いに知り合いっぽい、みたいな感じで驚きました。 (ぱっとみですが、半分くらいはRed Hatの方だったのかな?) エントリではユーザと日語情報流通が増えることを祈念して Performance Co-Pilot の紹介をします。 PCPの特徴 Performance Co-Pilot 私の知る限り日では知名度が低めだと思いますが、Pe

    硬派な高解像度パフォーマンスモニタリングツール Performance Co-Pilot と PCP.CONF 2018
  • Docker と infrataster で nginx の振る舞いをテストする

    こんにちは。吉川 ( @rrreeeyyy ) です。今期オススメのアニメはリゼロです。 Nginx は設定ファイルの記述力も高い、大変便利な Web サーバです。 便利な反面、設定ファイルの複雑化や、設定に依っては意図しない挙動を引き起こしてしまうこともあります。 そこで稿では docker 並びに infrataster を使用し、 Nginx の挙動をテストすることによって、安全に Nginx の設定を記述する方法について紹介します。 テスト対象の Nginx の仕様 今回は例として、次のような仕様の Nginx のテストについて考えます。 ネットワーク帯は 10.0.0.0/16 を使用している Nginx の前段として L7 ロードバランサが存在している L7 ロードバランサが https を終端している Nginx 自体は 80 番ポートと 8080 番ポートにて待ち受けてい

    Docker と infrataster で nginx の振る舞いをテストする
    lEDfm4UE
    lEDfm4UE 2016/06/19
  • Golangで作ったhttpdの接続数を制限してみよう

    こんにちは。斎藤です。 ここ1〜2年、私は仕事Golangを書くことが増えています。きっかけは、ITインフラをお預かりする中で、お客様のサーバにツールを置く場合でも1つのバイナリさえ置けば良いという手軽さからだったのですが、最近はScalaと並び手軽に並列処理が書けるプログラミング言語として重宝しています。 さて、今回はGolangで作ったhttpdの接続数をLimitListenerを利用して接続数の制限をしてみようというお話です。以下に紹介するお話は、Githubのリポジトリ "github.com/koemu/go-http-max-connections-demo" にデモプログラムを保存しています。Golangのビルド環境がある方は、実際にビルドしながらお試しいただければと思います。 ※Golang 1.5.1でビルドする前提で説明しています モティベーション 仕事でとあるAP

    Golangで作ったhttpdの接続数を制限してみよう
  • Interop Tokyo 2015 訪問記 - IoT 戦国時代へ

    斎藤です。こんにちは。 最新のサーバ・ネットワーク製品が一堂に会するInterop Tokyo 2015。今年も、同僚とともに足を運んできました。 様々な展示がある中で、私が今回注目したキーワードは3つ、"IoT", "マルチクラウド時代へ", そして"構築・運用自動化" です。 Internet of Things。様々なデバイスがネットにつながり、様々なメトリックが交換される仕組みの総称です。IoTを支えるには、データを交換するためのネットワーク技術がベースにあってこそ成立します。今年は、そのIoTを活かそうとする展示が多く見られました。 イベントとしては、ShowNetツアーでも、IoTに力を入れていることを示す説明がありました。 デバイスのレベルですと、富士通の一体型センサーチップの展示がありました。より多機能に、より小さく、そしてより省エネルギーになっているとのことです。医療や作

    Interop Tokyo 2015 訪問記 - IoT 戦国時代へ
  • O'REILLY Velocity 2015 Santa Clara参加レポート - 前編

    O'REILLY Velocity 2015 Santa Claraが2015年5月27日から29日まで開催しています。ハートビーツからも松鵜と滝澤の二人が参加しています。 5月27日にチュートリアルに参加してきたのでその一部を紹介します。 後編も公開しました。(6月4日追記) なお、内容については紹介している資料を確認してください。聞き間違えたり、認識が違っているかもしれないためです。 ※写真は初日のチュートリアル終了後のパーティー会場に使われたLevi's Stadiumです。 Best practices for MySQL High Availability このチュートリアルではMariaDB FoundationのColin Charles氏がMySQLおよびその派生の高可用性(High Availability)についてベストプラクティスを紹介してくれました。 高可用性を実現

    O'REILLY Velocity 2015 Santa Clara参加レポート - 前編
  • hb-agent - 構築・監視項目検出自動化ツール hb-agentのご紹介

    こんにちは。斎藤です。 私の記憶では2012年頃から盛り上がり始めた、ITインフラ構築・運用の自動化やコード化のお話ですが、その後みなさまどのような形で推進されていますか?あれから3年ほど経ちまして、当社でも取り組んできた内容を一旦棚卸しできるかなと考え始めています。そうそう、「MSPでのChefの使い方 --- 運用ノウハウをコードに落とす」という記事を書いた日から考えても、2年以上経っています。 そこで、何回かに分けまして、私が担当していたITインフラ構築・運用の自動化・コード化に関する取り組みについてご紹介していきます。 TL;DR hb-agentは、「初期構築作業の自動化」「監視項目洗い出しの自動化」そして「ノウハウをコードに集約」を実現する社内ツールです。 導入を通じて、構築時間の短縮、ノウハウの共有がすすみました。その結果、新しいスタッフが入った時でも習熟度のぶれを押さえ、構

  • systemd の情報を集め始めよう

    斎藤です。こんにちは。 RedHat Enterprise Linux 7(RHEL7)リリースの足音が聞こえる今日この頃ですが、皆様いかがでしょうか。予習として、Fedora 19を利用されている方もいらっしゃるかと思います。 その中で、大きな変化の1つとして、 systemd(※1) の採用があります。systemdは、SysVinitやUpstartに変わる、プロセス管理の仕組みです。そうです、起動スクリプトの書き方や、プロセスの確認方法が大きく変わる事になるのです!そうなれば、構築や運用に関わる知識や手順を覚え直す必要が出てきます。 しかし、systemdに関する資料は、それほど多くありません。そこで、簡単ですが記事執筆時点(2013-10-24)での情報源をまとめてみました。検証の際の情報収集時、お役に立てば幸いです。 ※私が社内Wikiにまとめた情報をBlog用に整理し、公開し

  • Rundeck - cronから移行しやすいジョブスケジューラを使ってみよう

    こんにちは。斎藤です。 最近、Dockerなどのコンテナ型仮想化技術、Chef, Ansible, Itamae などによるITインフラ構築・運用自動化技術の利用が進んでいます。一方で、何年も動いて「歴史」を積み重ねているシステムも数多くあります。そして、私を含めてそれらの運用に関わる事もあるでしょう。そんな「歴史」のあるシステムも、何とか運用を効率化したいと思う事があるかもしれません。 今日は、バッチジョブや複数サーバに対する運用を効率化するRundeckを取り上げます。「何ができるの?」「はじめかた」そして「利用時の留意点」の3点についてお話しします。 ※OSはCentOS 6系、Rundeck はバージョン 2.4.0、Java VM は Oracle JDK 1.7.0_72 を利用しています。 cronLinux系OSに標準搭載されているジョブスケジューラです。標準で使えるため

    Rundeck - cronから移行しやすいジョブスケジューラを使ってみよう
  • Mackerel プラグインを書いてみよう

    こんにちは。斎藤です。 日発としては数少ないサーバモニタリングサービス「Mackerel」。はてなさんが開発し、先月から正式にサービスが開始されました。このブログを読まれている方で、利用されている方もいらっしゃるのではないでしょうか。 さて、Mackerelの特徴に、自分自身でプラグインを開発すれば、カスタムメトリックとして自由にメトリックを追加できる事があります。最近、私もプラグインを書いて家のプラグイン集リポジトリにマージいただきました。せっかくですので、その時に私が確認したお話をまとめておこうかと思います。4節「プラグインが行うこと」「ヘルパーライブラリを活用しよう」「コーディングの型」そして「その他のポイント」に分けてお話しします。 記事は、Golangでの開発を1度でも行った事がある、または"A Tour of Go"を通じてGolangを学習した事がある方を対象とします。

    Mackerel プラグインを書いてみよう
  • NSDとDNSラウンドロビン

    権威ネームサーバのNSDがDNSラウンドロビンに対応したので、NSDとDNSラウンドロビンについて紹介します。 なお、この記事は『UnboundとDNSラウンドロビン』の姉妹編的な位置づけです。ほぼ同じようなDNSラウンドロビンについての説明があります。 NSDとは DNSサーバのソフトウェアとしてはBINDがデファクトスタンダードのような位置づけになっていますが、BIND以外にも様々なDNSサーバのソフトウェアがあります。その中の一つとしてNSDがあります。 NSDはオランダのNLnet LabsのW.C.A. Wijngaards氏が中心となって開発が行われています。NSDは元々はルートサーバ用として開発されましたが、現在のバージョンでは普通の権威ネームサーバとしての機能はほぼ実装されており、代表的な権威ネームサーバのソフトウェアの一つとなっています ちなみに、ルートサーバのHとKとL

  • RHEL5/CentOS5でGlobalSignのルート証明書が有効期限切れで大騒ぎ

    こんにちは。CTOの馬場です。 昨晩1/28 21:00JSTにRHEL5/CentOS5にインストールされているルート証明書のうち、GlobalSignの有効期限が切れました。 伴ってREHL5/CentOS5からのHTTPS(SSL)接続にてGlobalSignの証明書を使っているサイトへの接続がエラーになるようになりました。 私の確認している範囲では、 curlコマンドやPHPcurlライブラリなどでの接続時に接続エラーとなることに起因して以下のような影響が出ています。 ※接続される側ではなくて、接続する側での問題です※ oauthなどの外部認証が不可 決済などの外部連携が不可 対策 RHEL5の場合、errataが公開されているのでupdateしましょう。 Red Hat Customer Portal https://rhn.redhat.com/errata/RHEA-201

    RHEL5/CentOS5でGlobalSignのルート証明書が有効期限切れで大騒ぎ
  • どうしてメモリはスワップするのか!?

    こんにちは。斎藤です。 最近、新しいスキー板が欲しいなと思っています。現在使っているOGASAKAの板は5年目に入り、メーカーからこれ以上はチューンナップ(メンテナンス)はできないよ、と言われてしまいました。もし、次に買うなら、スノーボーダーの人と一緒にパウダーに飛び込みやすいセミファットタイプが良いのかなと考えています。皆さんのオススメ、ぜひ教えてください。 さて、今日はLinux Kernel上でのメモリ管理、特にページ回収(Page Reclaim)とスワップに絞り、「スワップの理由」「ページを回収する仕組み」そして「スワップの様子を観察する」の3点に分けてお話しします。「スワップするのが気持ち悪い」と考えている方は少なくないと思いますし、私もそう考えていた時期がありました。しかし、それは当に悪い事なのか、今回掘り下げて行きます。 ※主な対象Kernelは2.6.32(Red Ha

    どうしてメモリはスワップするのか!?
  • そのファイル、安全に作成できていますか?(アトミックなファイル操作:中編)

    おっさんエンジニアの滝澤です。「アトミックなファイル操作なんて考えずにデータベースを使えばいいじゃない」と言われそうでgkbrです。 前回に引き続き、アトミック(atomic)なファイル操作について紹介します。この内容は弊社の社内勉強会で話した内容をまとめ直したものです。 そのファイル、安全に更新できていますか?(アトミックなファイル操作:前編) そのファイル、安全に作成できていますか?(アトミックなファイル操作:中編)←今回 そのファイル、安全にロックできていますか?(アトミックなファイル操作:後編) 2回目の今回は「みなさん、安全にファイルの作成ができていますか?」ということについて、考えてみましょう。 アプリケーションがあるディレクトリ内に存在するファイルを読み込んで処理するシステムがあるとします。このとき、そのディレクトリ内に直接ファイルを作成してみました。アプリケーションがファイ

    そのファイル、安全に作成できていますか?(アトミックなファイル操作:中編)
  • そのファイル、安全に更新できていますか?(アトミックなファイル操作:前編)

    ハートビーツ最年長エンジニアの滝澤です。以前、弊社CTOにシニアおっさんエンジニアから若手エンジニアに向けて何か書いてくれと言われた気がしたので、アトミック(atomic)なファイル操作について3編に分けて紹介します。この内容は弊社の社内勉強会で話した内容をまとめ直したものです。 そのファイル、安全に更新できていますか?(アトミックなファイル操作:前編)←今回 そのファイル、安全に作成できていますか?(アトミックなファイル操作:中編) そのファイル、安全にロックできていますか?(アトミックなファイル操作:後編) 今回は「みなさん、安全にファイルの更新ができていますか?」ということについて、考えてみましょう。 あなたはあるサーバ上のファイルの更新を依頼され、もらったファイルをサーバ上でコピーして上書きしました。しばらくして、データに異常が発生したので調べて欲しいと言われました。さて、何が起き

    そのファイル、安全に更新できていますか?(アトミックなファイル操作:前編)
  • ITインフラで起きる「もしも」のための12個のコマンド

    こんにちは。斎藤です。 ITインフラの障害は、多くの場合「予期せぬ」タイミングで発生します。特に、CPUリソースを多量に消費したり、Disk I/Oが輻輳している場合、その切り分けは困難な状況に陥りやすいものです。 そこで、日はITインフラ、特にOS・ミドルウェアを支えるにあたって、問題解決を助けてくれるであろう12個のコマンドを取り上げてみます。「必ず押さえておきたい」5つのものと「更に覚えると便利なコマンド」7つの2節に分けてお話しします。 ※CentOS 6.4 (64bit)を前提に取り上げます 必ず押さえておきたいコマンド もしITインフラ管理者になりたてな方はぜひ サーバサイドのプログラマをやっていたのだけれど、ある日突然「君、サーバ管理担当ね!」と、バトンを渡される方っていらっしゃると思います。私も以前はそのクチでした...。そうなってしまったとき、まずは覚えておきたい5つ

    ITインフラで起きる「もしも」のための12個のコマンド
  • etckeeperで設定ファイルのバージョン管理を始めよう

    斎藤です。こんにちは。 今日は、etckeeperを用いて、設定ファイルをバージョン管理する方法を説明します。設定ファイルの書き換えで辛い目に遭う前に、どうぞお試しください。 ※CentOS 6.4, Ubuntu 12.04 LTS, etckeepr 1.7を基準に説明します etckeeperとは etckeeperは主に/etc配下をVCS(Version Control Systems)を用いてバージョン管理します。実態は、gitやmercurialのwrapperとなっています。 設定ファイルの書き換えの際に、ファイル名に日付をつけてバックアップしたりする手間を省いたり、誤って書き換えてしまったときのための 保険 として利用する事ができます。 インストール方法 はじめに 先程も述べました通り、etckeeperはVCSのwrapperとして動きます。そのため、インストール時には

    etckeeperで設定ファイルのバージョン管理を始めよう