とんちゃんといっしょ

Cloudに関する技術とか日常とかについて書いたり書かなかったり

GKEでSpinnaker with Kayenta動かせた

GKE上でSpinnaker with Kayentaが動いたのでその部分のメモ。

ドキュメントには動かすための方法が以下のように書かれているけど

hal config canary enable
hal config canary google enable
hal config canary google account add my-google-account \
  --project $PROJECT_ID \
  --json-path $JSON_PATH \
  --bucket $MY_SPINNAKER_BUCKET
hal config canary google edit --gcs-enabled true \
  --stackdriver-enabled true

実施にはComputeの参照権限を求められたので以下のような感じになる。

gcloud projects add-iam-policy-binding $PROJECT_ID \
    --member serviceAccount:$SA_EMAIL \
    --role roles/compute.viewer

hal config canary enable
hal config canary google enable
hal config canary google account add my-google-account \
  --project $PROJECT_ID \
  --json-path $JSON_PATH \
  --bucket $MY_SPINNAKER_BUCKET
hal config canary google edit --gcs-enabled true \
  --stackdriver-enabled true

これでひとまずPipelineにCanary Analysis Configurationが出ることまで確認できた。

トンビと人類が行ってる戦争の最前線に連れて行かれて

あらまし

なぜそうなったのかは未だにわかっていないのだが、今日は嫁に連れられてトンビと人類が行ってる戦争の最前線と言われる鎌倉と、私の中ではラプラスが湧くので夜は閉鎖されたという情報で止まっている江ノ島に行ってきた。

なおどちらも行ったことがないのではじめてである。

鎌倉

どうして人々は鎌倉に修学旅行に来るのであろうか。 その謎を探るべく我々はアマゾンの奥地へと向かった。。。

いや、まぁ、アマゾンの奥地には行ってないんだけど本当に鎌倉はこれでもかっていうほどの修学旅行生がいた。

残念なことにトンビと人類の戦争は見られなかったけど小学生〜高校生ぐらいの修学旅行生に溢れかえってた。

京都の新京極思い出すレベルだったので、きっと鳩サブレのお店は儲かっていると思う。

江ノ島

子供を抱っこひもに入れたまま坂を登ったり階段を登ったりしてしんどかった。

あと野生のリスを見た。

それぐらいの感想しかない・・・

結論

なんの目的もなく連れて行かれるだけだと楽しみがほとんどなかった。

次にどこかによく分からなくても連れて行かれるときは予習したほうがいいなという素朴な感想を持った。

強いて言うなら江ノ島水族館行きたかったなー

CNCFがSandboxに新しいOSSをホストするらしい

昨晩CNCFのブログから以下の2つをホストするというPOSTが流れてきた。

www.cncf.io

www.cncf.io

Telepresenceの方は

Telepresence is an open source tool — licensed under the Apache 2.0 License — that lets developers run a single service locally, while connecting that service to a remote Kubernetes cluster. Teams working on multi-service applications are able to substitute a two-way network proxy for any normal pod running in the cluster, enabling quick local development for Kubernetes microservices.

とあるが、localで開発中のサービスを一時的にK8sクラスタにつなげることにより、本番に近しい複数の(micro)servicesを組み合わせた環境で開発中の(Micro)serviceを動かしてFixができるから開発速度が上がるっていうツールに見える。

CloudEventの方は

CloudEvents, an industry initiative that members of the CNCF Serverless Working Group contribute to, provides a consistent set of metadata to make events easier to work with for publishers, middleware, subscribers, and applications. Its focus on the task of extracting the common metadata about an event allows for infrastructure to process events without the need to know or understand the remaining event data.

とあり、Event DrivenとかServelessにしていくためのEventのメタデータをみんなで決めようぜ!っていう話に見える。 要するにOpenTracingと同じように仕様を決めようというPJなのかな?

Ubuntu 16.04 LTSにHalyardをインストールする方法

以前に試したときはhalyard自体がアレで諦めたけど1年ぐらい経ったのでま試してみる。

公式サイトだと以下でインストールできると書いてある。

$ curl -O https://raw.githubusercontent.com/spinnaker/halyard/master/install/stable/InstallHalyard.sh
$ sudo bash InstallHalyard.sh

が、Ubuntu 16.04では以下のようにうまく行かなかった。

$ sudo bash InstallHalyard.sh
(中略)
done.
Processing triggers for ca-certificates (20170717~16.04.1) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...

done.
done.
Installing Halyard...
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package spinnaker-halyard
~
Install finished with exit code (100)... cleaning up

とりあえず E: Unable to locate package spinnaker-halyardググるSpinnakerのIssueのページが見つかるのでそこを参照すると解決策が書いてあった。

$ curl -O https://raw.githubusercontent.com/spinnaker/halyard/master/install/debian/InstallHalyard.sh
$ sudo bash InstallHalyard.sh

(中略)

update-halyard
~
The halyard daemon isn't running yet... starting it manually.....
1.2.0-20180509113540

これで無事にインストールできたらしい。

というか Spinnakerの公式ページ見に行ったらこっちが書かれてた。 Halyardの公式のREADMEェ・・・

(追記) READMEのFixを出しておいたのでそのうち治るでしょう・・・(マージされなかったら泣こう) github.com

「大企業におけるIT芸人としての生き方」というLTをしてきた

ものすごい久しぶりの更新で誰が見てるのかわからないけど元気に生きてます。

更新しようとは思っていたんだけどなかなか個人としてのアウトプットがなかったのですが、 久しぶりにアウトプットがあったので更新してみた。

先月、弊社にインターンシップの学生さんが来られており、 不定期に金曜日のお昼にやっているTechLunchと言う弊社内の技術者向けの勉強会で、 「大企業におけるIT芸人としての生き方」というLTをしてきました。

私の生き方は多くの人に「参考にならない」と言われてるけど、生きていた証として残しておきます。

mooと打つと”スーパー牛さんパワー!”を返すhubot scriptを作ってみた

なんとなくSlackを眺めていて、ふとチャンネルにいるHubotに"moo"と打ったところ反応がなかった。

f:id:mazinlabs:20150713175823p:plain

ないとなるとなんとなく欲しくなってくる。

f:id:mazinlabs:20150713175834p:plain

というわけで作ってみた。

github.com

以下動作サンプル

hubot-moo-script> hubot-moo-script moo
         (__)
         (oo)
   /------\/
  / |    ||
 *  /\---/\
    ~~   ~~
...."Have you mooed today?"...
hubot-moo-script> hubot-moo-script moo moo
         (__)
         (oo)
   /------\/
  / |    ||
 *  /\---/\
    ~~   ~~
...."Have you mooed today?"...
hubot-moo-script> hubot-moo-script moo moo moo
         (__)
         (oo)
   /------\/
  / |    ||
 *  /\---/\
    ~~   ~~
...."Have you mooed today?"...
hubot-moo-script> hubot-moo-script moomoo
         (__)
         (oo)
   /------\/
  / |    ||
 *  /\---/\
    ~~   ~~
...."Have you mooed today?"...

我ながら、しょうもないもの作った。 なんか追加要望があれば聞きます!

追記(7/14):

  1. 動作をhearからrespondに変えました。
  2. Slackに流すと1行目のスペースが削られるので```でくくりました

「AnsibleとServerspecではじめるInfrastructure as Code」というお話をしてきました

先日社内の勉強会で「AnsibleとServerspecではじめるInfrastructure as Code」というお話をさせていただいたので、その資料を貼っておく。

元々はSlideShareを使っていたのだが、最近になってスライドを見終えると別のスライドに飛ばされるのが嫌になったのでSpeakerDeckに乗り換えようとしているところ。

AnsibleSpecの話とかもしようと思ったけど、自分の知識が古いのとあまりメンテがされてなさそうに見えたので今回は保留。 また機械があったらどこかで勉強しなおしてお話するかも?