ver1.1 2017/11/18
Let's learn how to use Cloud Datalab deeply.Read less
GCPUG Tokyo DevOps Day, Sep 27, 2017
nazoです。 Elasticsearchを運用する際に、マスタデータはMySQLで持ちたいという場合にどうやって同期をするかというのが問題になります。また、Elasticsearchはバージョンの互換性が厳しく、別バージョンをクラスタに混ぜることは基本的にできず、さらに辞書の更新などを行う場合はインデックスを全て更新しなくてはいけないなどの運用上の課題があります。 今回は社内向けに使っているElasticsearchを、これらの問題を解決しつつどのように運用するかを考えてみましたので、紹介したいと思います。 簡単に MySQLとElasitcsearchの同期は go-mysql-elasticsearch を使います。 無停止のためのデータコピーは elasticsearch-dump を使います。 MySQLとElasitcsearchの同期 go-mysql-elasticsear
昨日紹介した通り、「新しいシェルプログラミングの教科書」という本を執筆しました。 新しいシェルプログラミングの教科書 作者: 三宅英明出版社/メーカー: SBクリエイティブ発売日: 2017/11/21メディア: 単行本この商品を含むブログを見る 名前のとおり、シェルスクリプトの書き方を解説した本です。 その本を書き始めるのにあたって、どのシェルでシェルスクリプトを書くのかを決める必要がありました。 シェルの種類はいくつもありますが、その中でも有力な候補がBourne Shellとbashです。 Bourne Shellは/bin/shとしてインストールされている、伝統的なシェルです。 bashはたいていのLinuxで標準のシェルとして設定されていて、よく使われているシェルです。 どちらもシェルスクリプトを実装するシェルとしてよく使われます。 両方を解説するという手もありましたが、執筆の負
11/10: 追記。CI/CDでの制限について書いてなかった。 Dockerのベストプラクティスに、サービスをnon-rootユーザーで走らせなさい、というのがある。 docs.docker.com そうすること自体は簡単なのだけれども、当然ながらユーザー権限にあわせてコンテナ内のファイル等の権限を設定しなきゃいけない。仮にUSER指定した後にCOPYしてもroot:rootの権限になるので、別途chownをしてやらなければならなかった。 USER app COPY . $APP_DIR # $APP_DIRの権限はroot:root RUN chown -R app:app $APP_DIR RAILSなど関連ファイル数が結構な量になるサービスの場合、すべての権限が変わるまで10min~15minとか余裕でかかってた。このせいで、dockerのベスプラに従ってなかった人は多いと思う。僕も
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く