【influxdb-1.8】 autogenに無期限に溜まったデータを削除する

何も考えず influxdb の運用を始めてしまい、 /var/lib/influxdb/data/xxx/autogen/ にがっつり昔のデータが溜まってきて、なんかディスクが一杯だし昼頃サーバに負荷がかかるなーとお悩みの諸兄
ALTER RETENTION POLICY "autogen" ON "xxx" DURATION 800d
で autogen の保存期限を無期限から800日に変更できます。 上記のクエリを発行してから1時間程度で、実際にディスクからデータも削除されて、すっきりです。

【aws-ec2-ebs】 ルートデバイスのスナップショットを取るとき、インスタンスを停止すべきか

いつも迷うのですが、公式に

Amazon EC2 インスタンスのルートデバイスとして機能するボリュームのスナップショットを作成する場合は、スナップショットを作成する前にインスタンスを停止することをお勧めします。

https://docs.aws.amazon.com/ja_jp/ebs/latest/userguide/ebs-creating-snapshot.html

とあるので、スナップショット取るときはおとなしくインスタンスを停止した方が良さそうです。

ただし、スナップショットを取得開始して、”保留中”(pending)ステータスになれば、インスタンスを起動してokです。

上記サイトに

スナップショットの作成は非同期です。スナップショットはすぐに作成されますが、すべてのデータが Amazon S3 に転送されるまで pending 状態のままになります。これには、ボリュームで変更されたブロックの数に応じて、完了までに数時間かかることがあります。この間、スナップショットに影響を与えずにボリュームを引き続き使用できます。スナップショットには、スナップショットのリクエスト時にボリュームに書き込まれたデータのみが含まれます。

と書かれているとおり、スナップショットをリクエストしたタイミングのデータが保存され、その後の変更はスナップショットには記録されない、のでインスタンスは起動してかまわない、ということのようです。

【bash】 ディレクトリ下の全rarファイルをzipに変換する

変換する、というか展開して、zipに固め直します。

#!/bin/sh

for dir in *.rar;
do
    echo $dir
    bn="${dir%.*}"
    echo $bn
    mkdir "${bn}"
    cd "${bn}"
    unrar e "../${dir}"
    cd ..
    zip -r "${bn}".zip ./"${bn}"/
done

展開したファイルは消してません。
unrarとかzipとかは先にインストールしておきましょう。

【kafka】 kafkaの中身が見たいとき

trifectaを使います。

バイナリがあるので、ビルドは必要ありません。

wget https://github.com/ldaniels528/trifecta/releases/download/v0.22.0rc8-0.9.0.1/trifecta-cli-0.22.0rc8b-0.9.0.1.bin.jar
wget https://github.com/ldaniels528/trifecta/releases/download/v0.22.0rc8-0.9.0.1/trifecta-ui-0.22.0rc8b-0.9.0.1.zip
unzip trifecta-ui-0.22.0rc8b-0.9.0.1.zip
cd trifecta-ui-0.22.0rc8b-0.9.0.1/bin/
./trifecta-ui &

設定が必要なら、$HOME/.trifecta/config.properties を適当に編集して./trifecta-ui &を起動し直します。

ブラウザで hostname:9000 にアクセスします。

“Observe”のタブからkafkaの中身を見れます。

【Java】 kafkaStreams.cleanUp(); がstate dirのファイルをうまく消せなくてエラーになる場合

おそらくwindows環境だけの問題です。

        KafkaStreams kafkaStreams = new KafkaStreams(builder.build(), streamsConfiguration);
        kafkaStreams.cleanUp();

の前に

        final File baseDir = new File(streamsConfiguration.get(StreamsConfig.STATE_DIR_CONFIG).toString());
        final File stateDir = new File(baseDir, streamsConfiguration.get(StreamsConfig.APPLICATION_ID_CONFIG).toString());
        //System.out.println(stateDir);
        try {
            FileUtils.deleteDirectory(stateDir);
        } catch (IOException e) {
            System.out.println("delete error");
        }

を突っ込みます。

import org.apache.commons.io.FileUtils; などが必要になります。

【debezium/kafka】 kafkaに外部から繋ぎたいとき

デフォルトだとkafka:9092に外から繋げません(たぶん)。

docker-compose.yamlに

kafka:
    (snip)
    environment:
        ADVERTISED_LISTENERS: "PLAINTEXT://xxx.xxx.xxx.xxx:9092"

xxx.xxx.xxx.xxxに外部から接続したい、ホストのアドレスを入れるとつながるようになります。

上記のようにした場合は、SECURITY_PROTOCOL_CONFIGをPLAINTEXTにして繋ぐのをお忘れなく。

【チェコ/ポーランド】 プラハからクラクフまで列車で移動する

チェコのプラハからポルトガルのポルトに行きたかったのですが、安い飛行機がありません。
ですが、ポーランドのクラクフというところからRyanAirがポルトまで飛んでいて、かなり安いです。
それで、プラハからクラクフまで列車で移動することにしました。

切符は https://www.cd.cz/en/ からかなり前もって購入することができます。
早く購入すると割引になるみたいで、私たちは2人で728Kc(3450円くらい)でした。

EC115列車、10:24プラハ発、17:25クラクフ着でした。

プラハからクラクフに行くEC115列車はボフミンで機関車および客車のワルシャワに行く部分と切り離され、ブダペストから来たEC130列車の機関車と客車に接続されます。
この映像はEC115列車側から見たボフミンでのEC130列車の機関車と客車との接続の場面です。

食堂車がさいこうでした。

プラハを出てすぐに食堂車は満席になってしまうので、早めに行くのがお勧めです。
ハッピーアワーもあり、食事もビールも安なくります。

食堂車のメニューは https://www.jidelnivozy.cz/ から見ることができます。

【ESXi6.5】 VMware Host Client および ssh接続でvmを複製する

vmOSが CentOS 7.6-1810 での例

ESXiは6.5

ESXiにsshログインする

cd /vmfs/volumes/datastore1
mkdir NEW_VM_NAME
cd NEW_VM_NAME
vmkfstools -i "/vmfs/volumes/datastore1/NAME_OF_VM_COPY_FROM/NAME_OF_VM_COPY_FROM_0.vmdk" -d thin "NEW_VM_NAME_0.vmdk"
cp ../NAME_OF_VM_COPY_FROM/NAME_OF_VM_COPY_FROM.vm* .
mv NAME_OF_VM_COPY_FROM.vmx NEW_VM_NAME.vmx
mv NAME_OF_VM_COPY_FROM.vmsd NEW_VM_NAME.vmsd
cp ../NAME_OF_VM_COPY_FROM/NAME_OF_VM_COPY_FROM.nvram NEW_VM_NAME.nvram
sed -i s/NAME_OF_VM_COPY_FROM/NEW_VM_NAME/g NEW_VM_NAME.vmx

データストアブラウザから新機材の.vmxファイルを右クリックし、仮想マシンの登録

ネットワークカードを削除し、また同一のものを作成する(macアドレスが”自動”になってれば不要)

vm起動時、コピーしたのか移動したのか聞かれるので、コピーと答える

vmを起動したら以下のコマンドでホスト名とipアドレスを変更する

vi /etc/hostname
vi /etc/sysconfig/network-scripts/ifcfg-ens192

以上

【CentOS7】 ESXiでrootパーティションの容量を増やす

CentOS 7.6-1810 での例

この方法では、拡張したいパーティションの末尾を変更して拡張するため、fdisk -l とし、当該パーティションが当該ディスクの一番後ろのパーティションであることを確認しておきます。私の環境の場合、/dev/sda2 でした。

確認したら、ESXi側でディスクの容量を増やしておきます。

vmをリブートして、 fdisk /dev/sda とし、拡張したいパーティションを削除し、同じ番号でディスクの最後まで使い切ったパーティションを作成します。pで確認、wで保存するのを忘れずに。

vmをリブートします。

pvresize /dev/sda2
lvextend -l +100%FREE /dev/centos/root
xfs_growfs /dev/mapper/centos-root

と続けて実行します。

以上。

【マレーシア】トレンガヌのカパス島

マレーシア、トレンガヌのカパス島

海が大好きです。
東南アジアをウロウロした結果、私の中で1番の海がマレーシアのトレンガヌにあるカパス島、カパスタートルバレーのプライベートビーチです。
オランダ人のご家族が趣味でやってるみたいなバンガローで、そこのビーチはサンゴがすごいです。
少し潜ると、踏みつけられて死んでしまってるサンゴじゃなくて、元気に生きてて、綺麗な色のサンゴがずっと遠くまで森のように見えます。
小さな色とりどりのお魚はもちろん、タコと魚の食い合いとか、大きなエイとか、魚を追ってるサメとか、自然が豊富すぎて疲れてしまう事もあるので、そういう時は反対側のKBCビーチまで歩きます。
そこは白砂のビーチで、サンゴは少ないですが、白い砂の水中を泳ぎ回る綺麗なお魚が見えます。
サンゴの森の中で見るいろんな生き物もいいし、白い砂の上を泳ぐ魚を見るのもいいし、水温も高くて最高です。
因みにオランダ人の奥さんが作ってくれるご飯は最高に美味しい。
マレーシアではチーズとか高いのに、チーズをふんだんに使って(それもマレーシアで売ってないタイプのだからご自身で持ち込んでるのかな〜??)家庭的な西洋料理作ってもらって、3泊4日ご飯もビールも混みで二人で三万円弱でした。
カパスタートルバレーまた行きます!