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

  • RFCの読み方

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

  • DNS前史:HOSTS.TXTとドメイン名ができるまで

    こんにちは、技術開発室の滝澤です。 先月(2022年7月)、『Software Design 2022年8月号』の特集記事『WebエンジニアのためのDNS速習講座』に『第2章:DNSの構成要素と名前解決のしくみ』という記事を寄稿しました。第1章でも滝澤が趣味で作成した資料『ドメイン名の歴史』が参考文献として掲載されていました。よい機会なので、ドメイン名ができるまでの歴史について文章としてまとめようと思い、このブログ記事を書きました。 なお、筆者自身はインターネットの原型であるARPANETや80年代のインターネットをリアルタイムには体験してはいないため、RFC(Request for Comments)やインターネット上にある当時のホストアーカイブを元に調査した内容をまとめたものになります。 ARPANETの時代 1969年から1980年代初期にかけてのインターネットの原型となったAR

  • Pythonタスクランナー Fabric 2 の紹介 - 前編 Fabricの概要 -

    こんにちは、滝澤です。 いくつかのプロジェクトでタスクランナーFabric 2を使う機会がありました。少しですが知見が溜まったので紹介します。 また、Fabric 1.xを利用していた方は互換性も気になると思いますでのその点についても紹介します。 記事が長くなったので3編に分けます。 前編: Fabricの概要 中編: Invokeの使い方 後編: Fabricの使い方 記事は前編の「Fabricの概要」になります。 なお、執筆時点(2018年11月21日)での最新バージョンはFabric 2.4.0、Invoke 1.2.0です。 動作確認はPython 3.7.1にて行っています。 FabricはSSH経由でリモートシェルコマンドを実行するPythonライブラリです。 タスクランナーとして利用できます。 Fabricの簡単な理解のために、実行例を紹介します。 次のような内容のfabf

  • O'Reilly Velocity Conference 2017 San Jose参加レポート

    こんにちは、ハートビーツの宮越と滝澤です。 2017年6月20日〜22日にサンノゼで開催されたO'Reilly Velocity Conference 2017 San Joseに参加してきました。 Velocity Conferenceは日では馴染みがないカンファレンスですが、主に運用やSREやDevOps向けのイベントになります。 記事では興味深かったセッションをいくつか紹介します。 なお、内容については紹介している資料を確認してください。聞き間違えたり、認識が違っているかもしれないためです。 コンテナ Container orchestration wars スライド: Container Orchestration Wars (2017 Edition) (SlideShare) MesosphereのKarl Isenberg氏によるContainer orchestrati

    O'Reilly Velocity Conference 2017 San Jose参加レポート
  • Markdownを独自拡張してWordドキュメントを卒業する

    こんにちはCTOの馬場です。 このたび納品ドキュメント作成で永らく使っていたWordを卒業し、 Markdownで書いてPDFで納める活動を始めたので公開します。 Wordを使っていると並行編集作業できない、改訂履歴追跡が難しいなどの課題があり、その解決のためにいろいろ模索してこの形になりました。 この仕組みには、こんなイイところがあります。 Markdownで書ける gitで差分管理、版管理される GitLab のマージリクエスト(GitHubで言うところのPull Request)を使ってレビュー・リリース管理できる GitLab CIで自動ビルドされる GitLab CI + Jenkinsで自動デプロイされる 以下のツール群を利用しています。 GitLab MkDocs HEARTBEATS Flavored Markdown extension wkhtmltopdf Jenki

    Markdownを独自拡張してWordドキュメントを卒業する
  • 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の接続数を制限してみよう
  • どうしてメモリはスワップするのか!?

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

    どうしてメモリはスワップするのか!?
  • DevOpsに関する論文を読んでみよう 前半

    斎藤です。こんにちは。 今回は、2回にわたりインフラエンジニアにも関係してくる学術論文を取り上げ、内容を要約・解説していきます。 運用に携わる人々は「実務」から物事を理解し、マニュアルやツールといった形でモデリング化し、物事を切り開かれている方が多いかと思います。一方で、物事をモデリングする手法には、学術論文...文章化してゆくと言う方法もあります。 「いやー、論文って読もうとすると難しいよねー」とか、「英語とか面倒だなぁ〜」なんて思っている方にでも、論文に触れる新しい機会に、そしてこれからの運用の参考となれば幸いです。 ※誤訳やより良い解釈がある等ありましたら、twitterの @koemu までお知らせください。 「ログを用いたソフトウェア開発者と運用者を繋ぐ手法」 原題は"Bridging the Divide between Software Developers and Oper

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

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

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