You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
こんにちは。@jedipunkz です。 私もインフラのプロビジョニングツールとして Chef ではなく Ansible を使うことが増えたのですが、Chef を使っていた頃に同じく利用していた test-kitchen が便利だったので ansible と併用できないかと思い試してみました。test-kitchen は Docker コンテナや EC2 等を起動して Chef, Ansible 等で構成をデプロイし serverspec 等のテストツールで構成をテストできるソフトウェアです。AWS EC2 でデプロイしてもいいのですが、EC2 を起動してデプロイして失敗したら削除してのサイクルを回すことを考えるとだいぶ面倒なので Docker + test-kitchen を使ってこのサイクルを高速に回す方がメリットが大きそうです。今回は Docker + test-kitchen を使
メニュー 本ハンズオンのゴール Serverspec で提供される各種バックエンドを試してみます Docker バックエンドを利用して Dockerfile のテストを作成し、テストを行います Infrataster を利用して Web サイトの振る舞いのテストを行います おまけで Jenkins を利用してテスト、Docker Hub へのコンテナイメージの自動化も行います 注意 資料の見方 事前準備について 資料内で紹介する各種ツールのバージョンについて 後片付けはしっかりと 参考資料 参考 URL 参考書籍 ハンズオン資料 ハンズオン教材 2. テストコードの書き方 2.1. Rspec とは 2.2. spec_helper.rb 2.3. Resouce Type 2.4. テストを書いてみよう 3. Docker バックエンドを利用して Dockerfile をテストする 3.
メニュー 本ハンズオンのゴール Serverspec の各種バックエンドを試してみます Docker バックエンドを利用して Dockerfile のテストを作成し、テストを行います Infrataster を利用して Web サイトの振る舞いのテストを行います おまけで Jenkins を利用してテスト、Docker Hub へのコンテナイメージの自動化も行います 注意 資料の見方 事前準備について 資料内で紹介する各種ツールのバージョンについて 後片付けはしっかりと 参考資料 参考 URL 参考書籍 ハンズオン資料 ハンズオン教材 1. 事前準備 1.1. Serverspec を実行する仮想マシンを用意する 1.2. 仮想マシンに Ruby をインストールする 1.3. 仮想マシンに Serverspec をインストールする 1.4. 仮想マシンに Docker Engine をイン
はじめに やること Jenkins を使って Dockerfile のテストを自動化 テストが通ったらコンテナをビルドして Docker Hub にコンテナイメージを push 必要なもの 以下のアカウントを既にお持ちであるという前提で資料を進める。 Docker Hub のアカウント GitHub のアカウント 上記のアカウントが無い方は事前に取得しておきましょう。(※ 取っておいて損は無いと思います) ハンズオンの流れ 仮想マシンに Jenkins を導入 Jenkins プラグインを導入 GitHub 上のハンズオンリポジトリを fork する fork したリポジトリと Jenkins を連携させる コンテナをビルドして Docker Hub に push するジョブ(ジョブ B)を作成する Dockerfile をテストするジョブ(ジョブ A)を作成する ビューにてパイプライン表
TL;DR リモートサーバー(Cent OS 6.8)をJupyter Notebook専用サーバーにしたときのステップを再現してみました。チームで分析専用サーバーとして使え、便利です。 環境 Cent OS 6.8 Anaconda (Python 3.5.1) Jupyter Notebook (4.1.0) Pyenv (20160509-74-ge93ae00) Nginx (nginx/1.10.1) 1. Pyenvをインストール 複数のPythonバージョンを簡単にスイッチングできるようにPyenvをインストールする。 curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash
NumPyは、科学技術計算を行う、特に行列や多次元配列の計算をするのに便利なPython用の拡張モジュールです。 ですが、数学を使わなくても、NumPyは便利です。 特に、[ [1,2],[3,4],[5,6] ]のような多重リストを使う代わりに、NumPyの配列を使った方が便利な場合があります。 今回は、NumPyの主に配列の使い方について、用例を挙げて紹介したいと思います。 はじめに NumPyは、数学向けのライブラリーではありますが、NumPyの配列は、数学とは関係なく便利に使える部分もあります。 とは言え、ウェブ上のサンプルは数学で使う人のものが多いですし、数学以外で具体的にどう使うのかは分かりにくいのではないかと思いました。 そこで、数学とはほとんど関係ない使い方をいくつか例示して、NumPyの(主に配列の)便利さを紹介するのがこの記事の目的です。 私も数学は得意ではないですし、
はじめに メモリ使用率が上昇傾向のインスタンスについて調査をしましたので調査内容と対応内容についてご紹介します。 初動調査 freeコマンドで確認 $ free -m total used free shared buffers cached Mem: 7986 7657 329 33 99 312 -/+ buffers/cache: 7246 740 Swap: 0 0 0 メモリ使用量は7246MB topコマンドで確認 topの後にshift + m top - 12:40:32 up 36 days, 12:26, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 96 total, 1 running, 95 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100
西澤です。日頃お世話になっているJAWS-UG CLI専門支部が主催するAWS CLIカンファレンス2016(AWS CLIを冠するカンファレンスは世界初とのこと)に参加してきましたので、ちょっと雑なメモもありますがレポートさせていただこうと思います。 実行委員会に名前だけありますが、ほとんど手伝えませんでした。申し訳ありません。 AWS CLI カンファレンス 2016 - JAWS-UG CLI専門支部 | Doorkeeper 13:40 - 基調講演 (AWSJ酒徳さん、小梁川さん) AWS CLIの基本的な考え方から開発時のTips、運用での活用事例をご紹介いただきました。知らなかったツールや手法もご紹介いただいたので、改めて試してみたいと思います。 AWS CLIの基本(AWSJ酒徳さん) 2013年から9月からあるサービス aws configure Query HTTPレス
はじめに 定型的な処理をミス無くこなす事が苦手なt.hondaです。そんな私の元に、毎月一回手動でスクリプトを実行しなければならない運用がありました。今回はこれをLambdaとEC2の組み合わせで自動起動するバッチ処理化してみました。 実装言語はPythonとなります。 処理概要 LambdaとEC2を組み合わせについて 以下のメリットを考慮し、LambdaとEC2を組み合わせることにしました。 EC2内で既存のスクリプトを実行することでスクリプト自体は改修することなく流用できる(スクリプトの対応OSによるが) EC2内でスクリプトを実行することで、処理時間を考慮する必要がなくなる(Lambda単体ではタイムアウトがある) 実行時のみLambdaよりEC2を起動することで利用料金を押さえる 処理フロー 処理としては単純で 実行するスクリプトをEC2内で実行するようにする そのEC2はLam
はじめに 最近Reactとか触っています。Github上とかでいろいろなコードを見させていただくのですが、React周辺はReduxを使っているのでBabel使ってるけど、テストはFacebookのJestを使っていてあんまりBabel使えてなかったり、もはやテスト書いてなかったりします。 そもそもReactはフロントエンドのライブラリなので、あまりテストを書きたくなくなるのもわかります。ですが、Railsやっててもなるべくテストを書くことを尊重する雰囲気になってきているので、React周辺でもテストを書いていきたいのです。そこで、JestではなくてMochaとChaiを使ってテストを書くにはどうするべきなのかと思い、まとめました。 環境 node: v5.1.0 npm: 3.3.12 ディレクトリ構成 . ├── .babelrc ├── .eslintrc ├── package.j
(2016/7/7、いただいたフィードバックを元に記事を修正いたしました。) JavaScript、特にNode.jsといえば、 コールバック地獄 がよく連想されます ^(1) 。たくさんの非同期I/Oを扱うコードを書いたことがある方には、おそらく以下のようなパターンはおなじみでしょう。 export default function getLikes () { getUsers((err, users) => { if (err) return fn(err); filterUsersWithFriends((err, usersWithFriends) => { if (err) return fn(err); getUsersLikes(usersWithFriends, (err, likes) => { if (err) return fn (err); fn(null, lik
Expressとは? Node.jsは言わずとしれたサーバーサイドJavascriptの実行環境。 ExpressはそのNode.jsでの王道的な開発をスピードアップするためのフレームワークです。 Expressを使った開発効率向上の具体例としてREST APIの開発があります。REST APIを提供するWebサービスを開発する場合、URIやBodyを解析してリクエストの内容とデータを識別する必要があります。 例えば写真共有サービスを開発していて、とある写真を返すREST APIを提供する必要があるとします。このAPIが下記のようなフォーマットになるとします。 このAPIを提供するサーバーは上記URIから下記のようにリクエストの内容を解析する必要があります。 このリクエストは1枚の写真を要求している。 リクエストしている写真のIDはYOUR_PHOTO_ID。 これは例えば正規表現などのパ
WebSocketを用いたオープンソースなリアルタイムチャットシステムrespassをリリースしました。 TL; DR 無職2人が3週間で https://respass.sketch-glass.io/ を作りました。 ソースコードはGitHub上で公開されています。 github.com 自己紹介 @minamorl 無職 Pythonエンジニア GitHub @seanchas_t 無職 C++/TypeScriptエンジニア GitHub はじめに この記事は主に技術者に向けて書かれていますが、そうでない方にも読めるような表現を重視しています。難解な用語にはなるべく注釈をいれました。技術的な話よりも「無職2人がいかにして3週間で作り上げたのか?」という開発フローの話に重きをおいたので、非技術者の方にも楽しく読んでいただけると思います。 なぜ作ったか オープンソースなチャット 近年、
普段はSkyWayの開発・運用をしている@iwashi86です。2015/7/15(金)に、@renjikariと協力して、NTTコミュニケーションズの1つの部署にて社内ISUCONを開催いたしました。 本記事では、社内ISUCONを開催するにあたり考えた内容・取り組んだ内容・その結果などを紹介します。 自社でISUCONを開催したい場合などに、本記事の内容が参考になるかと思います。 開催に向けた目的 大きく以下の2点を目的としました。 エンジニアの技術力向上 エンジニアのモチベーション向上 本目的達成に向けて、弊社は通信事業者であることから、開催方針や準備事項に多少の工夫を加えています。 開催方針 ISUCONは、主にWeb系のインフラエンジニア・アプリケーションエンジニアの間で知名度が高いと思いますが、弊社には様々な領域での業務があり、Web系以外のエンジニア(例:ネットワークエンジニ
Go1.7ではgolang.org/x/net/contextがcontextパッケージとして標準パッケージに仲間入りする.そしていくつかの標準パッケージではcontextパッケージを使ったメソッド/関数も新たに登場する.contextパッケージは今後さらに重要な,Gopherは普通に扱うべき,パッケージになると考えられる.本記事ではそもそもcontextパッケージとは何か?なぜ登場したのか?なぜ重要なのか?どのように使うべきか?についてまとめる. contextパッケージが初めて紹介されたのは2014年のThe Go Blogの記事 “Go Concurrency Patterns: Context”である.この記事ではなぜGoogleがcontextパッケージを開発したのか,どのように使うのか具体的な検索タスクを例に解説されている.まだ読んだことがない人はそちらを先に読むと良い. co
[追記] id:mattnさんのgodmineがあるので, xlsxをコマンドラインから扱うツールを作りました. たぶん組み合わせて使ったほうが使い勝手いいです.たぶんね. golangでRedmineの情報をExcelにするコマンドラインクライアントを作りました. github.com 使い方 準備 RedmineのRESTful APIを利用するので設定が必要です.設定は以下のリンクを参考に. REST API - Redmine インストールはgoが入っていれば下記で大丈夫なはずです. $ go get golang.org/x/text/encoding/japanese $ go get github.com/twinbird/rdm 起動するとRedmineのURLとAPI Keyが求められるので入力してください. (ホームに.rdmファイルを作って記録されます) 機能 プロジ
インフラエンジニアも、そうでないエンジニアも、程度の差こそあれAWS(パブリッククラウド)の知識は欠かせないものになりつつあります。しかしながら、食わず嫌いだけならまだしも、AWSにそこそこ取り組み続けているのに、しばしば嫌気がさすことすらあるのは、AWSの複雑さが原因の1つであるといっていいでしょう。 今回は、そんな複雑な仕組みの一つを、Terraform用にコード化することでココロのスキマ、お埋めします。 Infrastructure as Code の過程 Infrastructure as Code によって、手動管理をやめて自動化することのメリットは言うまでもないですが、今回は自動化する過程にこそ非常に大きなメリットがある、という視点にスポットを当てていきます。 AWSは多機能で便利であるがゆえに、複雑です。そして、複雑であるがゆえに、お客さんに簡単に扱ってもらえるよう、操作が簡
<script src="//typekit.com/fj3j1j2.js"></script> <!-- This second script won’t execute until typekit has executed, or timed out --> <script src="//my.site/script.js"></script> ローカルスクリプトとリモートスクリプトを組み合わせても同様に操作することができます。 機能的には、Webページの前の部分で重いスクリプトのロードがあると、サイトの表示が明らかに遅くなることを意味します。さらに、ページの最後の方で表示されるスクリプトは、それまでに存在するされたスクリプトの動作に依存することを意味します。 先行する全てのscriptタグがロードされ実行されるまで、ページ上の要素は表示されません。つまり、パフォーマンスへの悪影響を覚
{ "entities": [ { "salience": 0.26294392, "mentions": [ { "text": { "content": "語", "beginOffset": 51 }, "type": "COMMON" }, { "text": { "content": "語", "beginOffset": 63 }, "type": "COMMON" }, { "text": { "content": "語", "beginOffset": 81 }, "type": "COMMON" } ], "type": "OTHER", "name": "語", "metadata": {} }, { "salience": 0.16206388, "mentions": [ { "text": { "content": "Google", "beginOffset":
Check out "Do you speak JavaScript?" - my latest video course on advanced JavaScript. Language APIs, Popular Concepts, Design Patterns, Advanced Techniques In the Browser Long time I was searching for a good front-end framework. Framework that will help me write scalable and easy to maintain UI. Even though React is just a library for rendering it comes with so many benefits that I can easily say
現在、Twitter は1秒間あたり3,000枚の画像(約200GB)を作成し持続している。 しかしながら、2015年に Twitter はこれら画像ファイル等メディアファイルの保存方法を改善したために、600万ドルを節約することができた。 以前からそうだったわけではない。Twitter は2012年には主にテキストベースだった。 これはまるで、ホグワーツ魔法魔術学校であのかっこいい動く絵が壁にかかってないようなものだ。 2016年の今では Twitter はメディアを駆使した方向へと移行している。 Twitter は、プレビュー、マルチフォト、gif、vine、埋め込みビデオなどで写真をサポートできる新たなメディア・プラットフォームの開発を経て変化したのだ。 Twitter社のソフトウェア開発エンジニアであるHenna Kermani氏が、Mobile @Scale Londonでの興味
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く