タグ

ブックマーク / www.ryuzee.com (24)

  • オープンソースのAPI Gateway「Kong」

    全国100万人のモノリシック巨大アプリケーションに苦しむみなさんこんにちは。 世の中も杓子もマイクロサービスだ!!とかAPIだ!!とか言っていますが、実際にマイクロサービス環境にしようとすると、どのようにしてAPIのサービスを取りまとめるかが課題になります。 一般的には以下のようなやり方になります。 複数のサービスに分散しているAPIを統合するゲートウェイを用意するそのゲートウェイでは以下のようなことをおこなうクライアントからのアクセスのシングルエンドポイントの役目を果たすAPIの実体へのルーティング認証アクセス記録の収集スロットリング(過度なアクセスの抑止)実体がダウンしている場合のデグレーションこのようなAPIゲートウェイの機能は既にAWSではAmazon API Gatewayとして提供されていますが、オープンソースでもいくつかのプロダクトがあります。今回はそのうち一番開発が活発そ

    オープンソースのAPI Gateway「Kong」
    akuwano
    akuwano 2016/05/27
  • 【資料公開】Chef ベーシックトレーニング

    みなさんこんにちは。@ryuzeeです。 これから新たにChefを学ぶ人向けに非常に基的なトレーニングの資料を作ったので公開します。 資料の構成は以下のとおりです。 まずDevOpsの文脈から自動化が必要な背景を説明Infrastructure as Codeについての利点を説明ChefのアーキテクチャChefの用語解説Vagrantで仮想マシンを2台使った一番単純なハンズオン(boxも用意済み)Serverspecを使ったCookbookのテストの書き方(VirtualBoxの仮想マシンの中でDockerを使っています)その他なお、2-3時間でさくっと触りながら全体像を掴むことを目的にしているので、網羅性はありません。 ハンズオン用のVagrantのboxには、あらかじめ、Chef DK(Development Kit)、Dockerなどが含まれており、すぐに触れると思います(ただしb

    【資料公開】Chef ベーシックトレーニング
    akuwano
    akuwano 2016/04/07
  • 【お知らせ】アジャイル/DevOps/クラウド関連支援サービスを開業しました

    みなさまこんにちは。@ryuzeeです。 昨年10月にAmazon Web Servicesを退職して以来、久々にのんびりとした時間を過ごし、ムリを言って期間のコミットのない仕事をさせていただいておりましたが、このたび正式に支援サービスを開始することにいたしましたのでご報告です。 主なご支援内容は以下のとおりですので、ご興味のある方はお知らせいただければ幸いです。詳細についてはこちらをあわせてご参照ください。よろしくお願いします! 以下FAQです。 どんな領域の支援ができますか? 支援の領域は主に4つです。順にアジャイルコーチングとトレーニング、DevOps実践支援、Cloud Architecting支援、そして技術顧問・執筆・講演です。 アジャイル関連の支援ってどんなものですか? オンサイトを中心にアジャイル開発での企画〜開発まで全工程を支援します。プロジェクト立ち上げに際しての集合研

    【お知らせ】アジャイル/DevOps/クラウド関連支援サービスを開業しました
    akuwano
    akuwano 2016/01/22
    おおお!応援してます!!!
  • 【資料公開】強いチームの作り方 | Ryuzee.com

    2015年11月10日に某社の社内勉強会で、「強いチームの作り方」というテーマで話をしたのでその際の資料を公開しておきます。 内容自体は、WEB+DB PRESS 83号に書いた内容なので興味があればそちらを参照ください。 最近DevOpsの文脈ですぐに「インフラ自動化しないといけない」とか「ツール使って効率化」みたいな話を頻繁に聞きます。 が、端的にいえば、「実際のところ、ソフトウェア開発上の問題の多くは、技術的というより社会学的なものである」というデマルコの一節の通りであり、 DevOpsの質もツールではなく、CLAMS(Culture、Lean、Automation、Measurement、Sharing)であって、土台となるのはやはり組織やチームの文化になります。 一度自分たちのチームや組織について考えてみるとよいと思います。

    【資料公開】強いチームの作り方 | Ryuzee.com
    akuwano
    akuwano 2015/11/12
  • マイクロサービスに関する資料のまとめ

    世の中マイクロサービス・マイクロサービスうるさいのでちょっとこれ読んでおけという資料をまとめておきます。 はっきり言ってマイクロサービス化しようとすると、組織構造の話、エンジニアの責務の話など技術的な課題以外の領域にもいろんなチャレンジがあるので、普通のプロジェクトでも苦労する組織が取り組むとか、設計だけして開発を委託しているけどDB一極化がやばいので取り組むとかは止めておいた方がよいと思います。 概念Twelve Factor Appマイクロサービスの話ではないが、モダンなアプリケーションを作りたければ開発チーム全員に叩き込んでおくべき内容MicroservicesMartin Fowlerによるマイクロサービスの解説。2014年5月に公開Martin Fowlerのブログは翻訳が可能で、日語訳を公開してくれている人がいる。こちら単純に言えば、「マイクロサービスとは単一のアプリケーショ

    マイクロサービスに関する資料のまとめ
    akuwano
    akuwano 2015/10/26
  • 【資料公開】スクラムの基礎 | Ryuzee.com

    みなさんこんにちはこんにちは。 ふと思い立ったので昔スクラムのコーチングで使っていた説明資料(2013年のもの)を公開します。以下からどうぞ。 それでは。 SCRUM BOOT CAMP THE BOOK【増補改訂版】 スクラムチームではじめるアジャイル開発著者/訳者:西村 直人、 永瀬 美穂、 吉羽 龍太郎出版社:翔泳社発売日:2020-05-20単行(ソフトカバー):288ページISBN-13:9784798163680ASIN:4798163686

    【資料公開】スクラムの基礎 | Ryuzee.com
    akuwano
    akuwano 2015/07/07
  • オープンソースのTrelloクローン Libreboard | Ryuzee.com

    Trelloは、https://www.trello.com で提供されているオンラインのタスク管理サービスで、利用している人も多いと思います。僕自身も以前書いたSCRUM BOOT CAMP THE BOOKの執筆の進捗管理や、Regional Scrum Gathering Tokyoのタスク管理などで使っていました。 このTrelloのオープンソース版のクローンが登場したので紹介します。 LibreboardLibreboardは、こちらで開発が進められているオープンソースソフトウェアでMITライセンスで提供されています。2014年の頭に開発が始まり、最初の開発ペースは早くありませんでしたが、昨年末くらいから急激に開発速度が上がってきているようです。 技術的には、NodejsのフレームワークであるMeteor(メテオ)を利用しています。 Meteorの詳細については以下を参照すると良

    オープンソースのTrelloクローン Libreboard | Ryuzee.com
    akuwano
    akuwano 2015/01/13
    おぉ
  • Sensu on AWSな話

    全国2000人のSensuファンのみなさん、こんにちは。 ということで、すでにご存知の方も多いような気もしますが、6月20日(金)にJAWSUG東京第22回勉強会で話してきたので、スライド晒しておきます。 ちなみにこのスライドには書いてないけど、覚えておくと得かもしれないこととして SensuではClient側からServer側にKeepaliveの通知を送り続け、一定時間この通知がこない場合はServer側で死活監視エラーとみなすようになっている。したがって各サーバの時間はntpとかでちゃんと合わせておかないといけないCommunity Pluginを使うのはOKだが、レポジトリが大きすぎかつ若干取り扱いが雑なので、ChefのCookbookでremote_fileとかで自動で取ってくるようにすると、たまにハマるかもしれない。一度ローカルにコピーして安定版を自分でアップロードするようにし

    Sensu on AWSな話
    akuwano
    akuwano 2014/06/23
  • 5分で分かるDockerのキホン

    全国100万人のImmutable Infrastructure職人のみなさんこんにちは。 もう誰も彼もがDockerなので、あんまりブログに書こうという気にもならなかったのですが、知り合いからリクエストを貰ったので、5分くらいで分かるようにかいつまんで概略を説明します。 Dockerとは詳しくは家サイト見ればだいたい分かる。仮想化技術コンテナ単位でパッケージングVirtualBoxとかと違って高速、オーバーヘッドが少ない。chrootに近い。LXCには依存しなくなっているコンテナごとにIDが振られるコンテナは差分保存なのでロールバックも簡単一回作ればどこでも動く。JavaっぽいDockerfileでコンテナを作成するDockerfileの1行ごとにコンテナIDがフラれる動作環境Linux Kernel 3.8以降 64bit OSMacの場合はVirtualBoxの中で動かす形になる→

    5分で分かるDockerのキホン
    akuwano
    akuwano 2014/05/28
  • ChefのCookbookのベストプラクティス

    OpsCode社のシニアコンサルタントであるJulianさんがChefConf2013で話された内容が参考になるので、簡単に紹介します。 スライドはこちらに公開されています。 また動画はこちらです。 ここで出てこない話として僕がやるべきだと思うことは「テストを書くこと」です。 test-kitchenとserverspecの組み合わせがおすすめです。 ばかでかいレポジトリをつくらないいろいろなものをまぜこぜにしない たくさんのレポジトリに分割するのを怖がらない (opscodeも昨年opscode/cookbooksの巨大構成から、opscode-cookbooks/個別cookbookに構成を変えています) 個々のCookbookの連携はBerkshelf使えば大丈夫 全員が共用するような会社用Cookbookをつくらない関係ないプロジェクトのものが含まれると見通しが悪くなる 大きすぎる

    ChefのCookbookのベストプラクティス
    akuwano
    akuwano 2014/04/03
    いいね。
  • Sensuを使って自由度の高い監視システムの構築を行う方法

    SensuとはSensuはhttp://sensuapp.org/で公開されているオープンソース(MITライセンス)のモニタリングフレームワークです。 特徴以下のような特徴があります(公式サイトの記述を整理) シンプルで融通が効き拡張性があるモニタリングフレームワークエージェント、メッセージバス、イベントプロセッサーの機能を提供要件にあわせて他のツールとの組み合わせが可能クラウドを意識して開発自動でクライアント(監視対象)を登録コミュニティが活発RubyのEventMachineを使って作られているコードはGitHubホストされ、テストコードは高いカバレージ。TravisCIで継続的インテグレーションを実施Nagiosのプラグインを再利用可能設定はすべてJSONファイルで行うRabbitMQを使ったメッセージ型のアーキテクチャーオムニバスインストーラーを提供個人的な見解としては、Sens

    Sensuを使って自由度の高い監視システムの構築を行う方法
    akuwano
    akuwano 2014/03/19
  • vagrant-global-status v0.1.4をリリースしました

    以前、このサイトでVagrantの仮想マシンの一覧を簡単に取得する方法として、vagrant-global-statusというプラグインを使う方法を紹介しました。 その後何回かGitHub上でPRを送っていたところ、vagrant-lxcの作者でもあるFabio Rehmさんから、自分は思ったほどこのプラグイン使わないので、権限付与するのでどんどん開発してくれていいよ、という流れになり、バージョンアップしましたのでお知らせします。(Saharaの時と同じパタン…) インストール vagrant plugin install vagrant-global-status v0.1.4で出来ること 起動中の仮想マシンの一覧を取得する(VirtualBoxに限らず、他のモノにも対応しています) vagrant global-status 起動の状態に関係なく全仮想マシンの一覧を取得する(いままでp

    vagrant-global-status v0.1.4をリリースしました
    akuwano
    akuwano 2013/12/26
  • vagrant-serverspecを使ってプロビジョニング結果をテストする

    全国1000万人のVagrant利用者のみなさんこんにちは。 Vagrantいいですよね!そしてインフラの状態をテストするserverspecもいいですよね!この2つがシームレスに統合されるとかなりうれしいですよね! ということで日12/2にvagrant-serverspecというプラグインがリリースされたので早速紹介します。 インストールインストールは簡単です。いつも通りvagrant plugin install vagrant-serverspec としてください。 コード自体は https://github.com/jvoorhis/vagrant-serverspec で公開されています。まだバージョン0.0.1なので、問題を見つけたらPR送るなりIssueを切るなりすると良いと思います。 使い方使い方も簡単です。まずVagrantfileを見てみましょう。 これは何をやって

    vagrant-serverspecを使ってプロビジョニング結果をテストする
    akuwano
    akuwano 2013/12/04
  • Packer & Chef-SoloでAmazon EC2のAMIを簡単に作る方法

    全国1000万人のPackerユーザーのみなさんこんにちはこんにちは。 Packerは、Mitchell Hashimotoさんによって開発が進められている様々な環境の仮想マシンのテンプレートを簡単に作れるツールです。例えばVagrantを使っている場合はいままではPatrick Deboisさんが作っていたVeeweeを使うのが定番でしたが、このPackerの登場で主流が移りつつあります。 またPackerでは、Amazon EC2用のAMI (Amazon Machine Image)を作成することもできます(某ドラクエ好きな著名エンジニアのIさんが「PackerはAMI作成ツールだ!」と言っていたのを聞いたような気がw) 今までは、Packerでミドルウェアやパッケージをインストールしたり、細かい設定をする場合にはShellのProvisionerを使っていたのですが、先日登場したバ

    Packer & Chef-SoloでAmazon EC2のAMIを簡単に作る方法
    akuwano
    akuwano 2013/11/23
  • vagrant-lxcで軽量仮想環境を手に入れる

    Vagrantは標準ではVirtualBoxを仮想環境として利用しますが、とにかく遅いのが難点です。 Test-Kitchenを使ってChefのCookbookのテストをしたり、これらを継続的インテグレーションしようとしたときにこの遅さはたまりません。いくつか手段はあってお金持ちの皆様であれば、大富豪アプローチということで、仮想マシンを動かす母艦にXeon E5-2697 v2を積んだ高性能マシンを使ったりもできるのですが、普通に考えれば、VirtualBoxよりも軽量な仮想環境を使うのが有力なアプローチです。 今回はLXCを使って軽量な仮想環境を手に入れる方法を紹介します。 LXCのインストールLXC自体の説明はこの辺とかこの辺を参照ください。 インストール対象の母艦はUbuntu 12.04 LTSです。 sudo apt-get install lxc sudoの設定変更sudoのバ

    vagrant-lxcで軽量仮想環境を手に入れる
    akuwano
    akuwano 2013/11/05
  • Vagrantで仮想マシンの一覧を簡単に取得する方法

    全国1000万人のVagrantユーザーのみなさんこんにちは。 Vagrantを普段から多用していると、知らないうちに仮想マシンが沢山起動していて母艦に負荷がかかったり、止めるの面倒くさい~といったことがよくあります。 VirtualBoxの場合は以下のようにVirtualBoxの画面で起動中の仮想マシンの一覧を把握できますが、どこのパスで起動した仮想マシンなのかもよく分からないため十分ではありません。 そこで今日は起動中のVagrantの仮想マシンの一覧を簡単に取得する方法を紹介します。 プラグインのインストール 今回使うのはvagrant-global-statusというプラグインです。 インストールは vagrant plugin install vagrant-global-status でOKです。 実行するには、好きな場所で vagrant global-status -a と

    Vagrantで仮想マシンの一覧を簡単に取得する方法
    akuwano
    akuwano 2013/08/18
  • DevOpsに関する12のアンチパターン

    みなさんこんにちは。@ryuzeeです。 DevOpsGuysというサイトのTwelve DevOps Anti-Patternsという記事が秀逸です。 作者の方に許可を頂き翻訳しましたので公開します。 原文も軽妙なタッチで読みやすいと思いますのでぜひご参照ください。 また文で様々なスライドや資料へのリンクがありますので、そちらも見ていただくと理解が深まるんじゃないかと思います! えっとDevOpsを始めたいのかな?おっけー。ただ始める前に、やってはいけないいくつかのことについて見ておこう。 古き良き時代には単に「良くないアイデア」って呼んでいたんだけど、外交やポリティカル・コレクトネス運動の結果、ブレストやアイデアシャワーをして、最近は「アンチパターン」と呼ばれるようになった。 パターンが絶対的に正しいのであれば、すなわち「アンチパターン」は間違いということになる。そして間違いを避ける

    DevOpsに関する12のアンチパターン
    akuwano
    akuwano 2013/07/26
    良い翻訳で面白かったw 間違いなく正しいし、やりたいと思うけど、こういうのを見るとDevOpsはボトムアップで動くべきかトップダウンなのかをちょっと考えるなー
  • 書評 入門Chef Solo - Infrastructure as Code

    伊藤直也さんがChef Soloのを書かれたということで早速購入してみました。最近流行りのAmazon Kindle ダイレクト・パブリッシング(KDP)を使って出版されてます。 Chefは結構巨大な仕掛けになっており、はじめて取り組む人はどこから手をつけて良いのか分かりにくかったりします。日語のリソースは今まではSoftware Designで並河さんらが書いた特集くらいだったと思いますし、色々やろうとするとopscodeのサイトの膨大なリファレンスを読まないといけない状況でした。 このでは、Chefの基を、Chef Soloを使ったやり方を通じて、平易な日語で説明しており、とっかかりとして非常に良いです。簡潔にまとまっているのでとりあえず通読するなら1時間くらいでしょう。書いてある内容は、VagrantやAWSを使えば簡単に試すことが出来ます(オンプレじゃこうはいかない)。

    書評 入門Chef Solo - Infrastructure as Code
    akuwano
    akuwano 2013/04/07
  • 【資料公開】アジャイルな開発からアジャイルな組織へ

    みなさんこんにちは。@ryuzeeです。 2012年3月16日に実施されたAgile Japanの大阪メイン会場に登壇させていただきました。 発表の資料を以下に公開します。 会場の外まで立ち見が溢れるくらいの多くの方にお越しいただき感謝するとともに、ご不便をおかけした方にはお詫びしたいと思います。 僕が話した内容は、実は単に実際の現場で、現場を良くしたいと思っている皆さんの胸のうちを代弁しただけです。 アジャイルという単語、スクラムやXPといった手法の名前自体の認知度があがって、ともすればこれらを導入すれば全てうまくいくんだ、と誤解を生んでいるのではないかと感じています。 でも手法は手法でしかなく(したがってスクラムやXPを導入しているからといって自分たちのアジャイル度合いが高いとは限らない)、目的に応じてそれにあった方法、自分たちがゴールを達成するのに最適だと思う方法を脳みそ振り絞って考

    【資料公開】アジャイルな開発からアジャイルな組織へ
    akuwano
    akuwano 2013/03/25
    いいスライドだった。
  • test-kitchenを使ってChefのレシピを複数環境でテストする方法

    test-kitchenはopscodeが提供するChefのレシピをテストするための仕掛けで、Vagrantを使って複数のOSやOSのバージョンを立ち上げレシピをテストすることができる。(Vagrant以外も使える) テストはminitestやcucumberなどを使って記述する。 テストの流れは以下のようになる。 設定ファイルに記載されたOSをVagrantで起動する(既にOSが起動している場合はそのまま利用する。ひな形となるbaseboxが存在しない場合は、設定ファイルに記載された入手元からbaseboxをダウンロードする)Vagrant側とレシピが共用され、レシピが実行されるレシピ実行後、テストが実行されるテストが終了すると、OSの設定が複数あれば次のOSを使ってテストするでは早速設定を行なってみよう。まず1つのレシピをテストする場合だ。 1つのレシピをテストする場合まずトップディレ

    test-kitchenを使ってChefのレシピを複数環境でテストする方法
    akuwano
    akuwano 2013/03/21