雑記

インフラのことだったりプログラムのことだったりどうでもいいこと書いたり。要は雑記。

bowerでgitプロトコルではなくhttpsでパッケージを取得する

デフォルトだとbowerを実行すると、git://でパッケージを取得しにいきます。 ただ、これだとネットワーク環境によってはうまく取得できない場合があります。 例えば、社外へアクセスするポートに制限がかかっているときなど(gitだとポート9418を利用する。自分の職場だとこの制限がある。。)

そのままではbowerが利用できないので、gitプロトコルでなく、httpsで取得するように変更します。

以下のコマンドを実行するだけ

git config --global url."https://".insteadOf git://

参考

MEANスタック環境の構築

MEANスタック環境を構築してみる

ちょっとした管理ツールを作る必要が出てきたので、どうせなら面白く作りたいなーと思い話題のMEANスタックで作ってみようかなーと。 今回はお試しで環境の構築まで。

前提環境

  • OSはCentOS6
  • Vagrant環境
  • ほぼまっさらな状態で作業

環境の構築

node.jsのインストール

$ sudo yum install nodejs npm

mongodbのインストール

/etc/yum.repos.d/mongodb.repo

[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=0
$ sudo yum install mongo-10gen --enablerepo=mongodb
# /etc/init.d/mongd start
# chkconfig mongod on

gruntのインストール

$ npm install grunt-cli

環境よごしたくないので、-gオプションはつけていません

mean-cliのインストール

$ npm install mean-cli

環境よごしたくないので、-gオプションはつけていません

node_moduleのPATHを通す

.zprofile

PATH=$HOME/node_modules/.bin:$PATH

読み込み

source .zprofile

ひな形作成~起動

ひな形作成

$ mean init sampleMean

ここでプロジェクト名とどのビルドツールを利用するか聞かれます

パッケージインストール

$ cd sampleMean && npm install

ListenIP変更

sampleMean/config/env/development.js

hostname: '0.0.0.0',

上記を追記。

起動

$ grunt

アクセス

datastax-agent(OpsCenterのagent)を手動でインストールする

OpsCenterを利用するときに、Agentもインストールする必要があります。 基本的にはOpsCenterの管理画面からインストールすることになるのですが、rootアカウント、もしくはsudoersの権限を持ったアカウントを設定しないとインストールできないです。

セキュリティ的にそんなアカウントを作成していない、というケースもあるかと思いますので、そんな場合に手動でAgentをインストールする場合の作業記録です。

前提環境

  • CentOS6系
  • OpsCenterはyumでインストール
  • OpsCenterのバージョンは5.0.2

OpsCenterをインストールしたサーバでの作業

agentファイルを対象のクライアントに持っていきます。

# cd /usr/share/opscenter
# scp agent.tar.gz hoge@xxx.xxx.xxx.xxx:/var/tmp

Agentをインストールするサーバでの作業

agentをインストールします。

# cd /var/tmp
# tar zxf agent.tar.gz
# cd agent/bin
# ./install_agent.sh [OpsCenterをインストールしたサーバのIP]

後はOpsCenterの管理画面から追加されていることを確認しましょう。

Vagrantでvmをロールバックするプラグイン(saharaプラグイン)

http://qiita.com/succi0303/items/e06bca7db5a0c3de96af#3-1

こういうプラグインがほしかった、、、! これまでAnsibleのテストでup->destroy->up->destroyを繰り返していたのがこれで捗りますね!

というかそもそもVagrantプラグインがあるという認識がなかった。。これを機会に色々調べてみる。

一応インストール記録と使い方メモ。 windows環境です。

saharaプラグインのインストール

vagrant plugin install sahara

コマンド

  • sandboxモード開始
vagrant sandbox on [vmname]
vagrant sandbox rollback [vmname]
  • コミット
vagrant sandbox commit [vmname]
  • sandboxモード終了
vagrant sandbox off [vmname]
  • 状態確認
vagrant sandbox status [vmname]

VM起動中でも上記コマンドは実行できます。 ただ、ロールバック実行中はVMにアクセスできなくなります。

mailコマンドでsmtpサーバを指定する

ワンライナーで実行する場合は以下。

echo test | mail -s "test" -S "smtp=smtp://mail.example.com:25" hoge@example.com

もしくは~/.mailrcを設定する。 - ~/.mailrc

set smtp=smtp://mail.example.com:25

上記は認証情報一切なしの方法ですが、smtp-authにも対応しているのでgmailなんかにも接続できたりもします。 その場合は以下のページが参考になります。