Help us understand the problem. What is going on with this article?

2019に卒業したCNCF ProjectとMicrosoftの関わり

More than 1 year has passed since last update.

こちらのイベントで登壇してきました。
https://msdevjp.connpass.com/event/154913/
image.png

クリスマスイブはクラウドネイティブ!

https://speakerdeck.com/sasukeh/30fen-dewakarukuraudoneiteibutomaikurosohutofalsequ-rizu-mi?slide=22

イベントで話したこと

クラウドネイティブという言葉やどうやってというのは組織や人によって千差万別なところもあるので、先駆者による事例を参考にしていただくとして、時系列を振り返ったりマイクロソフトのクラウドネイティブって今どんな感じなのよというのを簡単に説明しました。

その中でこちらのようにGraduateしたProjectに関して言及しましたが、特に説明もしないままイベントを終えたのでMicrosoftが絡んでいる部分だけ解説できたらなと思ったのがこの記事のモチベーションです。
image.png

Graduated Project?

そもそもGraduted Projectというのは、Chasmを超えて熟れてきたProjectのことです。
image.png
https://www.cncf.io/projects/ より引用

Spec??

どんな人でもこのProjectに参加し、Spec(仕様)を作るために協力することができ、Microsoft自身もそのSpecの議論に参加しているProjectがあります。いくらOSSだとしても多くのステークホルダーがいる中でこのSpecを作らずにすすめるのは、ガバナンスの観点から非常に難しいといえます。例えば、他のProjectとの整合が取れなくなることや、とあるベンダーに偏ったProjectになり将来性が見えなくなることなどです。

MicrosoftがCNCF blogで言及されていた”卒業”Projectとその説明

Core DNS 2019/01/24 Graduated Announce

https://www.cncf.io/announcement/2019/01/24/coredns-graduation/

Projectの説明

CoreDNS は、クラウドネイティブ展開でサービス検索を提供する、高速で柔軟で最新の DNS サーバーです。
これは、下位互換性があり、拡張可能なKubernetesとの統合を提供するので、最新のKubernetesリリース(1.13)は、
今後のすべての展開のデフォルトDNSとしてCoreDNSを正式に推奨しています。
このサーバーは、AWS Route53 や etcd を使用して、AWS とのハイブリッドクラウド環境での
ネイティブクラウド統合にも使用でき、Google クラウド DNS サポートを間もなく追加する予定です。

とあります。

Microsoftとの関連性

発表時には、Azure DNSのサポートが含まれていなかったのですが、現時点で実はAzrue DNSもAzure DNS pluginにて参照可能になっており、下記のCoreDNSのDocsが参考になります。
https://coredns.io/plugins/azure/

Azure プラグインは、Microsoft Azure DNS からゾーンを提供する場合に便利です。
azure プラグインは、AzureでサポートされているA、AAAA、CNAME、MX、NS、PTR、SOA、SRV、
および TXT レコード・タイプなどのすべてのDNSレコードをサポートします。

Azure DNS
https://coredns.io/plugins/azure/

Containerd 2019/02/28 Graduated Announce

https://www.cncf.io/announcement/2019/02/28/cncf-announces-containerd-graduation/

Projectの説明

2014 年に Docker で生まれたContainerdは、Docker エンジンの下位層ランタイムマネージャーとして
開始されました。2017 年 3 月に CNCF に承認された後、Containerdは、Docker エンジンと OCI Runc
executor間のレイヤーとして最も広範な使用方法と採用を備えた、シンプルさ、堅牢性、移植性に
重点を置いた業界標準のコンテナーランタイムになりました。

Containerdは、そもそもこちらに書いてあるとおり、当時、混沌としそうだったコンテナーランタイムの標準化のリーダーシップをとったプロジェクトでした。

Microsoftとの関連

Microsoftとのかかわりですが、こちらのドキュメントが参考になります。
- Windows 上のコンテナープラットフォームツール
https://docs.microsoft.com/ja-jp/virtualization/windowscontainers/deploy-containers/containerd
image.png

Windowsではruncのフォークとして、runhcsを作り、それによってWindowsでもOCIのSpecに従ったContainerの実行を可能にしています。ただ、Windows Server 2016では、そのrunhcscontainerdはサポートするものの、CRIのサポートをするためには、Windows Server 2019以降が必要です。

Fluentd 2019/04/11 Graduated Announce

https://www.cncf.io/announcement/2019/04/11/cncf-announces-fluentd-graduation/

有名な古橋 貞之氏が作った日本発のオープンソースコレクタです。とても有名なので、ここで特別に説明は必要ないと思います。

Microsoftとの関連

Azure Monitorでは、Azureで取得できたログ以外にJsonやそのほかFluentdプラグインに対応するログをAzure Monitorで統合することができます。
- Azure Monitor での Linux 用 Log Analytics エージェントを使用したカスタム JSON データ ソースの収集
https://docs.microsoft.com/ja-jp/azure/azure-monitor/platform/data-sources-json

例えば、KubernetesのLogもFluent-bitを使うことでAzure Monitor - Log Analyticsに統合できます。

まとめ

調べてみてわかった(当たり前のこと)のですが、クラウドにてManaged Serviceを提供しており、そのサービスがProjectに絡むことがあれば、当然Pluginを作ったりするビジネス的な理由があるわけでして、そういうったところにも積極的に関与していくあたり、Kubernetesの普及に関して本気で取り組んでいるんだろうなという感じでした。個人としては2020年もこのあたり積極的にウォッチしていくつもりですが、他人事ではなく、自分事にするために、機会をいただけるなら、kubernetesを使った多くのお客様のProjectに参画していきたいなと思っています。それと、まだまだContainer化やマイクロサービス化についても、誤解が多くあると思うので、ここはこうするといいよねというアンカンファレンス+BoFみたいなイベントも開催していきたいなと思っています。今年に引き続き来年もクラウド、クラウドネイティブ、コンテナー、アプリケーションモダナイゼーション、DevOpsなどの文脈で引き続き頑張っていこうと思います。

sasukeh
シンプルでかっこいいやつが好き。
microsoft
マイクロソフトのメンバーが最新の技術情報をお届けします。Twitterアカウント(@msdevjp)やYouTubeチャンネル「クラウドデベロッパーちゃんねる」も運用中です。
https://aka.ms/MSFT-Docs-JPN
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away