Kubernetes Upstream Training Japan 2024-03

かれこれ半月ほど経ってしまったのですが。 昨年末にCloud Native Computing Foundationの日本チャプターとしてCloud Native Community Japanが発足しまして、そのサブチャプターとしてKubernetes Upstream Training Japanが立ち上がり、第一回のイベントとしてKubernetes Upstream Training Japn 2024-03 を実施しました。 資料などはGitHubのリポジトリ に上がっているので見ていただくと良いのですが、要するにKubernetes にコントリビュートをしてみたいけど何から始めれば良いのかわからない・・・という人向けに、Kubernetesコミュニティではどのように普段コミュニケーションをとっていて、どういう手順でコントリビュートをすれば良いのか、という解説をしたり、実際にコントリビュート体験をしてもらったりするイベントでした。 なにせKubernetesというのは世界中で使われている大きなソフトウェアで、英語がさらっと読める人は良いのですが、日本人としてはやはり英語が苦手だという人も多いですし、まして技術力が求められ(そうに見え)るところに飛び込んでいくというのはなかなか勇気が要るモノです。そんな人の背中を押して、日本のKubernetesコミュニティをもっと盛り上げていこう、というのがこのイベントの目的であるわけです。 次回開催はいつになるか不明ではありますが、Kubernetes(特にkubernetes/website )にコントリビュートしたい!という人は積極的にサポートしていく所存でありますのでお気軽にご連絡ください。

2024-04-01 · nasa9084

NATSを触ってみた

NATS はCNCF (Cloud Native Computing Foundation)によってホスティングされているメッセージングシステムです。軽量で高パフォーマンスかつスケーラブルなのが特徴だそうです。オランダのSynadia社が中心となって開発を行っていますが、オープンソースソフトウェアなのでGitHub 上で今トリビュートすることもできます。 Go、NodeJS、Ruby、Java、C、C#、Nginx用のクライアントライブラリはSynadiaによってサポートされており、そのほかにもPythonやElixir用のクライアントなどが存在します。 NATSのサーバ自体(gnatsd)はGoで書かれている ため、バイナリ一つで起動できるほか、、公式Dockerコンテナイメージ やKubernetes用のOperator も用意されているため、簡単に構築・運用することができます。 本記事でも、Dockerで起動したサーバを使用しています。 NATSでは3種類のメッセージングモデルを利用することができます。 Publish/Subscribe Request/Reply Queueing 今回はPub/SubとRequest/Replyを試してみます。 サーバを立ち上げる 実験に先駆けて、まずはサーバを立ち上げます。今回はmacOS High Sierra環境のため、docker for macで起動してみます。 1 $ docker run --rm -d --name nats -p 4222:4222 -p 6222:6222 -p 8222:8222 nats:1.4.0-linux nats:1.4.0-linuxは執筆時点(2019-02-06)でnats:latestです。 ここで三つのポートを空けていますが、それぞれ用途は次の通りです。 :4222: client port :6222: route port :8222: http port それぞれの詳細な説明は割愛しますが、本記事ではクライアントからの接続だけを試してみますので、4222番ポートだけの開放でも問題ありません。 Publish/Subscribe まずは標準的なPub/Subモデルから試してみます。NATSのPub/SubはRedisなどと同様、Wikipedia でいうところの「トピックベース」なPub/Subです。NATSではトピックのことをSubjectとよびます。 NATSのSubjectは階層構造をとることができ、.(ドット)で区切って表現します。Subscriberはこの階層構造の一部にワイルドカードとして*(アスタリスク)を使用することができます。また、>を使用して下の階層すべて、を表現することもできます。 例えば、Subscriberがfoo.bar.*を購読している場合、foo.bar.bazやfoo.bar.quxなどのメッセージを受け取ることができますが、foo.bar.baz.quxは受け取ることができません。一方、foo.bar.>を購読している場合、foo.bar.baz.quxも受け取ることができます。 サンプルコードとして、次のようなものを書いてみました。 Publisher 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 package main import ( "log" nats "github....

2019-02-06 · nasa9084