ksaitoの日記

日々試したことの覚え書き

zabbixのカスタムLLD

ドキュメントに作り方が書いてあります 。 カスタムLLDで必要なJSONファイルを作成する汎用の処理をpythonで作成します。 シェルで取得した下記の形式のファイルを入力にします。 {#NAME1} {#NAME2} name11 name12 name21 name22 ファイルからJSON形式に変換…

Selenium2をpythonで使う

Selenium2をpythonで使ってみました。 テストシナリオの作成 FirefoxとSelenium IDEを使って操作をキャプチャします。 yahooで"test"を検索して画像検索に切替えるというシンプルな操作をキャプチャします。 エクスポートでpythonを出力します。 こんな感じ…

awsのWindowsインストールメディア

なかなかたどり着けないawsのWindowsインストールメディアのリンクです。 使用するリージョンによってスナップショットのIDが異なります。 Configuring Windows Components on Amazon EC2 : Articles & Tutorials : Amazon Web Services

ansibleでwinrmセットアップ済みのec2インスタンスを作成する。

ansibleでwinrmセットアップ済みのec2インスタンスを作成しました。 ansibleのec2モジュールを使ってWindows 2012R2のAMIを作成します。 インスタンス作成時に実行されるスクリプトをuser_dataに設定しておくことでwinrmが利用可能なec2インスタンスが作成さ…

ansibleでwinrmに接続する。

ansibleでwinrmに接続を確認しました。 WIndows 2012R2側の準備 提供されているスクリプトでwinrmの設定をします。 PS C:\> mkdir work Directory: C:\ Mode LastWriteTime Length Name ---- ------------- ------ ---- d---- 5/25/2016 1:01 PM work PS C:\…

sshのport forwarding

vagrantで必要なポートをマッピングすると設定が増えていってしまうので、一時利用する場合には、sshポートフォワードで済ませると楽です。 確認 sshでの接続先を確認します。 vagrant ssh-configで必要な情報を確認できます。 $ vagrant ssh-config vagrant…

ansibleのインベントリに指定したホスト名

ansibleのインベントリに指定したホスト名を参照するサンプルです。 --- - hosts: all vars: hostname: "{{inventory_hostname}}" tasks: - debug: msg="{{hostname}}" 実行するとインベントリに指定した名前を参照できます。 $ ansible-playbook sample.yml…

makeのオプション

ストアドプロシージャのコンパイルなどファイルとしてオブジェクトができないものをmakeでビルドする時によく使うオプションです。 エラーが起きてもできる限り実行を継続する。 -kは、コンパイルエラーが起こっても依存関係のないビルドを継続します。 同じ…

ansibleで自動起動をセットアップするときの判断

ansibleで自動起動をセットアップするときに、ディストリビュージョンの種類やバージョンを判断基準にするのにどうも違和感がありました。 いろいろ調べた結果、ansibleのansible_service_mgrで判断するのが正解です。 試す 下記のソースを使って検証します…

jenkinsにインストールしたプラグイン

jenkinsにインストールしたプラグインの覚書 Timestamper コンソールにタイムスタンプをつけるプラグインです。 JobConfigHistory ジョブの設定変更履歴を残してくれるプラグインです。 Build Trigger Badge Plugin ビルドのトリガをアイコンで表示してくれ…

dockerのデータの永続化

dockerでデータを永続化するために--volumes-fromを使ってみました。 やりたいこと dockerのオフシャルコンテナでmysqlやjenkinsを手軽に立ち上げることができます。 データについては、-vオプションでホストOSのディレクトリにマッピングしていたのですが、…

Makefileでできること

Makefileでよく使うパターンを検証しました。 検証用のファイルは、下記の通りです。 ソースがtest1ディレクトリの*.txtでtest2ディレクトリの*.objがターゲットファイルという想定です。 できるだけ、Makefileがシンプルになるように工夫してみました。 $ t…

packerを使う

公開されているboxを使うのは、ちょっと抵抗があるのでpackerを使ってvagrant boxを作りました。 何ができるのか packerでいろいろなことができるようですが、使っているのは下記です。 OSインストール用のISOファイルのダウンロード VirtualBoxのVM作成 OS…

packerのインストール

MacBookにpackerをインストールしました。 ダウンロード packerのダウンロードページからOS X 64bit用のバイナリをダウンロードします。 インストール zip形式なので/usr/local/binに展開したらインストール完了です。 $ packer --version 0.10.0 $

ansibleのdocker connection plugin

ansibleのdocker connection plugを使ってみました。 環境 ansibleとdockerのバージョンは、下記の通りです。 $ ansible --version ansible 2.0.1.0 config file = /home/vagrant/.ansible.cfg configured module search path = Default w/o overrides (0)21…

ansibleで一対多の設定をする

設定する対象がデータベースやアプリケーションサーバの場合、「一つのインスタンスに複数のアプリケーションをデプロイ」したり、「一つのアプリケーションに複数のデータソースを追加」といった一対多の設定はよくあります。 ansibleで設定を行う場合に、 …

ansibleのコアモジュール

Developing Modulesを参考にansibleのcoreモジュールを弄ってみました。 環境準備 オフシャルドキュメントのチュートリアルにテスト方法とかんたんなモジュールの作り方が書かれています。 下記でテスト環境を準備します。 $ git clone git://github.com/ans…

zabbix3.0のインストール

2/16にzabbix3.0がリリースされました。 Ubuntu 14.04 LTSにインストールしました。 インストール オフシャルドキュメントの手順でaptパッケージをインストール後にブラウザでアクセスします。 設定変更は、下記のphpのtimezoneの一箇所だけです。 root@trus…

ansibleモジュールの引数と戻り値の処理

ansibleモジュールは、pythonで書くと引数と戻り値に便利なヘルパがあり便利です。 AnsibleModuleのargument_specで引数を定義します。引数が必須かオプションかを定義できるようです。 戻り値は、exit_jsonで返します。最後の2行は、python初心者なのでお…

ansible Moduleの作り方2

オフシャルドキュメントを参考にテスト方法と引数の取り方を試しました。 テスト オフシャルドキュメントのチュートリアルにテスト方法とかんたんなモジュールの作り方が書かれています。 下記でテスト環境を準備します。 $ git clone git://github.com/ansi…

handlersのデバッグ

ansibleのhandlerは便利なのですが、想定通り動かない場合にデバッグが難しいです。 サンプル handlersは、notifyで通知された名前のhandlerを実行します。複数のタスクを実行する方法が分かりません... handlerでシェルを起動する際、結果はどうあれ、出力…

shellモジュールとdebugモジュール

shellモジュールの実行結果をdebugモジュールで表示してみます。 ソース 使ったソースは下記の通りです。 $ cat site.yml --- - hosts: appservers tasks: - debug: - shell: ls register: result changed_when: False - debug: var="result.rc" - debug: va…

httpd.confへのProxyPass設定をansibleで自動化

ansibleでProxyPassの設定をするサンプルです。 ソース lineinfileモジュールを使います。 createを指定することで、ファイルがない場合は作成します。 regexpでポートの部分を指定することで、ポート番号変更の際にエントリが増えてしまうことを防ぎます。 …

サーバに複数インスタンスを設定する

サーバ一台にミドルウェアをインストールしてインスタンスを複数作る構成を設定するサンプルです。 ディレクトリ構成 ディレクトリ構成は、下記です。 $ tree . ├── host_vars │ ├── appserv1 │ └── appserv2 ├── hosts ├── roles │ └── app │ └── tasks │ ├…

PR-400KIの初期化

PR-400KIのパスワードを忘れてしまったので初期化しました。 必要なもの 針金 LANケーブル 有線LANで接続可能なブラウザがインストールされたPC プロバイダの認証IDとパスワードが記載された紙 手順 手順は、PR-400KI取扱説明書の8-10ページにあります。 手…

softbank光への切り替え

フレッツ光+プロバイダを使ってきましたがsoftbank光に切り替えました。 光BBユニットの設定を朝10時頃から設定を始め夜7時になっても設定は完了しませんでした... 光BBユニットの設定は諦めて、これまで使ってきたNTTのルータと自前のWi-Fiルータ(TimeCa…

iOSのリモートデスクトップ

ios

Windows環境をiPhoneだけで構築できるか検証してみました。 iPhoneのSafariでAWSコンソールに接続してWindowsインスタンスを作成 iOSのリモートデスクトップアプリで接続 iPhoneのSafariでAWSコンソールに接続してWindowsインスタンスを作成 これは、普通に…

AWSでWindowsのAMIを作成する。

aws

AWSでWindowsのAMIを作成して再利用できるようにしました。 作成手順は以下の通りです。 WindowsのAMIイメージからインスタンスを作成する。 必要な設定、追加アプリをインストールする。 EC2ConfigServiceを使って固有情報を削除する。 固有情報を削除して…

ansible Moduleの作り方

ansibleのModuleでHello, Worldを作ってみました。 Moduleの開発は、Developing Modulesにドキュメントやサンプルがあります。 最小限必要なことは少ないので、Hello, Worldは、15分ほどで作成できます。 準備 Ubuntu 14.04 LTSにansibleがインストールされ…

Windows 2012 R2をansibleで管理できるようにセットアップする。

Windows 2012 R2をansibleで管理できるようにセットアップする手順です。 環境 環境は下記の通りです。 OS 環境 Windows 2012 R2 Datacenter 管理対象のAzureの"Windows 2012 R2 Datacenter"を利用 Ubuntu 14.04 LST ansibleを動かす環境 ansibleのバージョ…