Instantly share code, notes, and snippets.

View demo_script.sh
# please setup your kubernetes cluster and kubectl with admin permission (for deploying crd and operator)
# confirm ks version (0.11.0 or later)
$ ks version
# create kss app directory
$ ks init kflowmeetup
$ cd kflowmeetup
# add kubeflow ksonnet registry
$ ks registry add kubeflow github.com/kubeflow/kubeflow/tree/master/kubeflow
View kube-scheduler-configuration.yaml
# This config scheme is based on Kubernetes v.1.11.1
# ref: https://github.com/kubernetes/kubernetes/blob/v1.11.1/pkg/apis/componentconfig/v1alpha1/types.go#L75-L112
# NOTE: You can dump default config yaml by this command:
# $ docker run -v $(pwd):/host gcr.io/google_containers/hyperkube-amd64:v1.11.1 kube-scheduler --write-config-to /host/config.yaml
# TypeMeta
apiVersion: componentconfig/v1alpha1
kind: KubeSchedulerConfiguration
# SchedulerName is name of the scheduler, used to select which pods
View gist:35ec86a9a67ada8c889d3d76a8180033
$ scala
Welcome to Scala 2.12.4 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_152).
Type in expressions for evaluation. Or try :help.
scala> trait Foo {}
defined trait Foo
# actually I wanted to write like this. But it doesn't compile
# trait Bar {
# self: { val someInt: Int } with Foo =>
View keybase.md

Keybase proof

I hereby claim:

  • I am everpeace on github.
  • I am everpeace (https://keybase.io/everpeace) on keybase.
  • I have a public key ASAZY_STqf0Okff7CYzVSc9aRUuyXKv_asok9FZBwBlIbQo

To claim this, I am signing this object:

View docker-compose.yml
# WARNING: This docker-compose.yml is only for testing purpose.
# Parameters:
# - name: CONFLUENT_PLATFORM_VERSION
# default: 3.0.0
# reference: https://hub.docker.com/u/confluentinc/
# Ports:
# - description: Major ports are exposed to host computer
# - zookeeper: 2181
# kafka1: 9091
# kafka2: 9092
View pod.yaml
kind: Pod
apiVersion: v1
metadata:
name: gpu-pod
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
View Why People Want Microservices.md

マイクロサービス化が進む背景について考えてみた

最近マイクロサービスって流行ってますよね。バズってると言ってもいいくらい。

個人的には、「マイクロサービスって結局何なの?」とか、「SOAと何が違うわけ?」とかいう議論は苦手です。

でも「なんでみんなマイクロサービスで作りたいのか?なんでマイクロサービスで作られるサービスが多いのか?」にはすごく興味があるんです。

僕は今、シリコンバレーにある日系SIerの小さな子会社で駐在員をやっていますが、このエリアに居ると、とにかく最近、

「サービス全体が、独立した小さなサービスの集合で構成されるようになってきている」

View Macros.scala
import reflect.macros.Context
object Macros{
// on(i){ ... }とやるとblockの中にiをimplicitとして注入するマクロ
def on[I, V](i:I)(block:V)= macro impl_on[I,V]
def impl_on[I, V](c:Context)(i:c.Expr[I])(block:c.Expr[V]):c.Expr[V] = {
import c.universe._
// type of block is
View sample.scala
import scala.language.higherKinds
// 代数の型クラスの階層があって
trait Algebra[E]{ def op(e1:E,e2:E):E }
trait SubAlgebra[E] extends Algebra[E]
// ある代数の型クラスのオブジェクトがあって
object ConcreteAlgebra extends SubAlgebra[Int]{
def op(e1:Int, e2:Int) = e1+e2
}
View show branch descriptions in "git branch"
git branch | sed 's/^ /_/' | awk '{desc=""; "git config branch."$2".description"|getline desc ; print $1" "$2" "desc}'|sed 's/^_/ /g'