Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
本番環境と開発環境で使える コンテナイメージ運用 / Kubernetes Meetup ...
Search
mahata
June 21, 2016
Technology
2
4.1k
本番環境と開発環境で使える コンテナイメージ運用 / Kubernetes Meetup Tokyo #2
Kubernetes Meetup Tokyo #2
mahata
June 21, 2016
Tweet
Share
More Decks by mahata
See All by mahata
北米のソフトウェア開発
mahata
3
500
Developer Tools
mahata
0
100
Introduction to Docker
mahata
0
58
Other Decks in Technology
See All in Technology
Engineer Career Talk
lycorp_recruit_jp
0
170
Amazon CloudWatch Network Monitor のススメ
yuki_ink
1
210
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
100
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
480
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.4k
プロダクト活用度で見えた真実 ホリゾンタルSaaSでの顧客解像度の高め方
tadaken3
0
100
社内で最大の技術的負債のリファクタリングに取り組んだお話し
kidooonn
1
550
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
390
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
オープンソースAIとは何か? --「オープンソースAIの定義 v1.0」詳細解説
shujisado
9
970
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
720
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
10 Git Anti Patterns You Should be Aware of
lemiorhan
654
59k
Scaling GitHub
holman
458
140k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Thoughts on Productivity
jonyablonski
67
4.3k
Designing for humans not robots
tammielis
250
25k
Building Applications with DynamoDB
mza
90
6.1k
Navigating Team Friction
lara
183
14k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Transcript
本番環境と開発環境で 使えるコンテナイメージ 運用 Kubernetes Meetup Tokyo #2 By 真幡 康徳
自己紹介 • 株式会社Orb - DevOps チームリード • “mahata”@ GitHub /
“Yasu” @ connpass • 最近の主戦場 ◦ Kubernetes (Docker) ◦ AWSサービス群 ◦ オーケストレーションツール群 ▪ Ansible とか...
Kubernetes 本番で使いたい!
Kubernetes 本番運用に立ちはだかる壁 • サービスのコンテナ化 ◦ マイクロサービス化 ◦ コンテナイメージの管理 • (本番環境にあわせた)
開発環境の構築 ◦ ステージング環境も! • データの永続化
Kubernetes 本番運用に立ちはだかる壁 • サービスのコンテナ化 ◦ マイクロサービス化 ◦ コンテナイメージの管理 • (本番環境にあわせた)
開発環境の構築 ◦ ステージング環境も! • データの永続化
コンテナイメージ管理黎明期
素朴な VPC 構成 (AWS) S3 Private Registry VPC Public Private
踏み台 サーバ
素朴な SSH トンネル S3 Private Registry VPC Public Private 踏み台
サーバ docker pull/push
素朴なSSHトンネルの良し悪し • 良し ◦ 環境構築が簡単 • 悪し ◦ Private Registry
のSSHキーさえあれば全て のコンテナにアクセス可能
ところで マイクロサービスって...
Why Microservices Matter (by Heroku) Microservice-based apps are composed of
several small programs, each with a single responsibility. This allows teams of engineers to work relatively independently on different services. 意訳: マイクロサービスでチームごとに責任範囲が 明確になるし, 独立して働けるようになるよね Why Microservices Matter
独立して働けるように なるよね!!
サービス (チーム) ごとに独立したい • 一部のサービス開発をアウトソースしたい • アウトソース先に制約を課したい ◦ 必要なコンテナだけ pull/push
可能に ◦ 素朴な SSH トンネルだと難しそう...
Docker Hub のように認証をしたい • “$ docker login registry.example.com” したい •
ログインユーザ毎にアクセス権を変えたい
Docker Registry v2 の認証モデル cesanta/docker_auth: Authentication server for Docker Registry
2 cesanta/docker_auth
docker_auth の設定ファイル (抜粋) users: "john": password: "SOME_PASSWORD_BCRYPTED" acl: - match:
{account: "john", name: "hey"} # "pull", "push", "*" actions: ["pull"]
まとめ • Kubernetes 楽しい! • マイクロサービス楽しい! • cesanta/docker_auth 便利!