ニフクラ ブログ

ニフクラ/FJ Cloud-Vやクラウドの技術について、エンジニアが語るブログです。

Joomla!をインストールしてみよう ~LAMP環境でCMSを構築~

こんにちは、株式会社ドリーム・アーツの石田です。

今回は企業のウェブページなどを簡単に作成することができるCMS(コンテンツマネージメントシステム)のうち、オープンソースで無料で使えて機能も豊富なJoomla!(http://www.joomla.org)をニフティクラウド上にインストールしてみたいと思います。

さて、皆様の会社のウェブページはどのように管理されているでしょうか?
多くの会社のホームページは、今でもHTMLを直接編集してFTPでアップしたものが多い様です。
実は、弊社のコーポレートサイトもそんな風に作られています。

HTMLを直接編集して、FTPでアップすると自由度が高く凝ったデザインのページを作れる一方、新しいページを掲載したいときにも必ずデザイナーさんの協力を仰がないとできないので、情報のタイムリーな更新は難しくなってしまいます。

こんなときにはCMSです。CMSを使うと一度デザインのテンプレートを設定したらあとはブログを書くようにページを追加していくことが可能になります。CMSには商用製品やオープンソースで無料で使えるもの等いろいろあります。今回インストールするJoomla!はXOOPSやWordPressなどと並び有名どころの一つです。

弊社でも、Shopらんのサポートサイト(https://support.shoprun.jp)をJoomla!で作って運用しています。

Joomla!は、PHPで作られていてデータベースとしてMySQLを利用します。WebサーバーはApache httpdを使います。LinuxとあわせていわゆるLAMP(Linux + Apache + MySQL + PHP)の構成です。ニフティクラウドでもLinuxサーバーを使って簡単にインストールすることができます。

それでは早速インストールを始めていきましょう。

続きを読む

ファイアウォール、SSL証明書発行機能の提供、ロードバランサーの機能アップデートを実施しました

2011年6月16日、ニフティクラウドのアップデートを行い、以下の機能が利用できるようになりました。
いずれもご要望を多くいただいていた機能になりますので、ぜひお試しいただければと思います。

ファイアウォール

ファイアウォール機能の提供を開始しました。
コントロールパネル・APIからルールの作成、サーバーへの適用が簡単に行えます。
これにより、これまでの iptables による個別の設定が不要になり、設定作業の軽減と設定間違いによるリスクが無くなります。
また、サーバーより上位のレイヤーでフィルターを行うので、サーバーまで通信が到達せず、よりセキュアな環境でニフティクラウドを利用することができます。
現時点では、2011年6月16日のメンテナンス終了後、新規にお申し込みのお客様にのみ提供しております。
詳しい仕様についてはこちらをご参照ください。

SSL証明書発行・管理機能

サイバートラスト社のSSL証明書を発行、管理できる機能をコントロールパネル・APIに追加しました。
サーバー等のリソース管理と合わせて、SSL証明書の管理をコントロールパネル・APIから一元管理する事が可能になります。
現時点では、サーバー、ロードバランサーに証明書を入れ込む等の連携はできませんが、今後のエンハンスで対応を強化していく予定です。
詳しい仕様についてはこちらをご参照ください。

ロードバランサー機能アップデート

2010年4月からご提供しているロードバランサーに以下の機能を追加しました。
いずれも、Web アプリケーションの開発、運用に有用な機能となっております。

セッション固定

一度、振り分けをしたサーバーにセッションを固定する機能です。
ソースIPベースでのセッション固定なので、Cookieが使用できない環境(モバイル端末など)でもセッション維持ができます。

ソーリーページ

過負荷等でサーバーがレスポンスを返せない場合に、代替コンテンツをロードバランサー自身が返します。
突発的な負荷や、トラブル時でもサービス利用者に一時的なページを表示することができます。

携帯キャリアフィルター

携帯キャリアIPからのアクセスのみを受付けるフィルター機能です。
アプリケーション側でのIP判定実装や、キャリアによるIP追加・削除時の運用が不要になります。

ロードバランサー機能アップデートの詳しい仕様についてはこちらをご参照ください。

それぞれの機能の使用方法については、別の記事で順次ご紹介していく予定です!

できる!ソーシャルアプリ(3) JMeterによる性能試験で「もう負荷も恐くない」

こんにちは、株式会社エクストーンの仲山です。
この連載では、ソーシャルアプリの企画から公開、運用までを通したTIPSを紹介します。

前回の記事では、 開発環境の構築を楽に行うためのツールとして、 ApacheのVirtualDocumentRoot機能と、システム管理ツールChefを紹介しました。

今回は、ソーシャルアプリと切っても切れない縁のあるサーバーの負荷とうまく付き合っていくため、 性能試験によって計画的にアプリの性能を向上させる方法として、 アプリの性能試験ツールであるJMeterを紹介します。 この記事で紹介するJMeterのサーバー・クライアントモードをニフティクラウド上でうまく使うことで、 アプリに限界まで負荷をかけることが安価に実現できるので、 リリース後の負荷を必要以上に怖がる必要もなくなり、幸せな気持ちでリリースができます。

続きを読む

15分でCakePHP環境を作ってみよう

こんにちわ、わたなべです。

今回は、先日2011年5月11日(水)から13日(金)で行われた「第2回 クラウド コンピューティングEXPO春」の13日最終のセミナー「CakePHP vs Ruby on Rails開発環境構築スピード対決!~本当に15分で環境構築ができるのか?~」で利用した内容に若干手を加えた物を解説します。

クラウド コンピューティングEXPOで使用したスクリプトは、準備期間が短かった事もあり自社で使っている物に若干手を加えた物を使用したので以下の様な事をしていました。

  • コンパイラ,Apache,PostgreSQL等をパッケージインストール
  • PHP5.3をソースインストール
  • xdebug,APCをpeclコマンドでインストール
  • CakePHPをインストール
  • SimpleTestライブラリをインストール
  • DebugKitプラグインをインストール
  • Apacheの設定を変更
  • Apache/PostgreSQLを起動
  • テスト用データベースを作成

普段はミドルウェアはソースからインストールしているのですが、今回はすべてのミドルウェアをパッケージでインストールする方式に変更した物を元に説明します。また、既に吉田さんが全体の概要とRails3に関する説明を書かれましたので、吉田さんのスクリプトと違う所を中心に解説したいと思います。

続きを読む

CapistranoとChefでサーバー管理を自動化~インスタンス作成から15分で実戦投入~

こんにちは。株式会社ドリーム・アーツの石田です。

さて、みなさんはLinuxサーバーの管理をどのように実施していますか。

普通はsshでログインしてシェルからコマンドをつかってパッケージをインストールしたり、設定ファイルを編集したりしていると思います。

サーバーの台数が少ないうちはこれでも十分なんですが、Web系のサービスなどを運用していると結構サーバーの台数が増えてきてしまい、手作業でやっていると面倒だし作業ミスは発生させるしロクなことがありません。

また、ニフティクラウドだとサーバーインスタンスはせっかく5分でできるのに、OSの設定やミドルウェアのセットアップ、アプリのインストールを手作業でやってたら今ほしいサーバーが間に合わないのです。

そこで登場するのはこうしたサーバーのインフラ管理をまとめて自動で実行するツールです。

弊社で開発・運用している「Shopらん」では、ニフティクラウド上に作成した各サーバーのインスタンスを管理するために、CapistranoとChefというツールを利用しています。

Capistrano (https://github.com/capistrano/capistrano/wiki)は並行sshととでもいいましょうか。複数のサーバーに並行でssh接続を行い定義したとおりのタスクを実行してくれるツールです。

Chef (http://wiki.opscode.com/display/chef/Home)は、サーバーの構成管理を自動化するツールです。各サーバーにどのようなパッケージをインストールしてどう設定すべきかといった情報を一元管理し、新しいサーバーを立ち上げるときのインストール作業(プロビジョニングといいます)や、すべてのサーバーの設定を一括で変更したいような場合に威力を発揮します。

Chefの使い方的な話題は、以前に株式会社エクストーンの仲山さんが記事にしているので「できる!ソーシャルアプリ(2) 「開発環境の充実はとっても嬉しいなって」の記事を参照してください。

今回は、サーバーの運用管理をお気軽に実行するために、ニフティクラウド上のサーバーに、CapistranoとChefをセットアップしてみます。

実は、Capistranoのセットアップは簡単なんですが、Chefをサーバーとしてセットアップするのは、RubyやらRubyGemsやらJavaやらCouchDBやらSolrやら諸々インストールする必要がありかなり面倒です。

そこでまずCapistranoをインストールして、Chefのインストール作業自体をCapistranoタスクにしてそれを自動実行するという手順でセットアップしてみたいと思います。

弊社ではまりにはまったCentOSへのChefサーバーのインストールがワンタッチでできますよ。

続きを読む