fluent-catでテスト

概要 td-agentでログが転送されるか確認したい場合のfluent-catコマンドを使うことで確認することが出来ます。 インストール fluent-catコマンドはtd-agentをインストールすると使用することが出来ます。 実行 echo '{"foo":"bar"}' | /opt/td-agent/embedde…

Vagrant CloudとDocker Hubのイメージ名

OS Vagrant Cloud Docker Hub CentOS 7 centos/7 centos:7 Ubuntu 18.04 LTS ubuntu/bionic64 ubuntu:18.04 Ubuntu 16.04 LTS ubuntu/xenial64 ubuntu:16.04

NFSのマウントディレクトリがアンマウント出来ない場合

umountコマンドでdevice is busyとなった場合 fuser -muv /nfsでPIDが分かるのでkillすればOK マウント中にNFSサーバーの接続不具合等でエラーになった場合 dfで見ても以下の表示になってしまう。 df: `/nfs/': Stale NFS file handle該当ディレクトリをumou…

vconfigコマンドでのVLAN情報削除方法

概要 VLANの設定で、VLAN IDを廃止したり間違えてしまった場合古いVLAN情報が残ってしまいます。 サーバーを再起動しないと消えないものだと思っていましたがvconfigコマンドで削除が出来ました。 コマンド 現在の設定表示 # route Kernel IP routing table …

高機能WikiのGROWiをHerokuで動かす

概要 growi.org高機能WikiのGROWiをHerokuで動かしたときのメモです。 Herokuセットアップ github.com へアクセスします。 Herokuボタンからデプロイします。 URLになるApp nameを入力します。 デフォルトのままでOKなのでDeploy Appをクリックします。 デプ…

Ansible Vault関連コマンドメモ

暗号化ファイルを作成 ansible-vault create private.yml 既存ファイルを暗号化 ansible-vault encrypt private.yml 暗号化済のファイルの中身を表示 ansible-vault view private.yml 暗号化済のファイルを編集 ansible-vault edit private.yml 復号化 ansib…

ワンタッチでメアド入力された状態のメール作成画面を起動出来るiPhoneアプリ

概要 電車に乗っているときなどふと思いついた仕事のタスクやメモを自分宛てのメールで送る習慣があります。しかし、メールアプリを起動させてアドレス帳から自分のメールアドレスを選択して〜と意外と手間です。そんなときに利用している大変便利なアプリ「…

CircleCIで使用するGitHubのデプロイキーの発行

概要 CircleCIのビルドジョブ内でGitHubのリポジトリからcloneを行う際のデプロイキーを作成するコマンドです。 コマンド ssh-keygen -t rsa -b 4096 -m pem -C "" -f id_rsa_circleci -N "" -m フォーマットでpem形式を指定しています。 CircleCIではpem形…

mysqladminコマンドでMySQLデーモンの起動状態を確認

概要 Amazon RDSやGoogle CloudSQLでMySQLインスタンスの起動や停止の検証を行っている際に、 デーモンが稼働状態に遷移したか確認したいときになにかよい方法はないかなーと思っていました。 そこで調べていたところmysqladminコマンドのpingオプションとい…

lsb_releaseコマンド

概要 lsb_releaseというコマンドでOSのバージョンを確認することが出来ます。 オプションによって出力を限定することが出来、シェルスクリプトの判定等に使うことが出来ます。 使い方 lsb_release -aですべてを表示させることが出来ます。表示例 $ lsb_relea…

CentOS7から/var/run以下のpidディレクトリがOS再起動の度に削除される

概要 FreeRadiusサーバーをCentOS7で稼働させていたとき、OS再起動のタイミングでradiusデーモンが起動しないことがありました。FreeRadiusはpidファイルを/var/run/radiusd/tmpに作成するようになっていたのですが、 CentOS7から/var/run以下ディレクトリは…

Linuxサーバー起動時ファイルシステムチェックをスキップ

概要 Linuxサーバーを再起動した場合fsckが自動で走りなかなか起動しないときがあります。 fsckは重要ですが早く起動したいときに困ることがあります。 そんなときに使えるTIPSです。 カーネルパラメータにfastbootを指定 以下のように起動時にgrubのカーネ…

fstabのデバイス指定をUUIDにする

「昔、HDDを挿してる位置からsda、sdbとなんとなくテプラを貼っていた」「sdaが明らかに不調で代替セクタ出てるし、リードエラーリトライを繰り返している」「sdaと書いてあるやつを引っこ抜いてみたら生きてる方のHDD(sdb)だった」↓「やはり、入れ替わる可…

google-betaのエラーが出たときの対処法

概要 いつからのタイミングかTerraformでGCPのリソース管理している環境で以下エラーが出るようになってしまいました。 Error: module : provider alias must be defined by the module: google-beta 対応 以下のようにproviderの設定でgoogle-betaの設定を…

TerraformでGCEの静的内部IPの設定

概要 TerraformでGCPのGCEのローカルIPを固定する設定の例です。 例 内部IPを10.146.0.1に設定している例です。 resource "google_compute_instance" "default" { name = "test" machine_type = "n1-standard-1" zone = "asia-northeast1-a" boot_disk { ini…

hadoopコマンドでHDFSからS3へデータコピー

事前準備 AWSのIAMでS3に書き込み可能なアクセスキーとシークレットキーを発行しておいてください。 概要 hadoopコマンドでHDFSからAWSのS3へデータコピーする例です。コマンド例のディレクトリ名などは以下のようになっていますので読み替えてください。 HD…

Ciscoスイッチのポートミラーリング設定

概要 Cisciスイッチでポートミラーリングを行い、パケットキャプチャを行った際にメモです。空いているmonitorのsession番号を指定してミラーリングの設定を行います。 monitorの設定の確認 まずsession番号1がすでに使われていないか確認します。 以下コマ…

Redisのslave-read-only設定の挙動

概要 Redisのレプリケーション設定にslave-read-only設定がある。 デフォルトはyesになっていてslaveにデータは書き込めないようになっている。 設定をnoにするとslaveにデータが書き込めるようになるがそのデータはそのslaveサーバーにしか存在しない状態に…

ブログ楽しいですよ

はじめに この記事はwrite-blog-every-week Advent Calendar 2018 16日目の記事です。私が常日頃ブログについて考えていることなどを書いてみたいと思います。 ブログを書くようになったきっかけ ブログを書き始めたきっかけは技術的に困ってググったときに…

TerraformでGCSのライフサイクル設定

概要 GCPのGCS(ストレージ)でライフサイクルをTerraformで設定する例です。 例 バケット内のオブジェクトが365日経過後に自動削除されるよう設定しています。 resource "google_storage_bucket" "image-store" { name = "image-store-bucket" location = "as…

UbuntuでOS再起動後もiptablesの設定を有効化させる方法

概要 UbuntuでOS再起動後iptablesの情報が読み込まれずハマった。 インストール apt-get install iptables-persistentこのパッケージを入れると設定ファイルに書き出してくれる。依存関係で netfilter-persistent パッケージがインストールされる。 /etc/ipt…

rsyncの時ユーザ名を明示しないと出るエラー

rsyncを行う際にユーザ名を指定しないとエラーが出ることがある。 その際はユーザを指定することでrsyncが実行出来る。 エラー $ rsync -avz example.com:/tmp/ . usage: ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec] [-D [bind_add…

Gitの設定を仕事用、個人用で分ける

概要 1台のPCで仕事用、個人用それぞれのGitリポジトリに接続する場合、 git configの設定を都度行うのは面倒です。そこで~/.gitconfigにディレクトリ毎に仕事用、個人用の設定を行うことで、 ~/work/以下にcloneしたリポジトリなら仕事用の設定 ~/personal/…

Macのhosts切り替えアプリ『Gas Mask』

Mac

概要 Macで/etc/hostsを書き換えて開発環境をブラウザで開くことが多々あります。 毎回Vimなどで書き換えるのが面倒だなと思っていたところGasMaskという便利なソフトウェアがありました。事前にhostsファイルを登録しておくと数クリックでhostsを切り替える…

UbuntuでIPMIのアドレスを確認する手順

概要 OSのコマンドでIPMIのアドレスを確認する手順です。 IPMIアドレスが不明の場合でもOSが起動している状態のままIPMIのアドレスを確認することが出来ます。 準備 インストール ipmiコマンドを使えるようにパッケージをインストールします。 apt-get updat…

シェルスクリプトでのインクリメント

#!/usr/bin/env bash COUNT=1 while : do echo $((COUNT++)) sleep 1 done; COUNT=0 にすると 0 1 2 3となるため、 =1 にしておく。

Jenkinsで特定の文字が含まれているジョブを検索

Jenkinsのジョブで特定の文字が入っているものを検索したい時がある。例えば docker コマンドを使っているジョブを検索する場合、 Jenkinsサーバーで以下コマンドで検索出来る。 find /var/lib/jenkins/jobs/ -maxdepth 2 type f -name config.xml | sed 's/…

CLIでGistにファイルをアップロード

概要 GitHubのスニペットサービスのGistにターミナルからアップロードする手順です。 インストール brew install gist 初期設定 gist --login以下のようにログインプロンプトが出ますのでログインします。 $ gist --login Obtaining OAuth2 access_token fro…

GitHub Issueリーダーの『Jasper』が超絶便利

Jasper jasperapp.io 概要 最近GitHub Issueベースで業務を行っています。 複数のリポジトリで各リポジトリ毎にIssueが立てられるのでブラウザだけでは大変見づらい状況になってきました。 メールで通知やSlackへ通知を飛ばしたりでなんとかやりくりしていた…

/usr/lib/systemd/system/と/etc/systemd/system/

概要 /usr/lib/systemd/system/ ※CentOSの場合 /lib/systemd/system/ ※Ubuntuの場合 と /etc/systemd/system/ のUnit設定ファイルは同名ファイルがある場合 /etc/systemd/system/が優先される。 使い分け デーモンの起動オプションを変更する場合/usr/lib/sy…