読者です 読者をやめる 読者になる 読者になる

仕事中の問題と解決メモ。

最近はPythonとGoogle Cloud Platformがメイン。株式会社ビズオーシャンで企画と開発運用、データ活用とか。 http://mstdn.bizocean.co.jp/@uyamazak https://github.com/uyamazak/

Pythonを使ったデータ解析周りのインターン生募集(最寄り東銀座)

2017/2/20追記 定員となってしまったため、受付を終了しました。お話をするだけであれば可能なのでご連絡ください。 2016年4月にできたばかりの会社でインターンとか一人もいないし、制度もないのですが、勝手に募集します。制度は後付。インターンじゃなく…

ローカル環境でX-Frame-Optionsを無効化する

収集したクリックの座標データをヒートマップで表示させるときに、下にiframeで元のページを出しておくと非常に見やすくて便利だけど、まともなサイト場合、X-Frame-Optionsが設定されており、表示できない。 プロキシサーバーを作ってヘッダーの書き換えな…

Kubernetesの読み方

Googleのセミナーなどで聞く限り クーバネティス が一番近いと思ったプログラマのためのDocker教科書 インフラの基礎知識&コードによる環境構築の自動化作者: 阿佐志保,山田祥寛出版社/メーカー: 翔泳社発売日: 2015/11/20メディア: 大型本この商品を含むブ…

GKEでKubernetesのアップグレードを無停止で行う手順

通常のimageの変更であれば、無停止でアップグレード、デプロイができるkubernetesだけどGoogle Container Engine(GKE)で、Kubernetes自体のアップグレードを行うとダウンタイムが発生してしまう。1.4でいろいろと機能が増えたり、Image typeがcontainer-v…

社内向けDocker勉強会 発表用草案(作成中)

Docker+GCP Kubernetesを本番で使い始めてもうすぐ半年となり、いろいろとノウハウも溜まってきたので、社内向けに発表をしようと思う。11月中に予定。まずテキストでまとめてみる。もし興味がある方がいたらbizoceanの東銀座のオフィスで一般公開もできる…

jupyter nbconvertでERROR | Timeout waiting for execute reply回避

Google Cloud Datalabでjupyter nbconvertコマンドを使って日次レポートをメールで送っているけど、内容が増えるにつれ、時間がかかるようになってタイムアウトエラーで異常終了していた。 [NbConvertApp] Converting notebook /content/datalab/Daily/daily…

Google Cloud Datalab(jupyter)で日本語の文字コードエラーを止める

Python3を使うようになってから、全然苦労しなくなった文字コード周りのエラーだけど、DatalabはPython2。日本語使いとしては、いい加減Googleも3系に移行してほしいんだけどしょうがない。英語環境だと困らないんだろうな。 BigQueryから取ってきたデータ内…

CPB100 2016-10-13@Google六本木オフィス

以前CP100Aを受けたけど、BigQueryや機械学習をしばらくメインにやっていきたいので、最近追加されたCPB100を受けてきた。10時〜18時で午前中はCP100Aのビッグデータ周り、主にデータのやり取りに使うストレージをさらっと流す感じ。DatastoreやContainer En…

Active Directory連携をしているLinuxでローカルユーザーのパスワード変更ができなくなったとき

以前構築した、Windows Serverとユーザー認証を連携させたサーバーで、AD連携前にローカルで作ったユーザーのパスワードが変更できなくなった。uyamazak.hatenablog.com 変更しようとすると、ケルベロス認証を使ってないユーザーなのに Current Kerberos pas…

Google Cloud Datalabでよく使う自作スニペット

bizoceanのデータ収集、解析プロジェクトoceanusで、1ヶ月ほど社内データをいじってみて、できてきたスニペットをまとめてみる。普通のサービス開発時と違って雑になりがち。主に文字列の変数にしてformatでSQLにぶち込んで使う。 日付の文字列 昨日今日、何…

Dockerを3ヶ月本番環境で使って感じた今後の可能性

2016年5月ごろからbizoceanのデータ集計、解析プロジェクトにDockerを使いはじめ、本番環境にはGoogke Container Engineを使っている。使ってみて、今後コンテナ技術はどんどん普及していくなと確信した。 利用の有無は、開発スピード、サーバーのコスト、メ…

pandasで表示が省略されるのを防ぐ

Google Cloud Datalab localを使って、日次レポートを作っているけど、長いURLや行数が多いとき省略されてしまい困った。HTML()やdataframeで探しても見当たらなかった。pandasの設定で変えられた。 import pandas as pd #カラム内の文字数。デフォルトは50…

Google Cloud Datalab localで日時レポート配信ではまったこと

以前書いた記事のやり方では、すでに実行済みのnotebookをhtmlにして送ってただけなので日時レポートとしては失敗してた。nbconvertに--executeをつけないといけないらしい。datalabのコンテナにdocker exec **** bash出入り>>|| jupyter nbconvert --to htm…

Google Cloud Datalab localで日時レポート出力

jupyterのGoogleカスタマイズ版であるGoogle cloud Datalabはこれまで、GAE上でしか動かなかったので、安いとはいえ課金にちょっと抵抗があった。 でも最近ではベータ版ではDokcerイメージで配布され、ローカルでも動くようになったので試してみた。ローカル…

GKEとBigQueryを使って月1万円でビッグデータ収集&解析

Google Container Engine(GKE)とBigQueryを使って、低予算でアクセスログをBigQueryに流し込む体制ができてきたので、これからはそれを活用する段階に入る。その前に、月間PV1000万ぐらいのbizocean.jpで、ログ収集にどのくらいお金がかかっているかをまと…

redisで最初の一回だけlpushが失敗した問題の解決方法

redisを使い、複数のlpushを行う時、なぜか最初のlpushが失敗する問題に当たった。 lpushの結果は、1が返ってくるのに、その直後にllenをすると0が返ってくるので、訳が分からずしばらくハマった。原因は、他のところで行っていたbrpopのブロックが残ってい…

Google Container Engine(GEK)でGCPのHTTP(S) load balancingを使うまで

Google Container Engine(以下GKE)で、サービスを作っている途中、Kubernetes(以下Kube)のService "type": "LoadBalancer"(以下LB)でいくつかの問題に当たった。 ・SSL証明書が面倒 KubernetesのLBにはSSL証明書を持たせられない。 そのため、Dockerコ…

Google Container Engineで固定IPを使う

社内の新規サービスを開発するにあたり、これまでインフラの手作業によるごちゃごちゃや、開発環境構築に課題を感じていたので、dockerを使い、さらにはそのまま本番までクラウドでやろうと考えた。 dockerは今回置いておいて、GKEで独自ドメインで公開する…

法人契約でプロバイダに帯域制限を喰らった話

YAMAHAのルーター(RTX1210)、スイッチ(SWX2300-16G)でネットワークを組み、回線にはフレッツの1Gマンション、インターネットプロバイダには安くて、ネット上での評判も問題ないA社を選択。引っ越し前の回線テストでは300Mbpsを叩き出し、これは良いと思…

Google Driveでフォルダ内のファイルが更新されたらメール通知を送るGoogle Apps Script

Google Drive(以下GD)でファイルを作ったり、更新したときに、メールでいちいち通知するのが面倒といわれ作った。初めてGoogle Apps Scriptを使ったけど、javascriptライクで、GoogleのAPIを簡単に使えて、サーバー代、メンテナンスもかからないのはかなり…

LAN DISK(NAS)をUbuntu16.04でマウント

引っ越し時に安い個人用NASを使った。 www.iodata.jp RAIDがない1ディスクで不安なので、バックアップのため社内のUbuntuサーバーにファイルをコピーする 設定情報 ・NASのIP LANをつなげてpingが通るか確認。総当たりでもいいけどルーターから見た方が早そ…

Ubuntu16.04のサーバーを、会社のActive Directoryに参加させて、アカウント、ファイル共有を行う

新会社の設立に際し、新たにActive Directory(以下AD)を使い、Windowsのユーザー管理をすることになった。資産管理、情報統制の意味で必要だったけど、せっかくだからLinuxのサーバーも参加させたいし、ユーザー、ファイルなども共有したい。 作業メモとし…