タグ

ブックマーク / mag.osdn.jp (30)

  • Apache Hadoop上でTensorFlowを動かす「TonY」 | OSDN Magazine

    Microsoft傘下のLinkedIn開発者は9月12日、Apache Hadoop上でTensorFlowをネイティブに動かすオープンソースプロジェクト「TensorFlow on YARN(TonY)」を発表した。 TensorFlow on YARN(TonY)は、大規模なApache Hadoop実装上で分散型で機械学習を運用するためにLinkedIn社内で開発されたフレームワーク。単一ノードまたは分散型のTensorFlowトレーニングをHadoopアプリケーションとして動かすことができる。 開発チームによると、それまで「TensorFlow on Spark」やIntelの「TensorFlowOnYARN」を試したが、信頼性や柔軟性に欠けたため新たに開発することにしたという。TonYでは、リソースネゴシエーションやコンテナ環境設定などのタスク処理を通じてTensorFlo

    Apache Hadoop上でTensorFlowを動かす「TonY」 | OSDN Magazine
  • 【Jenkinsを使った自動テスト環境を作る】パイプラインを使ったビルド/テストの自動化 | OSDN Magazine

    継続的インテグレーション(CI)ツールとして有名なJenkinsは、ソフトウェア開発におけるテストやビルドと言った作業を自動化するツールだ。記事ではJenkinsの最新版となるバージョン2系で正式に導入された、パイプライン機能を使ったビルド/テスト環境の構築を紹介する。 CIツールと「Jenkins」 ソフトウェア開発の現場において、そのテストはソフトウェアの設計やコーディングと同じくらい重要な過程である。近年のWebアプリケーションやスマートデバイス向けアプリケーション開発ではアプリケーションのリリース間隔が短くなっている傾向があり、そのためテストもより迅速かつ頻繁に行わなければならくなっている。そういった環境で有用なのが、継続的インテグレーション(CI)ツールだ。 CIは、元々は「ソフトウェアの開発コストを下げるためには開発の初期から頻繁にテストを行ってフィードバックを行うべき」とい

    【Jenkinsを使った自動テスト環境を作る】パイプラインを使ったビルド/テストの自動化 | OSDN Magazine
  • 【Jenkinsを使った自動テスト環境を作る】Dockerコンテナを使って自動ビルドを実行する | OSDN Magazine

     継続的インテグレーション(CI)ツールとして有名なJenkinsは、ソフトウェア開発におけるテストやビルドと言った作業を自動化するツールだ。後編となる今回は、Dockerを使ってコンテナ内に構築したビルド環境をJenkinsから利用する例を紹介する。 Jenkinsの「マスター/スレーブ」機能 前回記事では、Jenkinsをインストールしたサーバー内でソフトウェアのビルドやテストを行うことを前提に環境を構築していった。Jenkinsをインストールしたサーバーと、対象とするソフトウェアのビルド/実行環境が同じで構わなければこれで問題はないが、たとえばそれぞれビルド/実行環境が異なる複数のソフトウェアをJenkinsで管理したい場合、このやり方では複数台のサーバーを用意しなければならない。 Jenkinsではこういった問題を解決するため、Jenkinsがインストールされたサーバーとは異なる

    【Jenkinsを使った自動テスト環境を作る】Dockerコンテナを使って自動ビルドを実行する | OSDN Magazine
  • 【Dockerの最新機能を使ってみよう】Dockerコンテナで利用できるリソースや権限を制限する | OSDN Magazine

    新たなサーバー環境構築ツールとして普及が始まっているDockerは、その開発も積極的に行われている。そこで連載記事では、4回に渡って最近Dockerに実装された新機能について紹介していく。今回は、コンテナに割り当てるリソースの制限やDockerが持つ権限分離機構について紹介する。 Dockerが備えるリソース制限機構 仮想化技術を利用するメリットの1つに、柔軟にリソースを管理できる点がある。Dockerでは古くからコンテナに割り当てるCPUリソースやメモリ容量を指定する機能があったが、Docker 1.6以降では割り当てるCPUリソースやメモリをより詳細に指定できるようになった。また、Docker 1.10ではブロックI/Oに関する制限も設定できるようになっている。以下では、これらコンテナに向けたリソース制限機能について紹介する。 稼働中コンテナのリソース使用状況を確認する リソースの制

    【Dockerの最新機能を使ってみよう】Dockerコンテナで利用できるリソースや権限を制限する | OSDN Magazine
  • 【Dockerの最新機能を使ってみよう】Dockerのボリュームプラグインとストレージドライバについて知る | OSDN Magazine

    新たなサーバー環境構築ツールとして普及が始まっているDockerは、その開発も積極的に行われている。そこで連載記事では、4回に渡って最近Dockerに実装された新機能について紹介していく。今回は、Dockerのボリュームプラグインとストレージドライバについて紹介する。 Dockerの「ボリュームプラグイン」と「ストレージドライバ」 昨今のDockerでは、各機能を個別のコンポーネントに分離する方向で開発が進められている。ストレージ関連の処理もすでに分離されており、「ボリュームプラグイン」やストレージドライバ」を使って目的や環境に応じた設定を行うことが可能になっている。この2つは名前が似通っているため混乱しやすいが、まったく別のものだ(図1)。 図1 ボリュームプラグインとストレージドライバ まずボリュームプラグインだが、これはコンテナ外のストレージをコンテナ内に「ボリューム」としてマウン

    【Dockerの最新機能を使ってみよう】Dockerのボリュームプラグインとストレージドライバについて知る | OSDN Magazine
  • 「docker import」コマンドでDockerコンテナをゼロから作る | OSDN Magazine

    Docker向けのコンテナを公開するDocker Hubでは多数のコンテナが公開されており、これらをベースにして独自のコンテナを作成できる。しかし、新規に独自のコンテナを作成したい場合もあるだろう。今回は、Dockerコンテナにおけるファイル/ディレクトリ情報の格納方法について解説するとともに、新規にコンテナを作成するのに必要な作業手順を紹介する。 Dockerにおける一般的なコンテナ作成手順 Dockerではよく使われるOS環境を含むコンテナがあらかじめ用意されており、それをベースに独自のコンテナを作成できる。しかし、公開されているコンテナではなく、ゼロからコンテナを構築したいという場合もある。 たとえばコンテナを公開できるリポジトリサービス「Docker Hub」で提供されている公式のCent OSのコンテナでは、ファイル容量削減のためか一部のファイルが削除された状態になっており、それ

    「docker import」コマンドでDockerコンテナをゼロから作る | OSDN Magazine
  • 15分で分かるLXC(Linux Containers)の仕組みとコンテナ作成 | OSDN Magazine

    最近注目されている仮想化技術の1つにLXCLinux Containers)がある。LXCはコンテナ型仮想化技術と呼ばれるものの1つで、OS上に別の隔離された環境を構築するものだ。今回はLXCの仕組みと、インストール方法、コンテナの作成/起動方法について紹介する。 さまざまな仮想化技術LXC 仮想化技術を使って一台のマシン上に複数の隔離された環境を構築する、というのはメインフレームの世界では古くから行われていたが、近年ではマシンの性能向上により、エントリレベルのサーバーでもこのような使われ方が実用的になっている。そういった背景の下注目されているのがLXCLinux Container)と呼ばれる仮想化技術だ。 広く使われている仮想化技術としてはXenやKVMがあるが、これらはホストOS(もしくはハイパーバイザ)上で演算によって仮想的なマシン環境を作り出し、その上でOSを実行させること

    15分で分かるLXC(Linux Containers)の仕組みとコンテナ作成 | OSDN Magazine
  • CoreOS内で使われている設定・ログ管理用Key-Valueストア「etcd 2.0」リリース | OSDN Magazine

    CoreOSで採用されているKey-Valueストア「etcd」開発チームは1月28日、初の安定版メジャーリリースとなる「etcd 2.0.0」を公開した。 etcdはCoreOSが設定やログの管理などで使用しているKey-Valueストア型データベース。共通の設定、サービスディスカバリー、スケジューラー調整などで利用されている。CoreOSだけでなくLinuxMac OS X、BSD系システムでも利用できる。Go言語で作成されており、コンセンサスアルゴリズムのRaftを利用して可用性のある複製ログを管理する。etcdを利用することで、サーバーダウンなどの障害が発生した時もアプリケーションがそのまま動くという。HTTPでアクセスできるAPIやSSLクライアント認証のオプション提供などの特徴を持ち、高速、高い信頼性もうたっている。CoreOSのほか、GoogleのKubernates、Pi

    CoreOS内で使われている設定・ログ管理用Key-Valueストア「etcd 2.0」リリース | OSDN Magazine
  • Node.jsからフォークした「io.js」バージョン1.0系がリリースされる | OSDN Magazine

    「io.js」の開発プロジェクトは1月14日、「io.js 1.0.0」および「io.js 1.0.1」をリリースした。io.jsはNode.jsの開発体制に対し異議を持つ開発者らが立ち上げたプロジェクトで、Node.jsとの互換性を保ちつつ機能強化や改善を行うことを目的とする。 io.jsは一部のNode.js開発者が2014年12月にスタートしたプロジェクト。Node.jsの開発とメンテナンスを行う米Joyentのプロジェクトの進め方などに不満を持ったことがフォークプロジェクト開始につながっており、io.jsではオープンガバナンスモデルの下で高速かつ予測性のあるリリースサイクルを持つプロジェクトを進めて行くと強調している。io.jsもGoogle ChromeのV8ランタイムをベースとするJavaScriptプラットフォームで、Node.jsやそのパッケージと互換性がある。 io.js

    Node.jsからフォークした「io.js」バージョン1.0系がリリースされる | OSDN Magazine
  • 既存のNoSQL型データベースより10倍高速をうたう「Aerospike」、オープンソースで公開 | OSDN Magazine

    NoSQL型データベースを開発するベンチャー企業の米Aerospikeは6月24日、同社が開発するデータベースシステム「Aerospike」をオープンソースソフトウェアとして公開したことを発表した。一般的なNoSQL型データベースの10倍、SQL型データベースの100倍の性能を実現可能とアピールしている。 Aerospikeはインメモリ型のリアルタイムNoSQLデータベース。RAM上にインデックスを、SSD上にデータを配置するといった柔軟性の高いインメモリ技術を持ち、大規模データをリアルタイムで高速に処理できるという。拡張性も高く、またACIDサポートやダウンタイムゼロという特徴もあるとしている。 サーバー側はハイブリッド型メモリシステムとリアルタイムエンジンをベースに、その上でスマートクラスタやデータセンターレプリケーション機能が動く。ノードを追加すると自動でデータの再配置と負荷分散が行

    既存のNoSQL型データベースより10倍高速をうたう「Aerospike」、オープンソースで公開 | OSDN Magazine
  • サーバー設定ツール「Chef」の概要と基礎的な使い方 | OSDN Magazine

    近年注目されているサーバー管理ツール「Chef(シェフ)」は、ファイルに記述した設定内容に応じて自動的にユーザーの作成やパッケージのインストール、設定ファイルの編集などを行うツールだ。今回はこのChefについて、基的な環境構築方法と使い方を紹介する。 前回はサーバーの設定管理ツールとして「Puppet」を紹介したが、今回紹介するChefは、このPuppetと人気を二分するサーバー設定管理ツールだ。 Chefは米Opscodeが開発しているオープンソースソフトウェアで、Rubyなどのオープンソースな技術を使って実装されている。ライセンスはApache License 2.0だ。同社はChefにいくつかの機能を追加した有償版の「Private Chef」やクラウド型の「Hosted Chef」といったサービスも提供しているが、記事ではオープンソース版のChefについて紹介する。 Chefと

    サーバー設定ツール「Chef」の概要と基礎的な使い方 | OSDN Magazine
  • 米Netflix、Amazonクラウド上でのHadoopの運用管理サービス「Genie」を公開 | OSDN Magazine

    Netflixは6月21日、Amazon Web Service(AWS)クラウド上に構築された「Apache Hadoop」を管理するソフトウェア「Genie」をオープンソースで公開した。Hadoopや「Apache Hive」、「Apache Pig」のジョブを実行したりHadoopリソースの管理を行うためのRESTful APIを提供するもので、動的なリソース管理が可能になるという。 Netflixはビデオストリーミングサービスなどを提供する企業。同社はサービスの運用に「Amazon S3」などAWSのクラウドサービスを多用、クラウド上に多数のHadoopを構築しており、それらを管理するために自社で開発したツールをオープンソースで公開している。今回公開されたGenieは「HadoopベースのPaaS」との位置付けで、Netflixがすでに公開している「Karyon」(ブートストラッ

    米Netflix、Amazonクラウド上でのHadoopの運用管理サービス「Genie」を公開 | OSDN Magazine
  • 運用管理ツール「Hinemos」によるサーバー死活監視 | OSDN Magazine

    サーバーの運用環境において、トラブルがいつ発生するのかを予測することは難しい。そのため、サーバーやそのサーバー上で動作するソフトウェアに問題が発生した際に迅速にそれを知ることができるよう、ツールなどを使ってサーバーを監視するのが一般的だ。このようなツールの1つにNTTデータが開発するオープンソースの運用管理ツール「Hinemos」がある。今回はHinemos 4.0を使ってサーバーの死活監視を行う方法について解説する。 無料で利用できるオープンソースの運用管理ツール「Hinemos」 複数台のサーバーマシンを運用している場合、運用を容易にするためになんらかの監視ツールを使用することが一般的だ。監視ツールは一定の間隔でマシンの状態をチェックし、問題が発生していれば管理者にそれを通知する。これにより、管理者は迅速にトラブルの発生を知ることができる。 監視ツールにはシンプルなものから多機能なもの

    運用管理ツール「Hinemos」によるサーバー死活監視 | OSDN Magazine
  • GitレポジトリをWebブラウザから管理できる「GitLab 5.3」リリース | OSDN Magazine

    Gitレポジトリ管理システム「GitLab」開発チームは6月20日、最新版「GitLab 5.3」をリリースした。リポジトリに対する活動を視覚的に表示する「リポジトリグラフ」の実装やコードスニペットの強化といった新機能が加わっている。 GitLabRuby on Railsを土台としたGit管理アプリケーション。WebブラウザからGitレポジトリの閲覧やコードレビュー、マージリクエストなどの操作を行うことができる。ライセンスはMIT License。 GitLab 5.3は5月末に公開されたバージョン5.2に次ぐ最新版となる。新機能となる「リポジトリグラフ」は、リポジトリに対する一定期間の活動データを視覚表示する機能。ユーザー別にコミット数をグラフで表示することもできる。また、コードスニペットが個人ユーザーにも対応し、自分のコードスニペットを作成したり共有することが可能となった。そのほか

    GitレポジトリをWebブラウザから管理できる「GitLab 5.3」リリース | OSDN Magazine
  • JSONベースのドキュメント指向データベース「RethinkDB 1.6」リリース | OSDN Magazine

    JSONベースのドキュメント指向データベース「RethinkDB」開発チームは6月13日、最新版となる「RethinkDB 1.6」(開発コード「Fargo」)を公開した。RethinkDBC++で書かれたオープンソースの分散型データベースで、JSON形式のドキュメントを保存でき、またRubyPythonJavaScript(WebブラウザまたはNode.js)からの操作をサポートする。 RethinkDBは分散型構成にも対応するドキュメント指向データベースで、分散環境におけるjoinやサブクエリ、アトミックな更新といった操作をサポートする。拡張性の高さやHadoopスタイルのMap/Reduce、シンプルなクエリ言語、メンテナンスのしやすさなどが特徴で、ライセンスはサーバーがAGPLv3.0、クライアントはApache License 2.0。 RethinkDB 1.6では、クエ

    JSONベースのドキュメント指向データベース「RethinkDB 1.6」リリース | OSDN Magazine
  • 専用ルータと同等の機能を備えるLinuxベースのソフトウェアルーター「Vyatta」を使う | OSDN Magazine

    専用サーバーサービスを使って複数のサーバーを利用している場合や、サーバー上に仮想マシンを複数稼働させてネットワークを構築しているといった場合、仮想的なルーターを利用できると便利なことが多い。記事では仮想マシン上にインストールして利用できるLinuxベースのソフトウェアルーター「Vyatta」を使い、専用サーバーのネットワーク上にルーターを設置する方法を紹介する。 ネットワーク環境を構築する場合、インターネットに直接接続されている必要の無いマシンについてはローカルネットワークを作成してそこに接続するのが一般的だ。これにより、マシンへの不適切なアクセスを防ぐことができ、セキュリティを向上させることができる。たとえば「さくらの専用サーバ」ではローカル接続機能が提供されており、複数台のサーバーをローカルネットワークで接続することが可能だ。これを利用することで、ローカルネットワークだけに接続され、

    専用ルータと同等の機能を備えるLinuxベースのソフトウェアルーター「Vyatta」を使う | OSDN Magazine
  • Linux Virtual ServerとKeepalivedで作る冗長化ロードバランサ | OSDN Magazine

    多数のクライアントがアクセスするような負荷の高いサービスや停止させられないサービスを運用する場合、複数のサーバーを使ってサービスの負荷分散や冗長化を行うのが一般的だ。記事では、「Linux Virtual Server(LVS)」を使ってこのような構成を実現する方法について紹介する。 Linuxサーバーをロードバランサにする「Linux Virtual Server」(LVS) 最近では多数のCPUコアを持つサーバーが安価で利用できるようになり、サーバー1台の処理能力は飛躍的に向上している。しかし、リクエストの処理に多くのリソースを使用するようなサービスや、短時間に多数のリクエストを処理する必要があるサービスでは、1台のサーバーだけでは処理能力が不足する場合がある。このような場合、複数台のサーバーで同じサービスを運用し、ロードバランサを使ってリクエストを振り分けることで負荷の分散を図るこ

    Linux Virtual ServerとKeepalivedで作る冗長化ロードバランサ | OSDN Magazine
  • 仮想ノードが加わった「Apache Cassandra 1.2」 | OSDN Magazine

    Apache Cassandraの開発チームは1月2日、分散型データベースシステム「Apache Cassandra」の最新版となる「Apache Cassandra 1.2」をリリースした。今まではβ版という位置付けだったクエリ言語「CQL 3」が正式版となったほか、より高密度なシステムの構築を支援する機能が導入されている。 Apache Cassandraは高速な処理を特徴とする分散型のカラム指向データベースシステム。元々は米Facebookが社内開発したものだったが、2009年にApache Software Foundation(ASF)に寄贈され、2010年よりトップレベルプロジェクト(TLP)として開発が進められている。米Adobe Systemsや米Cisco Systems、米eBay、米Twitter、米政府機関など多数の導入実績を持つ。 Apache Cassandra

    仮想ノードが加わった「Apache Cassandra 1.2」 | OSDN Magazine
  • はじめてのNode.js:マルチプロセスアプリケーションを作成する | OSDN Magazine

    記事は、3月13日にソフトバンク クリエイティブより発売された書籍「はじめてのNode.js -サーバーサイドJavaScriptでWebアプリを開発する-」から、「第14章 複数のプロセスを利用するアプリケーションを作る」の一部を抜き出し再構成したものです。 出版社ページ / Amazon.co.jpの商品ページ 大型: 384ページ、価格:3,045円(税込)、ISBN: 978-4797370904 Node.jsで複数プロセスを利用するアプリケーションを作る Node.jsでは通常、1つのスレッドですべての処理を実行する。そのため、プログラム中にCPUリソースを大きく消費するような個所があった場合、それ以外の処理がその影響を受ける可能性がある。たとえばサーバーアプリケーションにおいてクライアントからのリクエストを受けてイベントが発生しても、そのイベントハンドラは即座に呼び出され

    はじめてのNode.js:マルチプロセスアプリケーションを作成する | OSDN Magazine
  • はじめてのNode.js:Node.jsアプリケーションのデバッグ | OSDN Magazine

    記事は、3月13日にソフトバンク クリエイティブより発売された書籍「はじめてのNode.js -サーバーサイドJavaScriptでWebアプリを開発する-」から、「第7章 Node.jsアプリケーションのデバッグ方法」の一部を抜き出し再構成したものです。 出版社ページ / Amazon.co.jpの商品ページ 大型: 384ページ、価格:3,045円(税込)、ISBN: 978-4797370904 Node.js組み込みのデバッガを使う nodeコマンドには、CUIで操作できるデバッグ機能が組み込まれている。実行中のコードを表示したり、変数や関数の戻り値を表示する、といったシンプルな機能のみを持つデバッガであるが、別途ツールなどをインストールすることなしに手軽にプログラムの実行状況を確認できる。 デバッグ機能を使うには、node debugコマンドを使用する。 $ node deb

    はじめてのNode.js:Node.jsアプリケーションのデバッグ | OSDN Magazine