2017-01-01から1年間の記事一覧
株式会社ビズオーシャンで、2017年6月下旬に4泊6日で社長賞?的なシリコンバレー研修に4人+社長で行ってきたので、思ったことなどをメモ。 一言で言うと 日本ヤバい 日程など 4泊6日 日曜日午後に出発して金曜午後に帰ってきた。飛行機は話題のUNITED。帰…
gitはバックアップではないとどこかで聞いたのが印象的で、いつかやろうと思ってたのをやった。たしかにパスワードとか環境変数もろもろはgitに入れていないので、開発サーバーが死んだときは大変面倒なことになってしまう。今のところ、GCPで済ましているの…
先日書いたGoogle App Engineに引き続き、GKEと一緒にメインで使っているGoogle Clouc Load BalancingのSSL証明書更新も完全自動化するスクリプトを書いた。uyamazak.hatenablog.com github.comGAEの方ではやらなかったけど、LBの方は一つの証明書で複数ドメ…
追記 2017/7/4 githubにうp github.com 先週は会社の社長賞研修でサンフランシスコ、シリコンバレーに行ってきて書きたいことは山ほどあるけど、忘れてしまいそうな作業メモ。研修中に証明書の期限が切れてしまい、リモートで更新するのが非常にストレスだ…
要約 Google Pub/Subクライアントを使い、ずっと動かし続けてたらメモリリークが見つかった 調査したらクライアント自体のバグか仕様だった。そもそも動かし続けるように作られてない multiprocessingのProcessを使い、別プロセスで動かし、メッセージを一定…
自社の低予算ビッグデータ基盤oceanusのローカル環境での起動をdocker-composeを使ってできるようにした。GitHub - uyamazak/oceanus: Save all data to Google BigQuery. Fast and row cost using Docker and Kubernetes on GCPこれまでは、それぞれのコン…
一応、WEB系エンジニア的な仕事をし始めて9年ぐらいになる。よく周りの人にそういう仕事をしていると話をすると「新しい技術についていくのは大変でしょ?」と言われるし、そういう仕事をしている人の口から聞こえてくることもある。でも個人的には、全然つ…
ビズオーシャンで技術力向上と伝える力の強化のために社外の人も交えた勉強会をやりたいと思っています。希望者はコメントください。 場所 株式会社ビズオーシャン〒104-0045 東京都中央区築地4丁目1−17 銀座大野ビル8階「混ざる」が自己成長の鍵!株式…
Djangoでフォームで受け取った複数のファイルを、パスワード付きZIPで固めてmodelに保存したかった。Pythonの標準モジュールzipfileではpass付きを展開はできても、作成はできないのでpyminizipを使う。ファイル名と、中身を別々に渡せれば一時ファイルでも…
フルGCPで運用している社内用インスタンス( http://mstdn.bizocean.co.jp )でオリジナルイラストができたのでアップデートしようとしたら、 Binary found at /mastodon/node_modules/node-sass/vendor/linux_musl-x64-48/binding.node Testing binary Binar…
データ基盤のoceanusで、Google App Engineを使った短縮URLサービスを追加した。脳内でもんもんと設計をし、手を動かし始めてから完成まで3日ぐらい。ソースコードは下記。github.com公開しているけど、短縮URLの作成画面は社内の人間のみで、ログイン必須。…
GCPで動かしている自社社員用インスタンス( https://mstdn.bizocean.co.jp )のバージョンアップ時にはまった nginx等を使わずrailsのサーバーで画像も返すときは、下記の環境変数を追加する必要があった。 RAILS_SERVE_STATIC_FILES "true" railsのサーバー…
いろいろ作ってると、GCPのプロジェクトが増えてきて、切り替えとかが面倒になる。 gcloud init を打つと、設定ファイル(configuration)が出てきて、切り替えと再認証(Switch to and re-initialize existing configuration)は出来るけど、切り替えだけの…
いろいろと勉強になりそうなので勢いで立てた。詳細は今度記事にする。Mastodonを構築、運用できてるってだけである程度の技術アピールになる気もするので、エンジニアがいる会社のブランディングなんかにも使えるのではないかと思った。mstdn.bizocean.co.j…
jsタグを貼るだけで無料で高度なアクセス解析ができるGoogle Analyticsはもはやデファクトスタンダード。でも、個人を特定できるような生ログは無料版では手に入れられず、自社の会員IDと結びつけたり、特定の人の行動を追ったりすることは出来ない。そこで…
自社で開発・運用しているビッグデータ基盤oceanusがいろいろ変わったので構成図をアップデートした。 前回と比べて一番大きいのはGOPUBサーバーの追加。一人でやってるのに大規模な感じになってきたけど、GKEで動かしているのでデプロイや運用は楽ちん。git…
Googleに改造されたJupyterであるCLOUD DATALABが、少しまではDockerイメージで配布されてて、ローカルで使ってたけど、Google Cloud SDKにそのままdatalabというコマンドが追加されて、Compute Engine上で動かすのがデファクトになったっぽい。 ローカルマ…
Google Container Engineで運用しているアプリケーションをそろそろ東京リージョンに移そうと思った。これまで、 kubectl get service -o yaml kubectl get deployment -o yaml で出力されるyamlは手作業で必要な項目消したり、書き換えていたりしてから、ku…
Google CONTAINER ENGINE(以下GKE)ではreplicasの値で簡単にPODを増やせる。 https://cloud.google.com/container-engine/cloud.google.com でも、なぜかStatusがPendingのままのPODが出るときがある。※kcはkubectlのエイリアス % kc get po NAME READY STAT…
以前の記事からGo言語でサーバーアプリを自分で書き始めて、エラーハンドリングが必要になった。 エラーについては下記記事が参考になった。 qiita.com この記事のように自分で作ったエラーならいいんだけど、大抵は外部のライブラリのエラーではまる。Cloud…
よく忘れるのでメモ。ググって出てくるページだと gcloud auth application-default loginしろとか、コマンドが出てくるけどDockerだといろいろ面倒なので、鍵ファイルを用いた認証がしたい。 GCPのコンソールから「IAMと管理」→「サービスアカウントを作成…
以前から本を買ったり気になっていたGo言語だけど、書き慣れてないし変更が多いと大変なので、使い所がなくPythonで全部済ましてしまっていた。 でも以前、Google Cloud PUB/SUBを使おうとした時、通信がHTTPSなのでレスポンスが遅く、WEBアプリ側から直接は…
弊社ではG Suiteを使っているので、Googleがslackっぽいの出してくれればと思ってましたが、やってくれるようです。 www.itmedia.co.jp slackは今も使ってますが、たくさんメッセージを使うのには有料プランが必要なので、月額がかかってしまいます。G Suite…
Google Container Engineでのデプロイは、今までは kubectl edit deploy {name}でエディタを開き、手でimageの値を書き換えていたけど、面倒になったので自動化を考えた。マスターのバージョンは1.4.8。editではなくpatchというコマンドがあった。kubectl pa…
GKEを使っていて、利用料金を見ていたら、作った覚えのないロードバランサーの金額が入っていた。 Compute Engine Network Load Balancing: Forwarding Rule Minimum Service Charge in Japan: 672 時間 [Currency conversion: USD to JPY using rate 115.1]…
oceanusではPythonで書いたアプリケーションをDockerで動かしています。Dockerを使ったアプリケーションでは、コンテナごとに変わる可能性がある変数は、DockerfileでENVを使って、環境変数にセットして、プログラム側でそれを読み込んで使えます。しかし、P…
自社では基本的にBigQueryにデータをぶちこんでいるので、データ解析や、機械学習にはJupyterのGoogleカスタマイズ版であるDatalabを使っています。cloud.google.com基本的な使い方はJupyter(IPython)と一緒です。IPythonデータサイエンスクックブック ―対…
以前からGoogleのセミナーなどでは話題に上がっていた、分散RDBがついに公開されました。これまでトランザクションが必要なDBは分散するのが難しく、注文が集中するECや、ゲームなどでは、RDBがボトルネックになっていましたが、もしCloud Spannerが期待通り…
bizoceanで集めたデータを使って何かできないかを考えていたら、少し前に話題になったWord2Vecを使って書式のダウンロード履歴を文章として入力すれば、近いベクトルの書式、つまり関連性の高い書式が出せるのでは?と思い試してみた。おすすめ、レコメンド…
本番環境のWEBアプリケーションで、デバッグ情報を表示させる際、サーバー情報なども全部さらけだすので、最低限IP認証だけ行いたいと思った。IPアドレスの文字列比較なら簡単だけど、できればネットワークアドレス(192.168.0.0/24等)で許可できると便利。…