AWS に毎日100ドル払っていた話

ちゃんとCost Explorer を見ましょうという話。 ホント、それに尽きます。 マイクロバッチ みなさんはマイクロバッチという言葉をご存じでしょうか。 簡単にいうと、短期間のスパンで動く、軽量バッチです。 これをAWS Fargateで動かす実装になっており、そ…

golang で競技プログラミングの問題を解いている話

golang ももう少し手になじませたいと思い、AtCoderの問題をちょいちょい解いてます。 解いててしんどいなって思うのは、何気なく標準入力を扱っていると、読み込みだけで制限時間オーバーすることがある。みたいな話。 あとは、結構いろんなものがないので…

python での duck typing は難しい

python に限らず、動的型付言語では一緒かと思いますが、pythonで出会ったのでそのようなタイトルになっています。 何が起こったのか 某所にて、 pandas 0.25.3 から pandas 1.0 にバージョンアップしたら壊れたという話があり、壊れている箇所について、疑…

Javascript が難しい

TypeScript勉強していると、どうしてもJavascriptにtranspileされる都合で、Javascriptのことをちゃんと知らないといけないのですが、 そもそも Inheritance and the prototype chain あたりの知識がなさ過ぎて、まずそこから勉強しているので遅々として進ま…

TypeScript を勉強し始めた話

ふと思い立って TypeScript の勉強を始めました Hands-On Functional Programming with TypeScript という本を使って勉強しているのですが、 TypeScriptを勉強したいというよりは functional programming の勉強をしたい、ついでに TypeScript ひいては Java…

2019年を振り返ってみる

早いもので、2019年も終わろうとしているので、ちょっと振り返ってみようかと思います。 仕事 大きなこともなく、平穏な1年でした。 データセンターの移行があったり、コンテナ化がだいぶ進んだり、人が増えたり、減ったりしたけれど、管理しているITインフ…

zipkinを移行している話

トレーシングツールとしてzipkinを利用しているのですが、稼働時からサーバのバージョンを上げておらず、クライアント側のバージョンアップでまともに動かない状態になっていたのを更新している話。 今までの構成 構築されたころからのしがらみや人的リソー…

gitlab-runner トラブルメモ

Gitlabを利用しており、CIにgitlab-runnerを使っていてであったトラブルについて AWS上でdocker+machine構成 確率でジョブが失敗する ubuntu 16.04 18.04にて、特定のジョブが確率で失敗するというもの CIの中でtest serverを起動して ローカルで待ち受け、…

モノレポ terraform で atlantis を活用している話

Atlantis とは Atlantisをご存じでしょうか。 簡単に言うと GitHubやGitLabなどでterraform を管理する際、自動で terraform plan 結果を表示してくれたり、 リポジトリ内で terraform apply まで行ってくれるツールで、terraform 作業をgit repositoryで完…

sonatype Nexusのblob store を FileからS3に変更する

Nexus Repository OSS - Software Component Management | Sonatype という、Internal Repositoryを作成するソフトウェアがあります。 こちら、昔はデータストアとして、ディレクトリの指定しかできなかったのですが、いつからか、AWS S3が指定できるように…

mini hardening に参加した話

write up 的なものは、ひかえてくださいということなので、具体的な話はありません。 参加しようよ?と社内で募集があり、社でチームを組んでの参加でした。 みんな意識が低く、そもそも数日前に来ていたレギュレーションを当日読み始めるレベルでした。 そ…

AWX にカスタム ansible環境を用意する。

Towerのドキュメントは docs.ansible.com こちらに。 local docker を利用している想定で話を進めていきます。 利用する awx のバージョンは 5.0.0 ベースです。 作成するvirtualenvは /var/lib/awx/venv/test で ansible 2.5.15 としています。 awx_web イ…

GitLabのバージョンアップをした話

概要 社内で9.0.xくらいのバージョンのGitLabを利用していました。 新規に追加された機能を利用したいという要望や、SaaSへ移行するタイミングが後ろにずれていったこと などがあり、最新バージョンに追随できるよう、バージョンアップを行いました。 なぜ …

SPIFFEな勉強会でSPIFFE/SPIREとは何かを知った。

SPIFFEは、Zero Trust Networkを実現するための認証機構用APIとして生まれたらしいです。 何か、他のリソースへアクセスする機能を持ったものをWorkloadと呼び、そのWorkloadに対して、検証可能なTokenを付与することが主な責務です。 Workloadとして例えば…

AWS S3 をマルチアカウントで使う時の注意

AWS S3 をマルチアカウントで使う時、結構厳しめな感じなので注意しましょう。 S3 Bucket multi-account-testを アカウント A で作成します。 bucket policy に { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { …

Ansible Night 2019/04 に行ってきた

内容とか雰囲気はtogetterに AnsibleサポートマネージャーMichelle Perz (@pinkfiregoddess) | Twitterさんが初来日ということでとても盛り上がっていました。 かくいう私は https;//ansiblejp.slack.comのほうで運営に興味がある人を募集していたので、手を…

ssmjp 2019/03 ヤマサキ春のサメ祭り へ行ってきました

アウトプットしないのは知的な便秘!ということで、アウトプット枠にて とても久しぶりにssmjpに行きましたが、ssmjpらしい回でした。 サメ祭りということで サメの話 サメじゃないサメの話 運用自動化の話 JAWSDAYSの話 という内容でしたl 内容とか雰囲気は…

Gitlab Runner(docker) のAutoscale with AWS

Autoscaling GitLab Runner on AWS | GitLab を試してみた話。 概要 Gitlab Runner は、実行方法としてdockerを選択すると、Gitlab Runner上でdocker runする形で実行されます。 その意味するところは、 Gitlab Runner本体のリソース上限の範囲でjobを実行し…

私の理解した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へ移行させて、…