Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
![AmazonがAWS Well-Architected Frameworkを公開](https://cdn-ak-scissors.b.st-hatena.com/image/square/856f16c8f47cd5adf04908f69a401fdc6b898551/height=288;version=1;width=512/https%3A%2F%2Fcdn.infoq.com%2Fstatics_s2_20240705082009%2Fstyles%2Fstatic%2Fimages%2Flogo%2Flogo-big.jpg)
先日ラスベガスで開催されたre:Inventに参加し、その際にデータ分析基盤系のセッションはほぼ参加したのですが、Job管理ツールの話がかなり出ていたのが印象的でした。 AWSにはData PipelineというJob管理サービスがあるのですが、それではなくOSSのJob管理ツールを使っているところが多い印象でした。 日本では自分の観測範囲だとまだ使っているところがあまり多くない印象ですが(実際自分もほとんど使ったことない)、いくつか候補を絞って触って見たので感想を書きます。 あくまでJenkinsしか使ったことがないような個人の感想としてお読みください。。 Airflow Airbnbが開発元 re:Inventでは多くのセッションで紹介されており、一番勢いがある印象を受けた。 依存関係はPythonで書く タスクの登録はUIからやるのではなく、コマンドラインから登録 Python力を前
ChefやPuppet、Vagrantといったサーバーの設定を自動で行うツールが普及しつつあるが、それと同時にサーバーの自動テストについても注目されるようになっている。今回はサーバーの自動テストを実現するツール「Serverspec」をLinux環境で利用する手順を紹介する。 サーバーの自動テストの必要性とテスト駆動開発 最近ではサーバーの設定やソフトウェアのインストールといった作業を自動で行えるツールが注目されている。しかし、設定後のテストについてはあまり注目されておらず、各種設定やソフトウェアのインストールが正しく行われているかどうかは手作業で確認することが一般的だった。しかし、手作業での確認にはミスや抜けが発生する可能性があり、また対象とするサーバーの数が増えるとそれに比例して手間も増えてしまう。そこで活用したいのが、サーバーの自動テストツールだ。 サーバーの自動テストツールは、あら
最近は担当システムが平和だけど俺が平和じゃない。疲れてる。忘年会の連チャンもきっついトシになっちまった。会社の制度で1週間くらい休みがとれるので、一人で温泉とスノボと開発合宿でもしに北海道にでも行こうかなって思ってる。1月か2月くらいに。 えーと、担当しているサービスにserverspecを導入した。それにあたってテスト項目を考えたので軽くまとめる。もちろんserverspec導入前もサーバ構築後は動作確認というか、テストらしいことはしていたっちゃしていたんだけど、テスト項目をまともに考えたのはこれが初めてかもしれない。serverspecのバージョンは0.13.2である。Rubyは2.0.0。 0. 環境 下記のような環境に導入した。ありふれた構成だと思う。60台くらいの規模。DBはマスタ3台に分割されていて、それぞれにスレーブがn台ぶらさがっている。LBの箱は二つあるが、物理的には1台
OpenStackに代表されるような、多数のサーバに対して複数のソフトウェアをインストールするような複雑なシステムの構成には、作業を自動化してくれるツールが不可欠です。 こうしたツールはいわゆるデータセンター自動化ツールなどと呼ばれており、ChefやPuppet、そしてAnsibleといったツールがよく知られています。 そのAnsibleをRed Hatが買収したと発表しました。 ChefやPuppetでは、インストール先のサーバにあらかじめエージェントソフトウェアを導入しておく必要がありますが、Ansibleはそうしたエージェントを必要とせず、また設定もYAMLと呼ばれる分かりやすい形式で記述できるなど、全体にシンプルなツールであることが大きな特長の1つです。 Red HatはこうしたAnsibleのシンプルさを評価しつつ、構成の自動化ツールとしてアプリケーションのデプロイやソフトウェア
次世代 Web カンファレンスで監視について話すことになったので、ネタとしてWEB系各社で使っている監視ツールを調査中。 うちはこれ使ってるよ!!!ってのがあったら@mikedaにメンションください! Cookpad Zabbix 昔はNagios+muninだけど台数増えて性能的に破綻した ビューはそのままじゃ辛いのでmunin風に表示するのを自作 StatusCake DataDog。サービス系、サーバに紐付かない系の監視に。DashBoard便利 waker。通知用。PagerDuty高い、と言ってryot_a_raiが秒で作ったらしい Kibana imon。独自のリアルタイムなサービス稼働状況表示ツール NewRelic 試し中なもの Real-User Monitoring : JSでbeacon飛ばしてfluentd -> BigQuery。Google SpreadShee
インフラストラクチャー部の成田です。2015年10月現在、インフラストラクチャー部には私を含め7人のインフラエンジニアが所属しており、このメンバーでクックパッド本体サービスをはじめ様々な新規事業やいくつかの子会社のサーバを運用しています。私自身もエンジニアではありますが部のマネージャも兼ねているため、立場上、社外の方からインフラエンジニアのマネジメントについて質問されることがよくあります。今回は、私自身の考え方とクックパッド社における事例を紹介したいと思います。 「インフラエンジニア」とは 「インフラエンジニア」という言葉の定義はあいまいで、しばしば議論の的になります。傍目からは明らかにインフラエンジニアであるように見えるにも関わらず「私はインフラエンジニアでは無い」と主張する人たちもいます。このような状況になっているのは、サーバ運用に関する業務分掌が会社ごとに異なるからであると私は考えて
はじめに はじめまして。クックパッド株式会社の荒井(@ryot_a_rai)と申します。 今回から全5回、構成管理ツールであるItamaeの入門から実際の活用例までを解説していきます。今まで構成管理ツールを使ったことがなかった方から、Itamaeをすでに使っている方まで、ぜひご覧ください。 Itamaeとは Itamaeは筆者が中心となって開発を進めているオープンソースの構成管理ツールです。同様のツールとしてはPuppet、Chef、Ansibleなどが有名ですが、ItamaeはChefに影響を受けています。Chefの記述性・柔軟性を持ちながら、シンプルで導入しやすい構成管理ツールを目指して開発が進んでいます。 構成管理ツールの必要性 Itamaeの解説を始める前に、構成管理ツールを使う理由について軽く考えてみたいと思います。 サーバ構築の自動化 手動構築の手間と時間を減らす 手動構築によ
中〜大規模サービスのインフラの様子を知りたいアプリケーションエンジニア向けに、もともとアプリケーションコードを書いていた視点から、個人的な体験をベースにはてなで大規模サービスのインフラを学んだ過程や学んだ内容の一部を紹介します。 Webアプリケーションのブラックボックス Webアプリケーションフレームワークの向こう側 なぜ複数のサーバが必要なのか 突然のWebサービス3層構成 リバースプロキシ アプリケーション データベース その他のコンポーネント キャッシュは麻薬 飛び道具としてのKVS/NoSQL 非同期処理 バッチ処理 Mackerelの場合 参考 まとめ Webアプリケーションのブラックボックス 今年もはてなインターンの時期が近づいてきた。 毎年ではないけど、はてなインターンでは「インフラ講義」というのをやっている。 今年はインフラ講義の講師としてアサインされたのでちょうど何を話そ
Welcome on my blog for this new Year. After writing an answer to a thread regarding monitoring and log monitoring on the Paris devops mailing list, I thought back about a blog post project I had in mind for a long time. I wrote this blog post while wearing my Ops hat and this is mostly addressed to developers. Knowing how and what to log is, to me, one of the hardest task a software engineer will
はじめに BounscaleというオートスケールするHeroku Addonを作っています。 Bounscaleは現在はHerokuに対応していますが、元々Herokuに関わらず主要なクラウドのリソースをオートスケールさせたいと考えています。なので今後数年のトレンドを持って行きそうなDockerの動向はもちろん注視しています。 そんな中、DockerのクラスタツールKubernetesがGoogleから発表されたので、概要をつかむために少しドキュメントを読んだので所感を含めてまとめておきます。 注意 公式のGithubのWikiのデザインドキュメントなどを読んで自分なりに理解した内容をまとめています。私見メモであり推測も多分に含まれているいい加減な文書です。翻訳ではありません。また、理解に誤りが含まれていると思います。原文読んでください。 Kubernetes? これはなんて読むんでしょう
OpenStackにKubernetesやDocker Swarmを統合、コンテナ対応を実現する「Magnum」。OpenStack Summit May 2015でデモ カナダのバンクーバで先週開催された「OpenStack Summit May 2015 Vancouver」。基調講演で取り上げられた大きな話題の1つが、OpenStackでDockerコンテナを扱えるようにする「Magnum」でした。 Magnumは今年の3月、OpenStackに正式参加したプロジェクトとして現在開発が進められています。これまでもOpenStackでコンテナを扱うためのツールはいくつか存在しました、Magnumはコンテナのオーケストレーション機能をOpenStackに統合する点が特長です。 OpenStack Summit May 2015 Vancouverの2日目の基調講演で、Magnumのチーム
こんにちは、虎塚です。 1月27日(火)に「データ転送ミドルウェア勉強会」に参加してきましたのでレポートします。イベントは、SAPジャパンさんで開催されました。 今回のテーマは、まず、当日リリースされたばかりのOSSツールEmbulkの解説、次に、データ転送業界のドンHULFTの紹介、そして、今年リリース予定のfluentd v1について、最後に、HTTP/1とHTTP/2両対応のHTTPサーバH2Oの紹介でした。盛りだくさんですね。 懇親会ではトレジャーデータさんからピザが提供されました。SAPジャパンさん、トレジャーデータさん、ありがとうございます。 データ転送ミドルウェア勉強会 - dots.[ドッツ] 「バルクデータロードツール『Embulk』リリース 〜 fluentdの柔軟性と堅牢性をバルクでも」 最初のセッションは、トレジャーデータの古橋貞之さんによるEmbulkの思想やアー
2023年03月31日追記:この記事を基に、@sadnessOjisanさんより、コードレベルにより踏み込んだ、かつ、グリーンスレッドベースの新しいWebサーバアーキテクチャも含めて整理された記事 Webサーバーアーキテクチャ進化論2023 | blog.ojisan.io が公開されました。 主に新卒のWebエンジニア向けに、古典的なWebサーバアーキテクチャを学ぶ道のりと代表的な実装モデルの概要を紹介します。 この辺りの話題がWeb界隈で流行っていたのは数年以上前というイメージですが、Webサービスは相変わらずWebサーバの上で動いているので、流行り廃り関係なく学ぶべき内容だと思っています。 また、HTTP/2がいよいよRFC化し、既にh2oやtrusterdなどのHTTP/2のサーバ実装があり、今後Webサーバアーキテクチャを再訪することが増えるような気がしています。 ところが、We
「Puppet Enterprise」商用版の国内提供を開始、サーバやスイッチの構成自動化を実現。ネットワールド 米Puppet Labsの「Puppet Enterprise」は、Chefと並んでインフラ構成自動化ツールとして良く知られているソフトウェアです。そのPuppet Enterpriseの国内販売をネットワールドが今日から開始したと発表しました。商用版の提供は国内初。 Puppet Enterpriseは、データセンターなどでサーバに対してOS、ミドルウェアやアプリケーションなどの設定、更新、導入などの自動化を実現するソフトウェア。また、サーバだけでなくシスコ、Arista Networks、Cumulus Networksなどのスイッチ設定の自動化もサポートします。 これまでこうしたデータセンター内の構成作業はおもに人手によって行われてましたが、大量のサーバで実行される大規模
インフラ部の荒井(@ryot_a_rai)です。この記事ではクックパッドで利用しているプロビジョニングツール "Itamae" の紹介と細々した Tips を紹介します。 式年遷宮とプロビジョニングツール 現在、弊社ではインフラの式年遷宮*1を進めています。式年遷宮以前、弊社では Puppet を利用してサーバをセットアップしていましたが、式年遷宮に際して既存のプロビジョニングに関するコードは捨てることになるため、プロビジョニングツールの再検討を行うことになりました。 Puppet, Chef, Ansible, SaltStack を検討した結果、 言語特性の観点では、Ruby DSL な Chef が良い アーキテクチャ・エコシステムの観点では、シンプルな Ansible が良い といった点から、どれも決め手に欠ける状況で、Ruby DSL で記述できるシンプルなプロビジョニングツール
update 色々と twitter で議論が起こったのでまとめて貼っておきます。 togetter.com みなさんありがとうございました。 intro HTTP2 の RFC 化も目前ということで、そろそろ実際に HTTP2 を導入していくにあたってサーバサイドの構成についても、具体的にどう変わっていくかという点を考え始めていく必要があります。 そんな話を @koichik さんとしていたら、色々と考えが膨らんだのでメモしておきます。 前提 今回は、中規模のサービスを想定し、特に HTTP2 のサーバプッシュを踏まえた上でのコンテンツ配信などに、どういう構成が考えられるかを考えていきます。 また、本エントリ内では独自に以下の表記を採用します。 HTTP/1.1 = HTTP/1.1 (平文) HTTP/2 = HTTP/2 (平文) HTTPS/1.1 = HTTP/1.1 over
EMCは米ラスベガスで5月4日から4日間開催したイベント「EMC World Las Vegas 2015」で、ブロックストレージ機能を提供する分散ストレージソフトウェア「ScaleIO」の無償提供を発表しました。 ScaleIOはもともと同社が2013年に買収したScaleIO社の製品で、その後EMCの製品としても販売。コモディティサーバにインストールすることでそのサーバをストレージサーバにするもので、最大の特長はスケールアウト機能です。ScaleIOによるストレージサーバをネットワーク上で増やしていくと、台数に応じてI/O性能も向上します。 また、ScaleIOはストレージサーバの動的な追加や削除が可能で、一部のサーバが障害で落ちても全体としての運用は継続可能など、耐障害性も備えています。 分散ストレージによってブロックストレージ機能を実現するソフトウェアとしては、オープンソースのCe
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く