私の理解したBFF

BFFとは Backend for frontend の略。 FrontendのためのBackend。 それはなんでしょうか? 背景として、Frontendは、API呼び出しをして、もらったデータをレンダリングするのが主になっているような気がそこはかとなくしています。 このような状況で、Fronte…

今年のアウトプットを振り返ってみる。

昨今、盛んにアウトプットをしましょう、アウトプットをしないやつはクズ、まだアウトプットしてないの? などと、アウトプットしていない人間には何の価値もないというような風潮があり、目に見える形でアウトプットをすることをほとんどしていない私にとっ…

datadog で snmpコレクタを利用して監視をしようとして諦めた話。

背景 datadogというSaaSのモニタリングサービスがあります。 エージェントを対象に入れてデータを送るpush型モデルなのですが、ホストの情報だけでなく、様々な方法でメトリクスを取得できるよう担っており、その中にsnmpも存在しています。 ホスト監視のた…

phpcon 2018にNOCとして参加した

phpcon 2018にNOC(NetworkOperationCenter)要員として参加してきました。 phpcon 2018 NOC では、 Server Network WiFi の3チームがあり、Serverチームの一員として参加しました。 テクニカルなところ Serverチームで運用したものとして DHCP DNS Log Monito…

Ansible AWX でSAML SSO してみた

概要 Ansible AWX でSAML SSOしたときにちょっとつまずいたのでメモを残す。 環境 docker を利用して構築しました。バージョンは2.1.0 イメージは https://hub.docker.com/r/ansible/awx_web/ https://hub.docker.com/r/ansible/awx_task/ 普通に上記イメー…

ansible module mysql_user について

これは Ansible Blogger 2018 (sponsored by Red Hat) Advent Calendar 2018 - Qiita 2日目の記事です。 ansible module mysql_user DBもちゃんと管理したい! という話は当然のようにあって、 複数DBに同じユーザがいてほしい! だとか、 残念ながらあの…

ISC Kea 1.1 を冗長構成で使ってみる

ISC Kea の 1.4で冗長化のための設定が増えました。 しかし、主要なディストリビューションでは、パッケージマネージャによりインストールされるKeaのバージョンは1.1です。 そこで、そもそもKeaではバックエンドにRDBMSが指定できるので、冗長化しなくても…

AWS Athenaにできるだけ少ない権限でアクセスする。

AWS Athenaを触る時に必要な権限を確認し、余分な権限をつけずに実行するのが目的。 概要 AWS Athenaとは Amazon Athena はインタラクティブなクエリサービスで、Amazon S3 内のデータを標準 SQL を使用して簡単に分析できるようになります。Athena はサーバ…

scrapy で カスタムアウトプットする。

scrapy crawl 'crawler' -o outpu.csv というような方法で spiderを動かして結果をファイルに吐き出すことができます。 -o output.csvであればcsvで書き出されますし、-o output.jsonであればjsonで書き出されます。 この書き出し方について、カスタマイズし…

FTPと ipv6plus

家庭用光回線ですが、 PPPoE方式だと大人の事情で通信速度が上がらない状況がある。という認識がだんだん広まっていて、 IPv6plusというPPPoEではなく、IPv6トンネルとNATを利用して高速にIPv4接続ができる。 みたいなサービスが流行って来ているように思い…

分離型キーボードを使い始めた話

一般的な日本語キーボードをずっと利用していましたが、 会社でキーボードが買ってもらえない、 会社に家からキーボードを持っていくのが面倒。 ということで、分離型キーボードならかさばらないし持っていきやすいだろう と思い、分離型キーボードを使い始…

python 2 to 3 をしている話。

AWS lambda で python2なものとpython3なものが混じっていて、同一リポジトリ管理されていてlinterとかディレクトリごとに分けるのダルい、まとめてやりたい。 ということで、一念発起してpython3への移行を開始しました。 超雑に全部python3へ移行させて、…

Windows10 python3.7 で pipenvを利用しようとしたら失敗したので調べた話。

pipenv install とやったら UnicodeDecodeError: 'utf-8' codec can't decode byte 0x83 in position 271: invalid start byte というよく見るエラーが出ました。 出た箇所が virtualenv.py のline = line.decode(fs_encoding)で、 ははぁ、このエンコーディ…

IPsecではいまだにsha1とかDHparam1024bitが主流っぽく映るのはなぜなのか。

Webの世界では sha-1はもはや安全ではなさそう、ということもあり、TLS証明書の標準はSHA-2(SHA256)へ移行しているし RSA 1024bitももはや安全ではないとして RSA 2048bitへの移行がほぼ終わっているようにうかがえる。 しかして、IPSecでは未だに DH Group2…

aws rds の iam 認証 を試してみた時のメモ。

MySQL および Amazon Aurora に対する IAM データベース認証 - Amazon Relational Database Service という資料にある通り、AWSのRDSでは IAM 認証を利用してDBにアクセスする方法があるのでそれを試した話。 まず、Tokenは長いです。 というのが前提。 Mac…

mktempは便利だぞ

一時ファイル作成するのに便利なmktemp 実は、何も考えなくてもパーミッションを 600 で作ってくれるので、他のユーザから見られることがありません。 touchでいいのでは?という意見に対してはだいたいそう返します。確かにumask設定すれば良いことですが、…

転職ドラフトで転職した話

こちらの記事は転職ドラフト体験談投稿キャンペーンに参加しています。 だいたいタイトルの通りなんですが、転職ドラフトで無事転職しました。 転職ドラフトへの登録について 転職ドラフトは最初期にネタなった時期に登録して、あんまり大したこと書かずに放…

最近のUbuntu 16.04 には標準ではpythonバイナリが存在しない。

AWS にて Ubuntu オフィシャルイメージを利用したところ pythonがなかった。 調べてみたところ、 python3, python3.5 は存在した。 pythonを実行しようとすると python-minimal もしくは python3 パッケージにpythonが含まれているといわれるが、 インストー…

TwitterのPINを利用したOAuthでtokenもらう

いつも忘れるのでメモ。 consumer_key consumer_secret を利用して https://api.twitter.com/oauth/request_token へリクエストする。 method: POST Headers: Authentication: OAuth oauth_consumer_key="<key>",oauth_signature_method="HMAC-SHA1",oauth_timest</key>…

python の pickle って嬉しいの?

python には pickle という、オブジェクトをシリアライズして保存しておくことができるモジュールが存在する。 例えば、ファイルからデータを読み込んで、pythonのオブジェクトへ変換する、という作業を色んな所で何度も繰り返す場合、 そのたびに生成するこ…

InteropでJAIanの話を聞いた。

今年のみどころ | Interop Tokyo 2018 ShowNetのトポロジーを見るとわかるのですが、 monitoringの項にjaian というなんでこんな名前のものが?というコンポーネントがあります。 これは一体なんなんだ。ということで見に行ってきました。 ものとしては pack…

Aruba 2530 でループ検知、ブロードキャストストーム検知を試した話

Arubga 2530 というお手頃スイッチがあります。 その中でも 48G (J9775A) でループ検知とブロードキャストストーム検知を試したのでそのメモ。 ループ作成にはFXCのスイッチを利用しました。ループ検知するけど遮断しないことが出来るスイッチです。 ループ…

FreeRadiusとlogとtimestamp

FreeRadius のログをファイルに保存するようにしていると、ログに追加されるtimestamp が ctime の形式になっていて、変更ができません。 手元で試していたのはCentOS6系だったので FreeRadius2.xなのですが、確認したところ、3.x, 4.x ともに変化は無いよう…

Apache と NameVirtualHost と HTTPS

Apache には NameVirtualHost という、HTTP Header の Hostの値によって、 返すコンテンツを変えることができる機能があります。 使い方は例えば <VirtualHost *:80> ServerName test1.localhost:80 DocumentRoot /var/www/test1/ </VirtualHost> <VirtualHost *:80> ServerName test2.localhost:80 DocumentRoo</virtualhost>…

prometheus と remote_write と logging と

prometheus でデータ収集しつつ、 remote_write で influxdb にデータを貯めるという実験を行っています。 マシンのディスク容量が小さいこともあるのですが、短期間で予想以上のディスク容量を消費していたので確認して見たところ、 ログファイルが肥大して…

CentOS7 rsyslogとelasticsearch output plugin でエラーが出た

rsyslogにはelasticsearchへそのまま出力するプラグインが用意されています。 用意されているのですが、CentOS7(1708)標準のリポジトリにあるものは 8.24.0と若干古く、Elasticsearch側のバージョンが新しい(6以上)と、正常に出力できません。 デバッグ出力…

Cisco 機器と IPSec その4

今回は、 NAT-Traversalなやつです。 ルーターがespとかudp500とかudp4500を固定的に割り当ててくれなくても大丈夫なやつです。 この構成だと、Side-B 側がかならずinitiatorになります。 Side-Aから接続しにいっても500番ポートとか開いてませんので。 Site…

prometheusの remote write (influxdb)

はじめに prometheusは、データを永続的に保管する目的で使うのはあんまりよくないと書かれています。 If your local storage becomes corrupted for whatever reason, your best bet is to shut down Prometheus and remove the entire storage directory. …

windows 10 fall creators update でなんか環境変数が設定しにくくなった気がするのでPowerShellで環境変数を設定することにしたっぽい。

[Environment]::GetEnvironmentVariable(<環境変数名>,[EnvironmentVariableTarget]::User) で現在の値がゲットできる。 [Environment]::SetEnvironmentVariable(<環境変数名>,<値>,[EnvironmentVariableTarget]::User) でセットできる。 pathを追加する場合…

DHCP relay agent と giaddr と source address

DHCP relay agentとは DHCP パッケットをDHCPサーバへ転送するエージェント。 DHCPclient -- DHCPrelayagent -- DHCPserver みたいな感じで、DHCPclientとDHCPserverが同一セグメントにいない場合に間に入ってくれるやつ。 仕組みみたいなもの clientから、D…