root@flannel01:~# apt-get update root@flannel01:~# apt-get upgrade -y root@flannel01:~# apt-get install build-essential linux-libc-dev bridge-utils git curl -y root@flannel01:~# wget -O - https://storage.googleapis.com/golang/go1.4.2.linux-amd64.tar.gz | tar -C /usr/local -vxzf - root@flannel01:~# echo 'export PATH=$PATH:/usr/local/go/bin' >> /etc/profile root@flannel01:~# source /etc/profile root
$ docker exec db ls -l /var/lib/postgresql/data/ total 100 drwx------ 5 postgres postgres 4096 Apr 17 10:57 base drwx------ 2 postgres postgres 4096 Apr 17 10:57 global drwx------ 2 postgres postgres 4096 Apr 17 10:57 pg_clog -rw------- 1 postgres postgres 4506 Apr 17 10:57 pg_hba.conf -rw------- 1 postgres postgres 1636 Apr 17 10:57 pg_ident.conf drwx------ 4 postgres postgres 4096 Apr 17 10:57 p
PyData.Tokyo第1回チュートリアルイベント開催! PyData.Tokyoオーガナイザーのシバタです。 PyData.Tokyoは「Python+Dataを通じて、世界のPyDataエクスパートと繋がれるコミュニティーを作る」ことを目的として設立され、これまでに行ってきた勉強会は、質の高い登壇者と参加者が「濃い」議論をできる場として、広く知られるようになりました。イベントを管理しているconnpass上では500人を超えるメンバー登録があり、CodeZineでの連載もたくさんの方に読んでいただいております。 PyData.Tokyoで当初目標としていたのは、レベルの高いデータサイエンティストの集まる会を作ることに加え、これからデータサイエンティストになることを目指している方々の育成です。データサイエンティストの不足はあらゆるところで聞かれ、一方で幸いにも多くの方が今後データサイエ
QConTokyo ( http://www.qcontokyo.com/KotaUENISHI_2015.html ) の発表スライド
A few months ago I wrote a toy financial application in R language that scans NYSE and NASDAQ's stocks, find interesting patterns in stocks' quote, generates a report and sends it via email. It ran quite smootly for a few months, but suddenly I became unsatisfied about how the infrastructure of the application was provisioned. A few months ago I wrote a toy financial application in R language that
昨日のエントリでも書いたきょんくんとの会話なんだけど、なんとなく、コメントとテストは同じように扱えるんではないかという認識のもとで話がすすんでた。もちろん、コメント書けばテスト書かなくていいとかそういうのではなくて。 テストは、書きやすい対象と書きにくい対象がある。関数的に計算を行うコードの場合はテストが書きやすい。一方で、関数的ではなく副作用のあるコードはテストが書きにくい。データベースを扱ったり通信したりUIがあったり。 そして、そのようなテストを書きにくいときに、コメントはテストのように品質のために使えるんではないか。 で、問題は、どのように品質のために使うかということなんだけど、コードレビューのときの指針として使えばいいんじゃないかなと思った。 コードレビューのとき、コードだけを見ていると、名前付けとかコードの順番とか条件文の使い方とか、体裁的なものだけのレビューになりがち。そこで
CloudStackは各種操作を実行するためのAPIを提供しています。 今回はcsというexoscaleにより開発されているシンプルなCLI/Pythonライブラリについて紹介します。 特徴 1ファイル約240行のシンプルな実装 Python2/3対応 POSTメソッドのサポート 非同期コマンドの同期・非同期実行可能 AnsibleのCloudStackモジュール(Extra)での採用 Cloud Modules — Ansible Documentation インストール pipを使ってインストールすることができます。 使い方 csはCLI、Pythonライブラリとして使用することができます。 CLIとして使用する 設定 まず認証情報等の設定を行います。 設定は環境変数または設定ファイルを用いて行います。 環境変数で設定を行う場合は、以下の環境変数を使用します。 $ export CLO
他者へのChef説明用資料置き場です。 概念から、導入背景、よく使う機能の説明をまとめています。 概念 以下で「Chefとは?」基礎的な概念と基礎的な動作を学びましょう。 - インフラストラクチャ自動化フレームワーク「Chef」の基本 (1/2) - Chef を始める #1 – 概要、Chef Server を EC2 上にインストール、Workstation の設定まで | Developers.IO 導入背景 なぜChefなどの自動化フレームワークが必要なのかを以下で学びましょう。 Immutable InfrastructureやInfrastructure as Codeを進めていく必要があり、 「インフラ構築の自動化」の技術も肝になります。 大規模システム構築に求められる自動化とChefの基本的な考え方とは インフラ系技術の流れ 「Immutable Infrastructur
gem which ohai # ohaiのインストールパスを確認 grep -R "provides" -h <ohaiのインストールパス>/lib/ohai/plugins | sed 's/^[\s ]*//g' | sed "s/\\\"/\'/g" | sort | uniq | grep "^provides" # ※CentOS6.5とMacOSXで動作確認 grep -R "provides" -h `gem which ohai | perl -e '@p=split(/\//,<STDIN>);pop(@p);print join("/",@p)."/ohai/plugins";'` | sed 's/^[\s ]*//g' | sed "s/\\\"/\'/g" | sort | uniq | grep "^provides" # ※CentOS6.5とMacOSXで
これまではSerfの基本的な使い方や、Serfで構成されたイベントハンドラの動きを見てきました。今回はSerfに関する連載のまとめです。複数の仮想サーバ上にも応用可能なように、Dockerコンテナでの活用方法をご紹介します。また、より詳細な設定方法についての理解も進めていきます。 Dockerコンテナ群をSerfで管理する方法 DockerはLinuxコンテナを簡単に起動・管理するためのツールです。Dockerの魅力は、単純にコンテナを操作できる点だけではありません。公開レポジトリであるDockerHubを使ったコンテナの共有や、Dockerfileと言う設定ファイルを使った構成管理の自動化などの利点があります。 コンテナ管理問題を解決するSerf コンテナを多く立ちあげた時に発生するのは、沢山のコンテナを効率的に操作するのかという課題です。例えばコンテナ内のプロセス稼働状況や、設定ファイ
障害の検知と、イベントハンドラーを行えるhashicorpのツール。 概要はこちらがわかりやすいです。 http://gihyo.jp/admin/feature/01/serf-consul NAT冗長化 最近はAutoScalingによる冗長化もあるが、 切り替わり時間を短くしたいためActive/Standbyによる冗長化を実装。 Serfにより障害を検知し、APIを使用しRouteTableを切り替える。 Serf実装 Active側が正常であれば、常に経路を寄せるようにする。 Standby側はActive側の障害を検知した際にRouteTableを書き換える。 また、疎通間隔を4秒とし、タイムアウト12秒設定することで最長の障害時間を12秒にする。 オプション等は以下が参考になります。 https://www.serfdom.io/docs/agent/options.html
こんにちは。SNS mixi の JavaScripter、kuniwak です。 新しい仲間たちが入社する季節になりましたね。 さて、ミクシィを支えるエンジニアが作成した JavaScript 研修の資料を Github にて公開しました。 ミクシィは 2013年から研修資料を公開していましたが、今年は JavaScript の進化に合わせて内容を刷新しています! 2015年度の JavaScript 研修は、Web アプリケーションの部品(モジュール)をつくれるようにすることを目標とした、実践的な研修として計画されました。 JavaScript 研修のために与えられた期間は2日ということもあり、MVC や Flux といった設計方面の話題には踏み込めていませんが、Promise、Fetch API、Bower など、現在・未来のフロントエンド開発に必須の要素を盛り込んだ最新のJavaS
Packer が Atlas の UI を通して、リモートでも使えるようになる、という HashiCorp ブログの投稿がありました。これまではコマンドラインでの作業が必要でしたが、今後はそれが不要。しかも、ビルド時の情報やアーティファクトを共有できるようになりました、という内容です。最後で、今後は GitHub との連携や、 Packer と Terraform との自動連係について触れられています。 というわけで、例によって参考訳です。 原文: Packer in Atlas: Automate the Building and Managing of Vagrant Boxes and Machine Images https://hashicorp.com/blog/atlas-packer-vagrant.html ※一応書いておきますと、本blogでの投稿は私個人の意志によるも
買物情報事業部の八木(@sys1yagi)です。 Android界隈でRxJavaが話題になっていますね。クックパッドアプリ(以後、「本体」と表現します)でも先日ついにRxJavaの導入を果たしました。本エントリではRxJavaをチームに導入する為に行ったいくつかの取り組みを紹介します。 目次 RxJava導入の失敗 どのような課題を解決するのか 導入の為に機能を分解し、学習コストを考える ブログを書く 低コスト、低リスクに導入する 勉強会を開く RxJava導入の失敗 2014年11月にRxJavaの1.0.0がリリースされました。遂に実用段階かという事で個人的にあれこれ触り、本体に導入する機会を伺っていました。ある日、bug fixの為にRxJavaを使うと簡潔になるのではないかと思い気軽にPull Request(以後、PRとします)を送った所、「このタイミングで急に導入する意図はな
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く