# たいそうりっぱに<br>なったねえ。<br>DC/OS 1.10
@jyoshise
----
## Agenda
* 改めて。DC/OSとは
* DC/OS 1.10 どうでしょう
* コア機能Update
* Kubernetes
* その他
* これからはじめるには
----
## ここでいきなりデモです
----
### DC/OS 1.10のクラスタにKubernetesをデプロイしてみます
----
#### DC/OS Universe Packageの仕組み
<img src="https://i.imgur.com/h1B6wqo.png" height="300"><img src="https://i.imgur.com/Jem6sAQ.png">
ようするにmarathon.jsonのテンプレートとそこに埋めるパラメーター。
----
## 改めて<br>DC/OSとは
----
- Mesosphere社が開発/メンテナンスを行っているOSS
- web: https://dcos.io
- ソースコード: https://github.com/dcos
- ドキュメント: https://dcos.io/docs
- Apache Mesosをコアとして、各種フレームワークを容易に展開できるようにしたディストリビューション
----
- エンタープライズ版もあり
- コミュニティ版 + 一部プロプラな機能追加 + サブスクリプションサポート
- web: https://mesosphere.com/product/
- ドキュメント:https://docs.mesosphere.com/
- コミュニティ版とエンタープライズ版の差異: https://mesosphere.com/pricing/
- マルチテナンシーやセキュリティなど、エンタープライズのプロダクション環境に必要な機能が追加されてます
----
![](https://i.imgur.com/ZURPOaO.png)
----
## DC/OS 1.10どうでしょう
----
| バージョン<br> (最新マイナーバージョン) | 1.8 (1.8.9) | 1.9 (1.9.5) | 1.10 (1.10.0) |
| ---------- | --------------| --------------- | ------------ |
| リリース時期 | Jul 31, 2016<br>(Jun 17, 2017) | Mar 29, 2017<br>(Sep 28, 2017) | Sep 7, 2017 |
| Mesos | 1.0 | 1.2 | 1.4 |
| Marathon | 1.3 | 1.4 | 1.5 |
----
### DC/OS 1.10 Update
----
#### Networking
- Spartan(DC/OSクラスタ内のDNSサービス)が上位ドメインを継承できるようになった(*.hogehoge.co.jpとか)
----
- CNI対応(※Preview扱い)
```{
"name": "dcos",
"type": "bridge",
"bridge": "m-dcos",
"isGateway": true,
"ipMasq": false,
"mtu": 1420,
"ipam": {
"type": "host-local",
"subnet": "9.0.1.0/25",
"routes": [
{
"dst": "0.0.0.0/0"
}
]
}
}
```
----
#### Platform
- Node/ClusterのHealth Checkが柔軟にできるようになった
https://dcos.io/docs/1.10/installing/custom/node-cluster-health-check/
---
#### UI
- GUI:大きな変更なし
- CLI:マルチクラスタ対応など
----
#### Container Runtimeの選択肢
- Universal Container Runtime (UCR)
- Mesos Containerizerを拡張し、Docker Imageに対応したもの(今後AppC,OCIにも対応するかも)。基本的にはこちらが推奨。
- Docker Engine
- Docker独自のオプションを使う必要がある場合はこちら。
- 詳しくは https://dcos.io/docs/1.10/deploying-services/containerizers/#container-runtime-features
----
##### Container Orchestratorの選択肢
<img src="https://i.imgur.com/QYylB6m.png" height="100" border="0">
- Marathon
<img src="https://i.imgur.com/cRBkJCf.png" height="100" border="0">
- Kubernetes
- 現時点でbeta扱い。
----
##### Why (改めて) Kubernetes?
![](https://i.imgur.com/K7aERrc.png)
----
大人の事情(長いものには巻かれろ的な)?
![](https://i.imgur.com/0qbNW6V.png)
----
##### Kubernetesを(他のインフラではなく)DC/OSの上で動かすメリット
- デプロイ簡単
- DC/OS上のデータサービスとの接続
- DC/OS上の他のワークロードとの共通リソース管理
----
##### (Marathonだけではなく)KubernetesをDC/OSの上で動かすメリット
- Kubernetes前提で開発したサービスがそのまま動く
- Kubernetes自体はアップストリームのreleaseそのもの(現時点ではv1.7.7)
- Why not?
----
##### 現状(beta)でできていなくて今後実装予定
- APIへの認証
- K8sの無停止アップグレード
- Dynamic external ingress
- Kubeletの動的な追加/削除
- などなど
----
#### その他Universeから展開できるPackageとか
https://universe.dcos.io/#/packages
----
##### 鉄板データサービス(M7)
- Spark
- Kafka
- Confluent Kafka
- Cassandra
- Datastax DSE MAX
- Elastic
- HDFS
→Mesosphere社がPackageのメンテナンス/テストを行い、Production Readyと謳っている。
----
##### 個人的注目パッケージ
![](https://i.imgur.com/HhTxVGU.png)
![](https://i.imgur.com/rRlszry.png)
![](https://i.imgur.com/lciwcU4.png)
----
時間があればなんかデモ
----
### これから始めるには
- DC/OSそのものはVagrant(VM1台から)で試せます。
- どうせやるならいろんなフレームワーク(Universe Package)を動かしたいので、その場合は5ノードぐらいは欲しいです。パブリックIaaS上にも問題なくデプロイできます。
- 海外ではDC/OSのコミュニティはMesos自体のコミュニティ以上に活発なので、気軽に参加してみましょう。
----
#### DC/OSの上で各種サービスを動かすexample集
https://github.com/dcos/examples
現状大半が1.9前提になっていますが、1.10対応をコミュニティで進めています。
https://mesosphere.com/blog/sticker-service-example-updates/
----
### まとめ
- 全体的にCNCFへの歩み寄りによりエコシステムを充実させていく方向
- 純粋なコンテナオーケストレーションだけでなく、多様なワークロードにリソースを提供できることがバリュー
- ひとつ触れる環境があると、新しいものいろいろ気軽に試せて便利ですよ
{"metaMigratedAt":"2023-06-14T14:43:21.018Z","metaMigratedFrom":"YAML","title":"たいそうりっぱになったねえ。dc/os 1.10","breaks":true,"slideOptions":"{\"transition\":\"fade\",\"theme\":\"black\"}","contributors":"[]"}