Hatena::ブログ(Diary)

asa nisi masa RSSフィード

2014-09-28 PIWIK を試す(その1:インストール)

PIWIK を試す(その1:インストール)

Piwik とは、オープンソースアクセスログ解析ツール

OSS であること、データベースがローカルに置かれるという特徴に惹かれ、試してみることにする。


ダウンロード、配置

Download - Analytics Platform - Piwikよりダウンロード

解凍し、apache に配置。

例えば、C:\Bitnami\redmine-2.5.1-1-2\apache2\htdocs\piwik

設定する

ブラウザでアクセスする。

http://localhost/piwik/

設定を開始する

f:id:january:20140928210909j:image

システムのインストール状況を確認する

f:id:january:20140928210910p:image

f:id:january:20140928210911p:image

データベースを設定する

予め MySQLデータベースとユーザを作成しておき、設定する

mysql> create database piwik;

mysql> create user 'xxx'@'localhost' identified by 'yyy';

mysql> grant all on piwik.* to 'xxx'@localhost;

f:id:january:20140928210912p:image

テーブルを作成する。

f:id:january:20140928210913p:image

テーブルが作成された。

+-----------------------------+
| Tables_in_piwik             |
+-----------------------------+
| piwik_access                |
| piwik_goal                  |
| piwik_log_action            |
| piwik_log_conversion        |
| piwik_log_conversion_item   |
| piwik_log_link_visit_action |
| piwik_log_profiling         |
| piwik_log_visit             |
| piwik_logger_message        |
| piwik_option                |
| piwik_report                |
| piwik_segment               |
| piwik_session               |
| piwik_site                  |
| piwik_site_url              |
| piwik_user                  |
| piwik_user_dashboard        |
| piwik_user_language         |
+-----------------------------+
18 rows in set (0.00 sec)

 スーパーユーザを作成する

f:id:january:20140928210914p:image

モニタ対象の Web サイトを指定する

今回は、Redmine で構築したサイトを指定する

f:id:january:20140928210915p:image

Web サイトに仕込んでおく Script が表示される

ひとまずメモ。

※事後確認もできる。

f:id:january:20140928210916p:image

設定が完了した

f:id:january:20140928210917p:image


補足

システムの構成

Web サイトの追加、トラッキングスクリプトの確認などは、Piwik ログイン後、「システムの構成」メニューより実施できる。

f:id:january:20140928214422p:image

解析の材料

継続的にサーバのログを読み込んで解析を行う、らしい。

2014-09-23 AWS CLIをインストール/設定する

AWS CLIをインストール/設定する

AWS CLIインストールして、AWS アカウントCLI で接続できるまで。

なにものか

AWS CLI は、AWSコマンドラインインターフェース

aws s3 ls

ってな感じで、aws を操作できる。


参考


概要

インストールした環境
  • ProductName: Mac OS X
  • ProductVersion: 10.9.4
  • BuildVersion: 13E28
インストール結果
  • pip 1.5.6
  • awscli-1.4.2
  • jq-1.3
  • yaji 2.0.4
手順概要
  1. python 用パッケージ管理ソフトウェア PIP を用いて AWS CLIインストール
  2. JSON を扱うために便利なユーティリティ達 ( jq, yaji ) をインストール
  3. IAM ユーザを作成して、AWS CLI で使えるよう、設定する

PIP をインストール

PIP は、python のパッケージをインストールするためのパッケージ管理ソフトウェア *1

pip 1.5.6 がインストールされた。

$ sudo easy_install pip


Searching for pip
Reading http://pypi.python.org/simple/pip/
Best match: pip 1.5.6
Downloading https://pypi.python.org/packages/source/p/pip/pip-1.5.6.tar.gz#md5=01026f87978932060cc86c1dc527903e
Processing pip-1.5.6.tar.gz
Running pip-1.5.6/setup.py -q bdist_egg --dist-dir /tmp/easy_install-4_Taj9/pip-1.5.6/egg-dist-tmp-jEYvwJ
warning: no files found matching 'pip/cacert.pem'
warning: no files found matching '*.html' under directory 'docs'
warning: no previously-included files matching '*.rst' found under directory 'docs/_build'
no previously-included directories found matching 'docs/_build/_sources'
Adding pip 1.5.6 to easy-install.pth file
Installing pip script to /usr/local/bin
Installing pip2.7 script to /usr/local/bin
Installing pip2 script to /usr/local/bin

Installed /Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg
Processing dependencies for pip
Finished processing dependencies for pip


AWS CLIインストールする

install

awscli-1.4.2 がインストールされた。

$ sudo pip install awscli


Downloading/unpacking awscli
  Downloading awscli-1.4.2.tar.gz (239kB): 239kB downloaded
  Running setup.py (path:/private/tmp/pip_build_root/awscli/setup.py) egg_info for package awscli
    
Downloading/unpacking botocore>=0.62.0,<0.63.0 (from awscli)
  Downloading botocore-0.62.0.tar.gz (2.9MB): 2.9MB downloaded
  Running setup.py (path:/private/tmp/pip_build_root/botocore/setup.py) egg_info for package botocore
    
Downloading/unpacking bcdoc>=0.12.0,<0.13.0 (from awscli)
  Downloading bcdoc-0.12.2.tar.gz
  Running setup.py (path:/private/tmp/pip_build_root/bcdoc/setup.py) egg_info for package bcdoc
    
    warning: no files found matching 'README.md'
Downloading/unpacking six>=1.1.0 (from awscli)
  Downloading six-1.7.3-py2.py3-none-any.whl
Downloading/unpacking colorama==0.2.5 (from awscli)
  Downloading colorama-0.2.5.tar.gz
  Running setup.py (path:/private/tmp/pip_build_root/colorama/setup.py) egg_info for package colorama
    
Downloading/unpacking docutils>=0.10 (from awscli)
  Downloading docutils-0.12.tar.gz (1.6MB): 1.6MB downloaded
  Running setup.py (path:/private/tmp/pip_build_root/docutils/setup.py) egg_info for package docutils
    
    warning: no files found matching 'MANIFEST'
    warning: no files found matching '*' under directory 'extras'
    warning: no previously-included files matching '.cvsignore' found under directory '*'
    warning: no previously-included files matching '*.pyc' found under directory '*'
    warning: no previously-included files matching '*~' found under directory '*'
    warning: no previously-included files matching '.DS_Store' found under directory '*'
Downloading/unpacking rsa==3.1.2 (from awscli)
  Downloading rsa-3.1.2.tar.gz
  Running setup.py (path:/private/tmp/pip_build_root/rsa/setup.py) egg_info for package rsa
    
    warning: no files found matching 'README'
Downloading/unpacking jmespath==0.4.1 (from botocore>=0.62.0,<0.63.0->awscli)
  Downloading jmespath-0.4.1.tar.gz
  Running setup.py (path:/private/tmp/pip_build_root/jmespath/setup.py) egg_info for package jmespath
    
Downloading/unpacking python-dateutil>=2.1 (from botocore>=0.62.0,<0.63.0->awscli)
  Downloading python-dateutil-2.2.tar.gz (259kB): 259kB downloaded
  Running setup.py (path:/private/tmp/pip_build_root/python-dateutil/setup.py) egg_info for package python-dateutil
    
Downloading/unpacking pyasn1>=0.1.3 (from rsa==3.1.2->awscli)
  Downloading pyasn1-0.1.7.tar.gz (68kB): 68kB downloaded
  Running setup.py (path:/private/tmp/pip_build_root/pyasn1/setup.py) egg_info for package pyasn1
    
Installing collected packages: awscli, botocore, bcdoc, six, colorama, docutils, rsa, jmespath, python-dateutil, pyasn1
  Running setup.py install for awscli
    changing mode of build/scripts-2.7/aws from 644 to 755
    changing mode of build/scripts-2.7/aws.cmd from 644 to 755
    changing mode of build/scripts-2.7/aws_completer from 644 to 755
    changing mode of build/scripts-2.7/aws_zsh_completer.sh from 644 to 755
    
    changing mode of /usr/local/bin/aws to 755
    changing mode of /usr/local/bin/aws.cmd to 755
    changing mode of /usr/local/bin/aws_completer to 755
    changing mode of /usr/local/bin/aws_zsh_completer.sh to 755
  Running setup.py install for botocore
    
  Running setup.py install for bcdoc
    
    warning: no files found matching 'README.md'
  Running setup.py install for colorama
    
  Running setup.py install for docutils
    changing mode of build/scripts-2.7/rst2html.py from 644 to 755
    changing mode of build/scripts-2.7/rst2s5.py from 644 to 755
    changing mode of build/scripts-2.7/rst2latex.py from 644 to 755
    changing mode of build/scripts-2.7/rst2xetex.py from 644 to 755
    changing mode of build/scripts-2.7/rst2man.py from 644 to 755
    changing mode of build/scripts-2.7/rst2xml.py from 644 to 755
    changing mode of build/scripts-2.7/rst2pseudoxml.py from 644 to 755
    changing mode of build/scripts-2.7/rstpep2html.py from 644 to 755
    changing mode of build/scripts-2.7/rst2odt.py from 644 to 755
    changing mode of build/scripts-2.7/rst2odt_prepstyles.py from 644 to 755
    
    warning: no files found matching 'MANIFEST'
    warning: no files found matching '*' under directory 'extras'
    warning: no previously-included files matching '.cvsignore' found under directory '*'
    warning: no previously-included files matching '*.pyc' found under directory '*'
    warning: no previously-included files matching '*~' found under directory '*'
    warning: no previously-included files matching '.DS_Store' found under directory '*'
    changing mode of /usr/local/bin/rst2html.py to 755
    changing mode of /usr/local/bin/rst2latex.py to 755
    changing mode of /usr/local/bin/rst2man.py to 755
    changing mode of /usr/local/bin/rst2odt.py to 755
    changing mode of /usr/local/bin/rst2odt_prepstyles.py to 755
    changing mode of /usr/local/bin/rst2pseudoxml.py to 755
    changing mode of /usr/local/bin/rst2s5.py to 755
    changing mode of /usr/local/bin/rst2xetex.py to 755
    changing mode of /usr/local/bin/rst2xml.py to 755
    changing mode of /usr/local/bin/rstpep2html.py to 755
  Running setup.py install for rsa
    
    warning: no files found matching 'README'
    Installing pyrsa-encrypt-bigfile script to /usr/local/bin
    Installing pyrsa-encrypt script to /usr/local/bin
    Installing pyrsa-verify script to /usr/local/bin
    Installing pyrsa-sign script to /usr/local/bin
    Installing pyrsa-priv2pub script to /usr/local/bin
    Installing pyrsa-decrypt script to /usr/local/bin
    Installing pyrsa-keygen script to /usr/local/bin
    Installing pyrsa-decrypt-bigfile script to /usr/local/bin
  Running setup.py install for jmespath
    changing mode of build/scripts-2.7/jp from 644 to 755
    
    changing mode of /usr/local/bin/jp to 755
  Found existing installation: python-dateutil 1.5
    Uninstalling python-dateutil:
      Successfully uninstalled python-dateutil
  Running setup.py install for python-dateutil
    
  Running setup.py install for pyasn1
    
Successfully installed awscli botocore bcdoc six colorama docutils rsa jmespath python-dateutil pyasn1
Cleaning up...

Version を確認する

$ aws --version

aws-cli/1.4.2 Python/2.7.5 Darwin/13.3.0


jq をインストール

jq は、軽量 JSON パーサ。結構便利。*2 *3


jq-1.3 がインストールされた。

$ sudo brew install jq


==> Downloading http://stedolan.github.io/jq/download/source/jq-1.3.tar.gz
######################################################################## 100.0%
==> ./configure
==> make
🍺  /usr/local/Cellar/jq/1.3: 7 files, 236K, built in 10 seconds


yaji をインストール

JSON フォーマットのベリファイを行うツール。これ絶対ほしい。*4

homebrew を 使って yaji 2.0.4 をインストールする。

$ sudo brew install yajl


==> Installing yajl dependency: cmake
==> Downloading http://www.cmake.org/files/v2.8/cmake-2.8.11.2.tar.gz
######################################################################## 100.0%
==> ./bootstrap --prefix=/usr/local/Cellar/cmake/2.8.11.2 --system-libs --no-sys
==> make
==> make install
🍺  /usr/local/Cellar/cmake/2.8.11.2: 694 files, 32M, built in 4.0 minutes
==> Installing yajl
==> Downloading https://github.com/lloyd/yajl/archive/2.0.4.tar.gz
######################################################################## 100.0%
==> ./configure --prefix=/usr/local/Cellar/yajl/2.0.4
==> make install
🍺  /usr/local/Cellar/yajl/2.0.4: 15 files, 224K, built in 36 seconds


IAM ユーザを作成する

admin 権限をもつ IAM ユーザに アクセスキーを割り当てる。

手順を書くとこんな感じ。

  1. AWSマネジメントコンソールに IAM 権限を持つユーザでログインする。
  2. IAM グループを作成し、admin 権限を付与する
  3. ユーザを作成する。
    • アクセスキー作成は ON とする(デフォルトは「作成する」。CLI を使わない場合は、アクセスキーの作成を OFF にしておくこと。)
  4. 生成されたアクセスキー、シークレットアクセスキーをメモしておく。
    • f:id:january:20140923141934p:image
  5. admin 権限を持つグループに、先ほど作成したユーザを所属させる。

コマンドラインで利用する際の認証情報ファイルを作成する

Configuring the AWS Command Line Interface - AWS Command Line Interface によると、CLI は以下の順番に認証情報を探すらしい。

  1. 環境変数
    • AWS_ACCESS_KEY_ID
    • AWS_SECRET_ACCESS_KEY
  2. AWS Credential Profile ファイル
    • ~/.aws/credentials
  3. CLI configuration ファイル
    • ~/.aws/config
  4. Instance のプロファイル

参考にした雑誌記事Software Design (ソフトウェア デザイン) 2014年 06月号 [雑誌])では、3( config )に記載する方法を取っていた。

認証情報だけでなく、CLI で利用したい設定も同一ファイルで定義したいからかな。雑誌の例では、デフォルトリージョンを設定していた。

例に従って、アクセスキー、シークレットアクセスキー、デフォルトリージョンを設定する。

vi とか好みのエディタで編集する場合

~/.aws/config

[default]
aws_access_key_id=xxxxxxxxxx
aws_secret_access_key=xxxxxxxxxxxxxxxxxxxxxxxx

region=us-west-1


aws の configure ツールを使用する場合

aws configure コマンドを実行すると、アクセスキー、シークレットアクセスキー、デフォルトリージョン、デフォルトアウトプットフォーマットを入力するように促される。

$ aws configure


AWS Access Key ID [None]: xxxxxxxxxxxx
AWS Secret Access Key [None]: xxxxxxxxxxxxxxxxxxxxxxxx
Default region name [None]: us-west-1
Default output format [None]: 


確認

aws コマンドが実行できることを確認する。

$ aws s3 ls

2014-09-07 23:54:39 test-xxxx-xxxx
2014-09-07 23:52:37 test-yyyy-yyyy


以上

2014-06-17

WindowsServer に Bitnami Redmine をインストールする

aws 上の WindowsServer に Bitnami Redmineインストールする。

ちなみに、該当サーバでは IIS が動いており、80番ポートが使われている。Windows Server にインストールする場合の設定を確認することと、ポートが使われている場合にインストール中にポート番号を変更する機会があるんだろうか、というのが確認事項。

今日はまずインストールまで。

環境

ダウンロード

Install Redmine, Download Redmineよりインストーラダウンロードする。

※該当 URL を「信頼できるサイト」に追加する

バージョンは、bitnami redmine 2.5.1-1。


インストール

ウィザードに従ってインストールするだけなので、淡々と手順をメモ。Apache のポートを指定するダイアログが追加されるところが、これまでと違う。


確認する

サービスが起動しているか

Bitnami Redmine Stack で ManageService を確認する。起動している。

f:id:january:20140611001233p:image

サーバ上のブラウザからアクセスできるか
他のマシンの ブラウザからアクセスできるか

aws セキュリティグループの Inbound の設定を変更し、自分のIP からの TCP 8080 アクセスを許可すること。

2014-06-10 AWS で WindowsServer のインスタンスを作成して、 RDP で接続する

AWS で WindowsServer のインスタンスを作成して、 RDP で接続する

Windows Server のインスタンスを作成し、RDP 接続する流れをメモ。

インスタンスをローンチする

インスタンスをローンチする

AMI は、Windows Server 2008 を選ぶ。Micro Instance なら、無料枠内で利用できる。

セキュリティグループで inbound の ポート、許可するIPを指定する。後でRDP 接続するので、RDP 接続が許可されていること。許可IPは、MyIPを選ぶと自分のIPが自動的に設定される。

キーファイルは既存のキーペアを選んだ。

インスタンスにグローバル IP を割り当てる

Elastic IPs サブメニューより、"Allocate New Adresses"。

アロケートされた IP アドレスを選択して、"Associate IP Address"。インスタンスを選ぶと、インスタンスにアロケートされたEIPが付与される。インスタンス再起動の必要はない。

Administrator のパスワードを調べる

参考:Step 4: Deploy Your App - Getting Started with AWS

インスタンス一覧の Action メニューより、 Get Windows Password を選んで調べる。

キーファイルを指定して、decript すると、パスワードが表示される。

f:id:january:20140610234339p:image

f:id:january:20140610234338p:image

Mac から Windows Server に接続する

Remote Desktop クライアントを用いて接続する。

Remote Desktop Connection for Macインストールし、起動する。

コンピュータには、ホスト名を調べて記入。または IP アドレスを指定。

例)ec2-xxx-xxx-xxx-xxx.us-west-2.compute.amazonaws.com。

ログインする

調べた Administrator のパスワードを使用してログインする。

以上

2014-06-03

ドメインを取得する

ドメインを取得し、独自ドメインのメールサービスを利用してみることにする。

調べる

ドメイン取得業者を選ぶ

ドメイン取得業者の比較サイトを見つけた。結構あるんだな。

参考:ドメイン取得 - 最適なドメイン取得業者の選び方とは?

トップレベルドメイン (TLD) について調べる

一般、スポンサー付き(特定の業界など向け)、国別、など様々な用途の TLD がある。

参考:トップレベルドメイン - Wikipedia

国別のドメインを外国に売っているところもあるとか。.me(モンテネグロ) とか。

あるドメインを取得した業者がサブドメインを販売するものもあるらしい。.jp.net とか。

whois

whoisとは、ドメイン名、登録者、連絡先などの情報を誰でも参照できるようにするサービス。

.jp ドメインの場合は、JPドメイン名のサービス案内 | JPRSが管理している。


ドメインを登録する

ドメイン取得業者を選ぶ

お名前.comを利用することにする。

レンタルサーバも、お名前.com が提供しているものを利用する。

whois情報代行サービス(連絡先を お名前.com で上書きしてくれる)サービスもやっている。※他もやっていると思うが。

ドメインを選ぶ

使いたいドメインを検索すると、利用可能なトップレベルドメインが表示される。

トップレベルドメインによって、価格が随分違う。.asia は180円/年。.tokyo は10,000円/年。

利用可能な条件にあうことは勿論、仕事で使うので、それなりの信用があること。スパムが多いものを避けようとすると、ある程度の費用は発生するか。

アカウントを作る

申し込みにあたり、アカウントを作成する。

個人/法人か、氏名、住所、連絡先、パスワード、等を入力。

オプションを選ぶ

whois 情報代行サービスはいかがですか?」はい、ぜひ。

ドメインと一緒に、レンタルサーバはいかがですか?共有サーバですが。」はい、お願いします。

「EC サイトの SaaS はいかがですか?」いえ、結構です。

支払い方法を指定する

クレジットカードを選ぶと入金確認が早いのでおすすめされる。

VISA, Mater, JCB, AMEX, DIners が利用可能な様子。

なお、請求書や領収書は発行しておらず、確認メールで証憑に代える。

内容確認、申請

確認画面で入力内容、契約内容を確認する。

規約、「ドメインに関する統一ドメイン名紛争処理方針」、個人情報保護の利用目的に同意し、申請する。

申請完了。

whois代行完了メール、ドメイン登録完了メールなど届いている。請求/領収などもろもろメールが。

whois 確認

反映に1時間程度かかるとのこと、少し待って検索してみる。

反映されてる!連絡先は、代行されている。

レンタルサーバを利用する

レンタルサーバのサービス設定は、1営業日程度かかるということだったが、数時間で設定完了メールが届いた。

メールサービスの利用を開始し、アカウントを作成し、受信設定、もろもろ。