Crostini VMの再起動方法


crostiniのXがよく落ちるのでCrostini VMを再起動するケースがよくある。手順は簡単で、

  1. croshを起動
  2. vmc stop termina
  3. vms start termina


AWS Ruby SDKでCost Exploreの情報を取得する方法


aws-sdk version3での話です。

1. aws-sdkのCost Exploreのモジュールを読み込む

2. IAMユーザに請求情報のアクセス権を与える

上部のナビバーのアカウントをクリックして、請求情報のアクセスのeditをクリックしてIAMアクセスのアクティブ化をチェックして保存。

3. IAMユーザに必要なロールを設定して追加する

下記のロールを作成し(今回はGEtCostAndUsageのみ)、該当ユーザでロールを追加する

4. REPLでテスト

Rails cでコンソールを呼び出しテスト。各キーは設定済みとする。

初期化。us-east-1でのみ提供されている

BlendedCostとUnblendedCostの差がわかりづらい。Unblendedの方が割引などを除いた実際の数値に近いという理解で良いのか。

ドキュメントを読み試行錯誤の結果、タグに紐づいたコストを引くことができた。

注意

Cost ExploreのAPIリクエストにはお金がかかりそう。。


tmuxで指定したwindow/paneから始める方法 [再起動も安心]


PCの再起動後にTmuxのwindowやpaneを自動的にある所定のものにしたい。tmux-resurrecttmux-continuumを試した試したがうまい具合にシャットダウン前の状態にしてくれないケースがあったので、それなら常に同じ状態からスタートした方が効率が良い気がしてきたので、そのような運用にしてみる。

tmuxのwindow作成などはtmuxコマンドから呼べるので設定ファイルを書くことができる。starttmux.shというスクリプトを作ってこれを.bashrcから呼べば良い。

*C-mはtmuxでの改行

でこれを.bashrcの末尾追加すれれば毎回同じtmuxからスタートできる。


[Ubuntu] 古いバージョンのElasticsearchのインストール方法


本家のバージョンがどんどん上がっているくが、現状問題ないならあえて追従する必要はないように思う。(セキュリティに重大な問題等なければ)

新しい環境を設定するときに、古いバージョンをインストールするのは少し面倒臭い。

https://www.elastic.co/jp/downloads/past-releases でProductとVersionを選び。ダウンロードボタンをクリックし、該当リンクをコピペ。

ちなみにconfigがないと怒られるので

またrootで起動できないとも言われるので


localhostにPublic IPをマップして、リモートでの開発をあたかもローカルで開発してるようにする方法


ずっと知りたかったlocalhostへのマッピング方法がやっとわかった。

例えば、リモートホスト上(IP 111.111.111.111)で rails s -p 32884 -b 0.0.0.0で開発していた場合、普段は問題ないのだが、OAuthのログインのリダイレクト/コールバック先がlocalhost:3000で決め打ちされている場合、ユーザ認証が失敗してしまう。ユーザアカウントのroleをうまく変更して対処するしかなかった。それが下記のようにSSHでポートフォワーディングすると、

もしくは通信の暗号化を気にしないならsocat でもできる。

ローカルの開発機のブラウザでloalhost:3000をたたくとサーバ側の開発ポートにマッピングされる。これでOAuthのリダイレクトも問題なくなりリモートホストを意識しないで開発できる。

これ絶対探してる人多いはず。

参考:https://blog.trackets.com/2014/05/17/ssh-tunnel-local-and-remote-port-forwarding-explained-with-examples.html


tmux使用時に日本語が表示されないとき(アンダースコアになってしまう)の対処法


上記写真のように日本語であるべきところがアンダースコア(_)になっていて表示されないときは、tmuxをutf8モードで起動する。

-u when starting, tmux looks for the LC_ALL, LC_CTYPE and LANG environment variables: if the first found contains ‘UTF-8’, then the terminal is assumed to support UTF-8. This is not always correct: the -u flag explicitly informs tmux that UTF-8 is supported.

引用元: http://man.openbsd.org/OpenBSD-current/man1/tmux.1


AWS CLIでNVMe利用インスタンスから外部EBSボリュームをマウントする方法


AWSのEC2インスタンスでは最近高速SSDのNVMeを採用しているインスタンスタイプがある。

NVM Express (NVMe) もしくは NVMHCI (Non-Volatile Memory Host Controller Interface) は、PCI Express (PCIe) を通じて、不揮発性ストレージメディアを接続するための論理デバイスインターフェースの規格であり、シリアルATAに代わる次世代の接続インターフェース規格である。

引用元 :https://ja.wikipedia.org/wiki/NVM_Express

これを利用しているインスタンスでは下記のように/dev/nvme0n1p1のようなデバイスになっており、従来通りにAWS CLIで自動マウントしようとすると失敗する。

AWS CLIではまず xvdbをAttachし、利用できるようになるのを待ち、マウントする。

昔ながらとNVMeをサポートするコマンドは、下記のような感じ。


[DNS]ドメインのMX,TXT レコードの確認方法


mxやtxtレコードのバックアップを撮りたいときがあります。 nslookup -q=anyでとってこれます。 cnameなどはFQDNを知らないと取れないので漏れなく全レコードをバックアップをとるのは難しい?


Scroll to top