2017-12-01から1ヶ月間の記事一覧
会社からクリスマスプレゼントでThinkPad T470sをもらったので翌日出社して受け取ってFedora 27をインストールしてメインマシンのスイッチ。スペックはIntel Core i7-7600U 2.8GHz 4 cores, 16GB mem, NVMe SSD 256GB。 前回の記録はFedora 24インストール。…
OpenShift 全部俺 Advent Calendar 2017 OpenShiftをAWSでセットアップするリファレンスアーキテクチャやCloudFormationやデプロイスクリプトなどはいろいろ用意されていますが、本番構成向けのもったりした構成です。AWS上でのテスト用にシングルノードセッ…
OpenShift 全部俺 Advent Calendar 2017 まだAlpha機能ですが、CPUではなくメモリ利用量でオートスケールを設定することができます。 https://docs.openshift.org/3.11/dev_guide/pod_autoscaling.html#pod-autoscaling-memory 先に重要な点を書いておきます…
OpenShift 全部俺 Advent Calendar 2017 たとえばmaster-config.yamlをカスタマイズしたい場合にどうやって記述すればいいのかなどを調べたい場合があります。 以下に項目がさらっと書かれたドキュメントがあり、さらっと把握するのには役立ちますが、やはり…
OpenShift 全部俺 Advent Calendar 2017 OpenShiftやKubernetesではどのようにディスクが使われ、どのくらいのディスクを必要とするのでしょうか。PVを割り当てて利用する分は自明ですが、それ以外はどのようになっているでしょうか。 コンテナイメージにVol…
OpenShift 全部俺 Advent Calendar 2017 OpenShift上で動作するコンテナにはOpenShift側で採番されたUIDが割り当てられて、そのUIDで動作します。そのため、rootや特定のUIDでファイルにアクセスしたりすることを期待しているコンテナは動作しません。 とは…
OpenShift 全部俺 Advent Calendar 2017 最初はどのように指定したらいいかわかりづらいという質問がよくあるKubernetesのResource requestとlimitです。 https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/ Podにはこ…
OpenShift 全部俺 Advent Calendar 2017 OpenShiftやKubernetesではConfigMapを使ってファイルを差し替えることができます。今日はJBoss EAPのstandalone-openshift.xmlをConfigMapでカスタマイズしたいなー、と思ってやってみたらストレートに行かなかった…
OpenShift 全部俺 Advent Calendar 2017 OpenShiftのocコマンドやKubernetesのkubectlコマンドの--templateオプションにGo templateを指定することによって、結果の値の一部分を抜き出したりすることができるので便利です。 たとえばsvc/docker-registryのCl…
OpenShift 全部俺 Advent Calendar 2017 OpenShiftにはKubernetesに無いImageStreamというオブジェクトがあります。ImageStreamは内部的にタグに対応するDockerレジストリを管理し、それに追加で機能を提供します。ImageStreamは大きく以下の三つの機能を提…
OpenShift 全部俺 Advent Calendar 2017 OpenShiftやKubernetes上でリソース制限を設定したコンテナでJavaを動かすとき、デフォルト設定のままだとパフォーマンスが悪くなったり、oom-killerに殺されたりします。これはコンテナのcgroupsの制限をJavaが考慮…
OpenShift 全部俺 Advent Calendar 2017 OpenShiftにはKubernetesで言うところのIngress, Ingress ControllerであるRouteとRouterが標準で利用できます。Kubernetes 1.0のころにはIngressが無かったので、独自に実装されました。 https://docs.openshift.org…
OpenShift 全部俺 Advent Calendar 2017 今までは普通のデプロイメントを利用していましたが、今回はちょっと特殊な性格を持つStatefulSetを使ってみましょう。StatefulSetのレプリカは連番のsuffixが付与され、スケール時の順序制御があったりvolumeClaimTe…
OpenShift 全部俺 Advent Calendar 2017 昨日は忘年会でした。全部俺 Advent Calendarがすごく大変そう、と言われましたが各エントリ20分程度で書いていますし、そうなるように内容を調整しています。例えば昨日のエントリは17時くらいに同僚に何書いて欲し…
OpenShift 全部俺 Advent Calendar 2017 よくわかりにくいと言われがちなOpenShift / KubernetesのRBACについて書いてみましょう。RBACは元々OpenShiftで実装され、それを元にKubernetes側へ実装された経緯があり、OpenShiftのclusterroleというリソースオブ…
OpenShift 全部俺 Advent Calendar 2017 Google Home買いました。日本語設定でいろいろやってみて、3歳児が「おーけーぐるぐる、てべりをちゅけてください、おねがいします!」と話しかけてるのを一通り楽しんでから英語設定にスイッチして使ってます。これ…
OpenShift 全部俺 Advent Calendar 2017 OpenShiftにはソースコードからビルドするs2iビルド、Dockerfileを利用してビルドするDockerビルドの他にJenkinsを利用したPipelineビルドというのがあります。s2iビルドやDockerビルドはコンテナイメージを生成してp…
OpenShift 全部俺 Advent Calendar 2017 OpenShiftやKubernetesでPVを作って使ってたらPVが一杯になってしまったので大きなサイズのPVへ移行したい、であるとか、HDDのPVを使ってたけどSSDのPVに変えよう、というようなデータ移行のユースケースが発生します…
OpenShift 全部俺 Advent Calendar 2017 昨日はギョウザパーティでした。基本のs2iビルドではソースコードからビルドしましたが、今回はDockerfileを利用します。 ソースコードと同じようにDockerfileが置いてあるGit URLを指定すると同じようにビルドできる…
OpenShift 全部俺 Advent Calendar 2017 商用版のOpenShift Container Platform 3.7をシングルノードでインストールしてみます。 利用する/etc/ansible/hostsファイルの中身はこんな感じです。OpenShift Container Platform 3.6以前ではシングルマスター構成…
OpenShift 全部俺 Advent Calendar 2017 Red Hat OpenShift Application Runtimesがリリースされたのでさわってみたいと思います。Spring BootやVert.x, WildFly Swarmなどを使ってOpenShift上でマイクロサービスアプリケーションの開発をサポートする製品で…
OpenShiftを利用するにあたって、最初に覚えておいたほうが良いいくつかのコマンドがあります。例えばoc get allとoc get eventです。うまくいかないときなどは大抵この2つを参照することになります。 ocコマンドはヘルプが充実しているので、わからないこと…
OpenShift 全部俺 Advent Calendar 2017 前回はocコマンドを利用してCLIで基本のアプリケーションを作成しましたが、GUIのWebコンソールも見ていきましょう。 minishift consoleを実行するとブラウザでWebコンソールのURLが開かれます。 ログインするとカタ…
OpenShift 全部俺 Advent Calendar 2017 minishiftで環境ができたので、アプリケーションをビルドして動作させてみましょう。使うのはソースからコンテナイメージをビルドするs2i (source to image)と呼ばれるビルド方式です。 初期状態ではdeveloperユーザ…
OpenShift 全部俺 Advent Calendar 2017 minishiftのようなツールは魔法のようにセットアップされてうれしい反面、何かあったときにVMの中身がどうなっているのかわからないとやっかいなことがあります。とりあえず解剖します。 VMはふつうにvirshで見えます…
OpenShift 全部俺 Advent Calendar 2017 11/29日US時間にOpenShift Origin 3.7とOpenShift Container Platform 3.7がリリースされたので、minishift v1.9.0を使ってOpenShift Origin v3.7.0をセットアップしたいと思います。 minishiftはシングルノードVMのO…