Redis ClusterのFLUSHALL

概要 Redis Clusterのデータを全て消したい場合、各ノードでFLUSHALLを行う必要があります。どこか1台のマスターノードでFLUSHALLを実行してもクラスタ内のデータは全消去されず、 redis-cliでアクセスしたサーバーのデータのみ削除されます。また、クラスタ…

Zabbix3.0 スクリーン共有設定

Zabbix3.0でスクリーンを作成したところグラフは見られるけどスクリーンは見られないということが起きました。 スクリーンに権限設定は無かったはず。。。 と思っていたらZabbix3.0から共有設定が実装されたようです。 スクリーンを作成する画面から[共有]タ…

PKCS12ファイルから秘密鍵と証明書を取り出す

SSL

秘密鍵取り出し openssl pkcs12 -in CEDS123456789.pfx -nocerts -nodes -out example.com.key -passin pass:pa22w0rd オプションの意味 CEDS123456789.pfx PKCS12ファイル名 example.com.key 取り出した秘密鍵のファイル名を指定 pa22w0rd PKCS12ファイルに…

RedisのデータをDB番号指定で一括削除

※取り扱い注意! redis-cli --raw -n 10 KEYS "*" | xargs redis-cli -n 10 DEL10はDB番号

dateコマンドのUNIX時間変換

ローカル時間(localtime)→UNIX時間(unixtime) date '+%s' 表示例 [tsunokawa@test ~]$ date '+%s' 1396278000 UNIX時間(unixtime)→ローカル時間(localtime) date -d '@1396278000' 表示例 [tsunokawa@test ~]$ date -d '@1399453765' Tue Apr 1 00:00:00 JST…

ステータスがexitedになっているDockerコンテナのみ削除

概要 ステータスが『Exited』となっているDockerコンテナのみdocker rmする場合の方法です。 ステータスが『Exited』となっているDockerコンテナのみ表示 docker ps -a -f status=exitedまたは docker ps -a -f 'exited=0'上記でSTATUSがExitedとなっている…

Dockerのイメージ削除時のエラー「Error response from daemon: Conflict, cannot delete image」対策

概要 Dockerのイメージを削除する際、イメージ名を変更しているとエラーが出て一発で消せない時があります。 [root@test ~]# docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE hoge/centos latest 2064fc6b29af 8 weeks ago 214.5 MB fuga/cento…

Markdownに目次(TOC)を表示させる

概要 Markdownでこういった目次を作るメモです。 github.com こちらを利用させていただきました。 Markdownファイルを指定して実行すると簡単に指定の場所に目次を作ることが出来ます。 インストール npm install -g doctoc 表示例 npm WARN engine deep-ext…

CentOS7のキックスタートファイル(CentOS6から変わったところ)

zerombrのyesは不要 zerombr yesとしているとエラーになる。yesが不要で zerombr のみでOKエラー画面 anaconda 19.31.79-1 for CentOS 7 started. The following problem occurred on line 15 of the kickstart file: Kickstart command zerombr does not ta…

CentOS7のyum自動アップデート

概要 CentOS7のyum自動アップデート手順です。 yum-cronパッケージをインストールして設定をおこなう必要があります。 インストール yum install yum-cron.noarch 設定 自動アップデートを有効化 /etc/yum/yum-cron.conf以下のように編集することで自動アッ…

無線LAN(Wi-Fi)接続認証をパスワードからLDAP認証に切替えた話(FreeRADIUS+OpenLDAP連携)

概要 無線LANにLDAP接続出来ないかと試した備忘録です。 結果FreeRADIUS+OpenLDAPの組み合わせで実現出来ました。 無線LANパスワードの問題点と課題 無線LANのパスワード運用は以下の問題や課題があるなーと思っています。 パスワードは変更しないまま放置 …

RedisにKEYとVALUEをsetするPerlスクリプト

概要 Redisに指定したキーとバリューをセットするスクリプトです。 CPANのRedisを使わせてもらってます。 使用するDB番号(dbid)の指定も可能です。 使い方 オプションでキーとバリューを指定出来ます。 redis.pl -k testkey -v testvalue ヘルプ -hでヘルプ…

SolrCloudの分散冗長構成

概要 Solrサーバーを複数台使って分散冗長構成を組んだ時のメモです。 SolrCloudという機能でこの構成を組むことが出来ました。 環境 バージョン関係 OS CentOS 7.1.1503 Solr 5.2.1 Zookeeper 3.4.6 Solrサーバー solr01.example.com solr02.example.comこ…

Jenkinsグローバルセキュリティ設定の行列による権限設定の各項目説明

概要 Jenkinsのグローバルセキュリティ設定で権限管理欄に『行列による権限設定』というものがあります。 これは各ユーザ/グループ毎に可能な操作権限を与えることが出来る設定です。 各項目の説明は上図のように項目をマウスオーバーすれば表示されるのです…

HashiCorp Vaultをバックエンド・ストレージをMySQLにして試してみた

概要 HashiCorpが提供しているVaultというツールを使ってみました。 Vault by HashiCorp VaultはパスワードやAPIキーなど機密情報を安全に読み出したり保存出来るツールです。 今回機密情報をMySQLに保存する方法を試してみました。 データをMySQLに保存する…

CentOS7の/etc/sysctl.d/以下の設定ファイルの反映方法

設定反映 /etc/sysctl.d/*.confといった/etc/sysctl.d/以下のカーネルパラメータを手動で反映させるには -pオプションではなく sysctl --systemというオプションを使う必要があります。 /etc/sysctl.conf の変更の手動適用は CentOS6以前と同じ sysctl -pで…

MySQL5.6のクエリログ出力設定

環境 MySQL-server-5.6.23-1.el7.x86_64 設定変更 /etc/my.cnf[mysqld]ディレクティブに以下を追記 general_log = 1 general_log_file = /var/log/mysql/mysql_query.log追記後MySQLデーモン再起動

SSL証明書と秘密鍵のペア確認

SSL

概要 SSL証明書と秘密鍵がたくさんあったり更新の時期や担当者の変更などでSSL証明書と秘密鍵のペアが分からなくなるときがあります。 証明書ファイル example.com.crt 秘密鍵ファイル example.com.key 上記のファイル名の証明書ファイルと秘密鍵ファイルが…

TerraformでDigitalOceanのVPSを一気に複数台起動

概要 ミドルウェアの検証でサーバーを複数台用意することがよくあります。 これまでVagrantで仮想マシンを複数台起動させたりしていたのですがPCのスペックが低いため快適に検証が出来ていませんでした。 そこでTerraformとDigitalOceanを使うことでその問題…

GratanでMySQLのアカウントと権限設定をコード管理

概要 MySQLの権限設定を行う場合、 DB担当者がDBサーバーにログインしてGRANT文を発行します。 Gratanを使うとこの権限設定をRuby構文でコードとして記述することができます。SQL文を直接発行するのではなくコードで管理できるので 開発者からのPull Request…

シングルユーザーモードでマウント済みのルートパーティションをremount

シングルユーザーモードで起動するとRead Onlyになっていて書き込みが出来ない。 /をrwでリマウントするとこれが解消する。 mount -o remount,rw /これでOK。

RedisのDB番号を増やす

概要 RedisはDB名というものがなく番号で管理されます。 このDB番号はデフォルトで0〜15を使用できます。 DB番号16以降を使用したい場合どうすればいいのかなーと思ったら 設定ファイルを修正してデーモン再起動すれば増やせるみたいでした 設定 DB番号16を…

LDAP連携しているJenkinsの匿名ユーザでリモートからジョブを実行出来ない問題をBuild Token Root Pluginで解決

概要 LDAP連携しているJenkinsでは匿名ユーザ(ログインしていない)はリモートからジョブが実行出来ません。 このように匿名ユーザにBuildとReadのチェックを入れると実行出来るようになりますが ログインしていないユーザが実行出来たりジョブ一覧やトップ画…

mysql_config_editorを使ってパスワードのベタ書きを回避

概要 MySQLのDBダンプのスクリプトなどパスワードをベタ書きしている場合があります。例えば mysqldump -u dbdump --password=dbdump testdb (オプション略)こんな感じでパスワードを書いてしまっています。そこでmysql_config_editor(MySQL5.6以上)を使って…

Perl Net::LDAPでLDAPアカウント情報を検索表示

概要 LDAPでアカウントを管理しているとuid一覧を取得したくなったりメールアドレス一覧を取得したくなったりします。ldapsearchコマンドでも実現可能ですがPerlでNet::LDAPを使ってスクリプトを書いてみました。 サンプル エントリ内のデータを全て表示 #!/…

CentOS7のシングルユーザーモード

概要 CentOS7はシングルユーザーモードに入るときにカーネルパラメータに追加する値がCentOS7以前のOSとちょっと違ったのでそのメモです。この手順はrootのパスワードが必要なのでrootパスワードリセットには使えません。 環境 CentOS 7.1.1503(KVM) 3.10.0-…

screenコマンドでログアウト後も処理を実行し続ける

概要 コマンドを実行した後、処理が終わるまでログアウト出来なかったりターミナルを閉じられなくなったりします。 そんな時はscreenコマンドを使うとターミナルを閉じたりログアウトしても処理を実行したままに出来ます。 環境 CentOS 7.1.1503 インストー…

rpmdev-vercmpコマンドでRPMパッケージのバージョン比較

概要 rpmdev-vercmpコマンドを使うとRPMパッケージのバージョン比較が出来ます。 実行例 rpmdev-vercmp "パッケージ1" "パッケージ2" 表示結果例 パッケージ1 < パッケージ2パッケージ2が新しいと確認出来ます。 インストール rpmdev-vercmpコマンドはrpmdev…

USBバーコードリーダーでMACアドレス収集

概要 サーバーやIP電話などネットワーク機器を何十何百台と購入した際、 DHCPサーバーのMACアドレス登録が大変になります。 1台1台MACアドレスを控えようとすると間違いが発生したりします。 そんな時USBバーコードリーダーを使うと便利すぎワロタでした。 U…

ethtoolを使ってLANポートを点滅させる

点滅させる 点滅させたいインターフェース名を指定します。 LANポートがたくさんあるときに便利です。 ethtool -p eth0 通常時 点滅時 動画のGIFアニメ化 iPhoneの動画モードで撮影した.movファイルを「俺のGIF - 動画からGIFを作ろう!」というiPhoneアプリ…