タグ

ブックマーク / thinkit.co.jp (194)

  • Docker実践ガイド

    Copyright © 2004-2024 Impress Corporation. An Impress Group Company. All rights reserved.

  • Dockerを理解するための8つの軸

    Docker」というキーワードが、サーバーまわりのキーワードとして定着しつつある。その一方で、触ったことのある人以外からは、「Dockerってよくわからない」「コンテナーって昔からあるのでは?」という声も聞く。 Dockerは、それまでにあった要素技術を組み合わせることで、サーバーアプリケーションを実行する便利な方法を作り出したものだ。そのため、1つの要素技術を見ただけでは、新しさや全体像がわかりにくい。 そこでこの記事では、Dockerを触ったことのない人向けに、Dockerを8つの軸から説明する。なお、ここではDockerそのものを解説するわけではないので、ご了解願いたい。 1. コンテナー Dockerはまず、コンテナー管理ツールだ。 コンテナーとは、1つのサーバーの上で、複数のサーバー環境をそれぞれ分離して実行する、一種の仮想化技術だ。「OSレベルの仮想化」とも呼ばれる。 複数の

    Dockerを理解するための8つの軸
  • Windows 10のレジストリ設定の基本

    すでにご存じの方も多いとは思いますが、今回はWindows 10でのレジストリ操作について基的な解説を行います。これは、毎回レジストリ操作を解説すると同じことを繰り返すことになるため記事が煩わしくなってしまうからです。 Windows 10にもレジストリがあり、編集にはレジストリエディタを利用します。レジストリエディタやレジストリ構造に大きな変更はなく、従来通りに行うことができます。ただし、筆者が試した範囲では、Windows 7、8.xで有効だったレジストリであっても、効果がないレジストリ設定がいくつかありました。レジストリの基構造からして、無効な編集であっても、エラーになることはありませんが、効果があるかどうかは実際に試してみるしかありません。 レジストリエディタの起動 頻繁にレジストリエディタを使うのであれば、スタートメニューやタスクバーに登録したり、あるいはデスクトップにアイコ

    Windows 10のレジストリ設定の基本
  • Dockerコンテナのパフォーマンス劣化とチューニング

    はじめに 連載の第2回『ベアメタル環境とDockerコンテナ環境の性能比較』で実施したコンテナ環境とベアメタル環境との性能比較では、コンテナ環境は高負荷時に挙動が不安定になるという結果となった。記事には皆様からTwitterなどのソーシャルメディアを通じて、検証についてのご意見や問題点の解消方法について貴重なご指摘をいただいている。今回はこれらを参考に、発生したパフォーマンス劣化の原因の調査と改善策を模索していきたい。 まず筆者が目をつけたのは、Dockerが利用しているコピーオンライトデバイスの部分がパフォーマンス劣化の原因となっているのではないだろうか? という点である。実際にテストを実施しながら検証していきたい。 ストレージドライバとは ストレージドライバは、物理サーバ上ではストレージ(HDD)コントローラのチップセットドライバだが、Dockerではコンテナ記憶域に使用されるコピ

    Dockerコンテナのパフォーマンス劣化とチューニング
  • JBoss Fuseを使ってみる その2:活用編

    はじめに 前回までの記事を通じて、JBoss Fuseの概要の理解、そして実行環境の構築まで準備が整いました。今回からはいよいよ活用編として、「JBoss Fuseを使ってみる」と題して、チュートリアルを実践しながら、Fuseについてより深く理解していきたいと思います。 チュートリアルでは、ファイル操作をするシナリオを実装します。単純なファイルコピー操作の実装手順、そして、ファイルのコンテンツに応じてルートを変更するコンテンツベースルーティングを実装しながら、Fuseへの理解を深めていきます。 チュートリアルの完成図を、図1に示します。 ルートの作成 Fuse Projectの作成 まずJBoss Developer Studioを起動して、以下の手順で新規Fuseプロジェクトを作成します。[File]−[New]−[Other...]−Wizardsの検索に「Fuse」とタイプ 、[

    JBoss Fuseを使ってみる その2:活用編
  • JBoss Fuseの機能概要

    続いて、JBoss Fuseの全体アーキテクチャを見てみましょう。 JBoss Fuseの全体アーキテクチャ JBoss Fuseは、下記に示すオープンソースソフトウェアの組み合わせで構成されています。 ・Apache Camel エンタープライズインテグレーションパターン(以下、EIP)のデザインパターンに基づいた、オープンソースのシステム連携フレームワークです。Camelは大変人気のあるオープンソースソフトウェアの一つです。 ・Apache ActiveMQ JMS(Java Message Service)に準拠した、アプリケーション間のメッセージング連携を実現するオープンソースのメッセージ指向ミドルウェアです。 ・Apache CXF JAX-WS(Java API for XML Web Services)、JAX-RS(Java API for RESTful Web Serv

    JBoss Fuseの機能概要
  • 開発環境の構築・共有を簡単にするVagrant入門

    Vagrantとは? Vagrantは、開発環境の構築と共有を簡単に行うためのツールです。どこでも同じ環境を再現できるように仮想マシン環境を管理する機能と、Atlasを通して共有する仕組みが提供されています。 VagrantとAtlasの関係 Vagrantは、アプリケーションやシステム開発のバックエンドを簡単にパッケージ化し、共有するためのツールです。このパッケージ化された環境を、「box」と呼ばれる単位で管理します。このboxには、標準で対応しているVirtualBoxをはじめ、AWSなどの各種マシン・イメージに対応したプラグインを介してアクセスします。またboxを共有するための機能としてAtlasという名前のインターネット上のサービスが提供されています。なお、Atlasは以前VagrantCloudと呼ばれていたものですが、現在はHashiCorpの他のツール(Packer、Terr

    開発環境の構築・共有を簡単にするVagrant入門
  • 初学者のためのTDD(テスト駆動開発)入門

    Copyright © 2004-2024 Impress Corporation. An Impress Group Company. All rights reserved.

  • Google Compute Engineで仮想マシンを作る

    はじめに:Google Cloud Platformとは 「Google Cloud Platform」(以下、GCP)とは、Google社が提供するIaaS(Infrastructure as a Service)です。GCPを使うと、Googleが利用しているものと同一のインフラ上で、Webサイトのホスティングやアプリケーションのデプロイ、データの保存、分析などが行えます。同種のサービスとしてはAmazon Web Services(以下、AWS)や、IBMのSoftLayer、MicrosoftのAzureなどが挙げられます。 Google Cloud Platformの特徴は、「プロジェクト」という単位で横断的にGoogle Cloud Platformの他サービスを利用できることにあります。同じプロジェクトの中で、Googleの各種サービスとの連携ができるのです。例えばデータベー

    Google Compute Engineで仮想マシンを作る
  • 注目すべきDockerの周辺技術 PanamaxとKubernetes

    前回の記事では、Dockerを使いやすくする様々なツールが開発されており、その中でも特に注目を集めているものとして、CoreOSを紹介した。今回は、Dockerの周辺技術の中から、PanamaxとKubernetesを取り上げ、紹介しよう。 機能強化ツール、コンテナ管理ツール、コンテナ向け軽量OSに分類したDockerの主要周辺技術のリストを再掲しておく。 ツール名提供ベンダー公式URL概要

    注目すべきDockerの周辺技術 PanamaxとKubernetes
  • 日本語版Railsガイドを見ながら初心者が学ぶRuby on Rails

    Copyright © 2004-2024 Impress Corporation. An Impress Group Company. All rights reserved.

  • Dockerをより良く使うための3つの周辺技術

    前回の記事では、Dockerの特徴を解説した。Dockerは非常に便利なツールであるが、単体では出来ることが限られている。例えば前回述べたように、実行も稼動状態の確認も全てCLIで行う必要があり、操作の難度も高く、視認性も低い。それを改善し、よりDockerを使いやすくするためのツールが多数開発されている。今回は、それらのツールについて紹介していきたい。 Dockerの周辺技術 Dockerの周辺技術には、大きく分けて以下の3つの分野がある。 コンテナ向け軽量OS コンテナでほとんどのことを実行することを前提に作成された、超軽量のLinuxディストリビューションを指す。 Dockerコンテナ管理ツール Dockerコンテナの確認や基礎的な操作を、GUIで実施可能にした管理ツールを指す Docker機能強化ツール 複数ノードへのコンテナ一括構築やクラスタリングの簡素化等、Dockerを操作す

    Dockerをより良く使うための3つの周辺技術
  • ガラリと変わったCentOS 7

    Copyright © 2004-2024 Impress Corporation. An Impress Group Company. All rights reserved.

  • syslogを押さえよう!

    ログの出力方法 「第1回:必読!ログファイルとディレクトリ」では、CentOS 5.2の/var/logディレクトリ以下に存在する、ログファイルとディレクトリについて説明しました。第2回は、このさまざまなログファイルの管理について説明します。 ログの出力方法という観点からみた場合、ログは、アプリケーションが独自の方法で出力したものと、Unix/Linuxにおける標準的なログ出力方法であるsyslogを利用して出力されたものとに大別できます。 アプリケーション独自の方法で記録されたログファイルとしては、/var/log/wtmpや/var/log/lastlogといったバイナリ形式のファイルがあります。また、ApacheやSamba、Squidなど、独自のログディレクトリを持つアプリケーションの多くも、独自の方法でログを記録しています。 一方、syslog は、独自のログ出力方法を持たない、

  • JBossの歴史と単体での性能比較

    オープンソースのアプリケーションサーバであるJBoss Enterprise Application Platform 6(EAP)がリリースされてから、約2年経ちました。アップデートを重ねて現在は6.3となっており、番環境での利用も着実に増えているように感じます。連載ではJBoss EAPとApache Tomcatについて、性能という観点から比較してみたいと思います。 今回はJBossの歴史と基礎知識について振り返ったあと、アプリケーションサーバの単体での性能比較結果について紹介します。 アプリケーションサーバであるJBoss Enterprise Application Platform(EAP)は、Red HatのJBoss Middlewareという製品群の1プロダクトです。JBoss Middlewareに含まれる製品には、EAPの他にもJSP/Servlet実行環境を提供

    JBossの歴史と単体での性能比較
  • APIデザインの極意

  • RHELを題材にソースが見える環境を作る

  • エンジニアのスキルを伸ばす“テスト駆動開発”を学んでみよう

    はじめに。 この連載では、エクストリーム・プログラミング(extreme programming; 以下XP)のプラクティスのひとつであるテスト駆動開発(てすとくどうかいはつ、test-driven development; 以下TDD)について、 聞いたことはあるけれど内容は知らない方 概要は知っているけれど実際に使ったことがない方 等、主に初学者を対象に、TDDの基について全6回にわたってご説明していきます。 RSpec等のツールを使ってTDD開発をしてはいるものの、正直メリットが今一つ理解できていないという方も、もちろん歓迎です。 そしてこのシリーズは、 “少しだけアジャイルをかじった程度の開発経験の浅いプログラマ”「古谷」が、TDD開発を実践しているプロジェクトに参画するにあたって、“プロジェクトリーダー”の「高梨先輩」に、TDDについて1から学ぶ。 という想定で記述していきます

    エンジニアのスキルを伸ばす“テスト駆動開発”を学んでみよう
  • Phalconに触れながらMVCプロジェクトの構成と構造を理解しよう

    Phalconは自由度が高く、特にフォルダ構造などには規約はありませんが、参考として今回は生成されたフォルダ構造に触れながら、Phalconの設計に慣れましょう。 生成されたPhalconプロジェクト構造について簡単に解説します。 app Phalconの開発を進める上でのアプリケーションを格納するフォルダです。 app/cache Phalconで使われるテンプレートエンジンである、voltのコンパイル済みキャッシュが配置されます。 voltはtwigやjinjaに記述が似ているコンパイル型テンプレートエンジンです。 コンパイル時にPHPを生成しますが、この生成ファイルをcacheフォルダに保存しています。 他には、WebAPIなどから取得した結果を、一定時間ファイルシステムにキャッシュしたい場合などにも使えるでしょう。 app/config プロジェクト全体で使う、設定ファイルを配置す

    Phalconに触れながらMVCプロジェクトの構成と構造を理解しよう
  • Serverspecの概要からインストールまで

    変化の激しいビジネスに対応するためにシステムやサービスには、これまで以上に迅速な導入や安定した運用が求められるようになってきています。このような要求を満たすために、仮想環境やクラウド環境を基盤として利用し、サーバの構築プロセスや構成管理プロセスの効率化のためにChefやPuppet、Ansibleといった自動化ツールが活用されるようになってきています。 このように自動処理で手軽にシステムやサービスをセットアップできるようになると、構築時の人為的ミスを防げるようになるなど便利になる反面、内部で実施されている処理が人の手から離れて、把握しづらくなる傾向にあります。また自動化の導入に際しては、システムが意図した状態に作り上げられているのかを確認する作業も重要になってきます。特に大規模で複雑な環境において、この確認作業を手作業で実施することは、高コストの要因となってしまいます。 参考: Think

    Serverspecの概要からインストールまで