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
JKD18.12-2T2_Pharosでk8s環境を楽して割り切って作る / JKD1812_...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
w4yh
December 05, 2018
Technology
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JKD18.12-2T2_Pharosでk8s環境を楽して割り切って作る / JKD1812_2T2_Pharos
w4yh
December 05, 2018
More Decks by w4yh
See All by w4yh
中(小)規模事業者のNTP運用担当としての悩みと成功体験 / 20230407 NTP Meeting LT2
w4yh
0
360
20200319-ssmjp_ResilienceEngineering
w4yh
5
1.3k
StackStormによるCloudSlang対応とはなにだったのか
w4yh
0
650
20160913-IrecommendStackStormtoyou-w4yh
w4yh
3
3.1k
StackStorm
w4yh
1
540
StackStorm-qpstudy201604
w4yh
0
160
ChangeManagement
w4yh
0
170
Zohoを褒めたり叱ったり.pdf
w4yh
0
110
Other Decks in Technology
See All in Technology
コードレビューを制するチームがソフトウェアデリバリーのフローを制す / Beyond Code Review: Distributing Its Responsibilities Across the SDLC
mtx2s
4
1.3k
Agentic ERPをどう設計するか ー 受発注エージェントを動かす、現場の知見と設計思想ー
recerqainc
1
1.9k
Agentic Defenseとともにセキュリティエンジニアが輝き続けるには / How Security Engineers Can Keep Excelling with Agentic Defense
yuj1osm
0
130
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development with AI-DLC
yoshidashingo
0
150
Databricks における 生成AIガバナンスの実践
taka_aki
1
350
新アーキテクチャ「TiDB X」解説とDedicated比較 TiDB Cloud Premiumのゲーム運用活用を検証
staffrecruiter
0
120
Ruby::Boxでできること、Refinementsでできること
joker1007
3
400
個人最適 から 全体最適 へ AI情報共有会・AIギルド・AI-DLC で進める カンリーの組織展開
rfdnxbro
0
1.9k
Socrates × Looker 〜セマンティックレイヤーで進化するデータ分析エージェント〜
hanon52_
1
450
非定型業務をAI slackbotで自動化する ~ 社内要望を自動壁打ちするbotを作った ~/automating-ad-hoc-work-with-ai-slackbot
shibayu36
0
210
Amazon Bedrock AgentCore ワークショップ JAWS UG TOHOKU / amazon-bedrock-agentcore-workshop-jawsug-tohoku-2026
gawa
9
430
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
0
370
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
225
10k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
410
The Pragmatic Product Professional
lauravandoore
37
7.3k
Building Adaptive Systems
keathley
44
3k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
960
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
200
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
550
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
160
Docker and Python
trallard
47
3.9k
Transcript
Pharosでk8s環境を楽して割り切って作る @w4yh JAPAN CONTAINER DAYS 2T2 / 2018-12-05 #containerdaysjp #TerraceRoom
▸@w4yh ▸データセンターで運用基盤のお守りを担当 ▸今日の内容は業務production環境ではない ▸自分用の検証環境のリニューアルで用いた際のお話 ▸Rancher 1.x、Kontena Classic、Kontena Pharosは経験したが 生Kubernetesはほぼ経験無し ▸KontenaやAnchoreの中の人でも代理店でもコミッターでもなく
ただのファン/ユーザー 自己紹介 #containerdaysjp #TerraceRoom
CFP申込時のタイトル 「ちょっとセキュアなk8s環境をPharos+Anchoreで楽して作る」 今日のタイトル 「Pharosでk8s環境を楽して割り切って作る」 ▸時間の都合で今日はAnchoreは省略 ▸コンテナ用脆弱性スキャンは各種プラットフォームやツールに 標準で組み込まれるようになり選択肢も増えた ▸Anchore公式ブログにCircleCIで使う方法の投稿 ▸おことわり:発表中Kontenaはケイオンテナと読んで一般名詞コ ンテナと区別
CFP #containerdaysjp #TerraceRoom
最初に結論 「Pharosでk8s環境を楽して割り切って作る」 ▸Kubernetes ディストリビューションであるPharosを用いることで Kubernetes自体とAddonのライフサイクルをPharosのリリースと して一括で管理できる ▸Built-in Addon (バンドル) の範囲で使えばAddonも動作確認済みの
ものを使うことになるのではまる危険性を減らせる ▸付属ツールを活用することでさらに楽ができる #containerdaysjp #TerraceRoom
▸自分用の開発検証環境を元々はKontena Classic + Open vStorageで 組んでいた ▸Kontena Pharosのリリースとそれに伴うKontena Classicの開発方 針変更
背景と課題 ▸自分用なので手間はかけずに移行したい ▸ストレージのデータも移行する #containerdaysjp #TerraceRoom
Kontena Inc.の社名 & 最初のプロダクト名 ▸独自のコンテナオーケストレーションツールKontena Classicを提供 ▸創業メンバーが日本好きで社名はローマ字表記に由来 ▸2015-04当時のウリは「Application Containers for
Masses」 (後に「The Developer Friendly Container & Microservices Platform」 ▸2016-11 バージョン1.0リリース (最新は1.5.4。APL2) ▸随所に「楽したい」「大げさでなくていい」という姿勢が感じられるの が良い(発表者の主観) Kontena #containerdaysjp #TerraceRoom
Kontena Classic ▸Kontena Inc. 独自のコンテナオーケストレーションツール 特長 ▸シンプルで簡単かつ十分な機能 ▸LBが標準機能にあり簡単にL4 LBが 構成できる。Let’s
Encrypt連携も込み ▸Stackというdocker-composeの仕組みを 利用したパッケージング #containerdaysjp #TerraceRoom 2017/10/17の私のツイート
Kontena Classic の現状 ▸Ver 1.5.4で「欲しい機能は揃った」として新機能追加はしない方針 公式サイトの[Legacy]はその旨 (screenshot from kontena.io) ▸バグ修正などは継続
▸「誰かレビューしてくれれば1.6はリリースできるんだけどなあ」とい う発言もSlackで ▸Kontena ClassicのMaster ServerをSaaS提供するKontena Cloudは年内無料 開放中(年末サービス終了/新規受け付け終了) #containerdaysjp #TerraceRoom
▸2017-09 Mesos DC/OSがk8s対応を発表 ▸2017-09 Rancher 2.0が ▸2017-10 Dockerが ▸2018-04 Kontena
Pharosを発表「The Simple, solid, certified kubernetes distribution that just works.」 ▸2018-05 Pharos 1.0リリース ▸2018-11 Pharos 2.0リリース (最新は2.0.4。Kubernetes 1.11.5対応 APL2 / フリーミアム) Kontena Pharosの登場 https://www.kontena.io/pharos/ #containerdaysjp #TerraceRoom
Kontena Pharosのメリット -公式 ▸インストール、メンテナンスが簡単 ▸最新のKubernetesに追従 ▸デフォルト設定はセキュリティ固めにしてNIST SP800-190に準拠 ▸Built-in Addon、もちろん他のaddonも利用可能 ▸オンプレでもIaaS上でもサポート
▸containerd, cri-o に対応 #containerdaysjp #TerraceRoom NIST SP800-190 “Application Container Security Guide” https://nvlpubs.nist.gov/nistpubs/specialpublications/nist.sp.800-190.pdf
Kontena Pharosのメリット -Addon ▸Built-in AddonとしてPharosで動作確認されたKubernetes Addonがあり、 一通りの機能をcluster.ymlから揃えることができる ▸Pharos 1.xでは以下のAddon Pharos
Host Upgrades Cert Manager Ingress NGINX Kubernetes Dashboard OpenEBS #containerdaysjp #TerraceRoom
Pharos Host Upgrades ▸ホストのkernelをアップデートしてリブートしたい時などに使う ▸開始時刻 (+メンテナンスウインドウ時間)を指定 ▸yum-cron/apt dailyに介在してクラスタ内でリブートを1台ずつ適用 ▸Drain/evict –
reboot – pod起動/uncordon を処理してくれる host-upgrades: enabled: true schedule: "0 6 * * *" schedule_window: 1h reboot: true #containerdaysjp #TerraceRoom
▸必要な物 Kontena Account https://account.kontena.io/signup 作業環境 と インストールするマシン パスワード無しでsshログイン + パスワード無しでsudo
Kontena Pharosの導入 #containerdaysjp #TerraceRoom
▸chpharos (chrubyのような複数バージョン管理ツール) $ curl –s https://get.pharos.sh | bash ▸pharos cliの導入
$ chpharos login (Kontenaアカウントでログイン) $ chpharos install latest $ chpharos use 2.0.2+oss ▸cluster.ymlを作成 ▸ $ pharos up -c cluster.yml Kontena Pharosの導入 #containerdaysjp #TerraceRoom
▸pharos cliでインストールと同様にできる $ chpharos login (Kontenaアカウントでログイン) $ chpharos install 2.0.3
$ pharos up -c cluster.yml Kontena Pharosのcluster update #containerdaysjp #TerraceRoom
Kontena Pharosのメリット(をKontena Classicとの対比で) ▸シンプルで簡単 Built-in Addon相当で一通りの機能が揃う host-upgrade最高 ▸LB ingress-nginxがbuilt-in addon
Service Meshとかの対応欲しい… ▸Stack Helm? ただし mortar が出た #containerdaysjp #TerraceRoom
mortar (臼砲, 迫撃砲 {しっくい}) ▸kubectl apply --prune –f {dir} 相当のツール
▸Pharosとは独立して利用可能 ▸ディレクトリ内のマニフェストを一つの shot として管理 ▸Kustomize チックな overlay (とtemplate)が使える ▸$ mortar fire <dir> <shot-name> ▸$ mortar list ▸CIで何度も実行したりyankしたりする する時に便利 https://github.com/kontena/mortar #containerdaysjp #TerraceRoom
ここまでは、平和だった Pharos 1.x のお話 以下 Pharos 2.x について #containerdaysjp #TerraceRoom
Kontena Pharos 2.0 ▸ライセンスの範囲が変更 Pharos 1.x はサポートなどが有償でソフトウェアはAPL 2.0 Pharos 2.xでは一部のBuilt-in
Addonも有償に ▸ただし、evaluationでの利用の範囲においてはAddonもすべて無償利用 可 #containerdaysjp #TerraceRoom
Kontena Pharosのメリット -Addon ▸Pharos 2.xのBuilt-in Addonは以下 Cert Manager Pharos Host
Upgrades Helm Ingress NGINX Kontena Lens (OSS版には無い。Kubernetes Dashboardから変更) Kontena Storage (OSS版には無い。Rook+Cephベース) Kontena Backup (OSS版には無い。Heptio Arkベース) GUIが有償に OpenEBSはdeprecatedに #containerdaysjp #TerraceRoom
Kontena Lens ▸管理GUI。モニタリングの他RBACの管理も行える ▸Kontena Cloudを彷彿と… Kontena Cloud後継のGUIを作るという発言も #containerdaysjp #TerraceRoom https://www.kontena.io/
▸Kontena Classicの環境からKontena Pharos (ver 1.5)に稼働環境を移 行して問題無く稼働できている ▸手間はかけずに移行したい →容易に環境を構築できた。運用も捗る ▸ディストリビューションを使うのでBuilt-In Addonを活用して
3rd-partyは用いないと割り切れば管理も運用も楽ができそう ▸Pharos 2.xの(ライセンス)変更にはこれから対応 まとめ/結果 #containerdaysjp #TerraceRoom
Kontenaの参考情報 ▸公式サイト https://kontena.io/ ▸Pharos https://pharos.sh/ https://github.com/kontena/pharos-cluster ▸mortar https://github.com/kontena/mortar Appendix.1
Anchoreの参考情報 ▸ 公式サイト https://anchore.com/ ▸ Bitnamiでの利用例 https://engineering.bitnami.com/articles/how-bitnami-continuously- scans-container-images-to-fix-cve-reported-security-issues.html ▸ CircleCIに組み込む方法
https://anchore.com/blog/integrating-anchore-scanning-with-circleci/ Appendix.2
Kontenaと日本 ▸ ソースを見失ったが、社名はcontainerの日本語から来ているとweb上 での言及あり ▸ かつてはmeetup.comにKontena Tokyoグループがあった (GlobalなYouTube Webinar1件が登録されただけで本家グループに統合) ▸
Kontena Classic cliには $ kontena container という混乱させられるサブコマンドがある Appendix.3
Kontena Community ▸公式Blog、Slack、Githubが主なチャネル ▸Slack登録はこちらから https://slack.kontena.io/ ▸実質generalチャネルのみ / 最近Lensチャネルができた ▸その分(?)スレッド利用は活発でreplyが3桁になることもざら ▸GitHubはマージ後もbranchを残すことが多い
▸結果、Kontena Classicはstale branchが287 ▸Forumもあるが不活発 https://forum.kontena.io/ Appendix.4
Pharos Price List ▸https://www.kontena.io/pharos#pricing ▸ただしevaluationならばPROも無償利用可能 Appendix.5
その他のKubernetes Distributionの例 ▸SuperGiant https://supergiant.io/ ▸Typhoon https://typhoon.psdn.io/ 個人的にはTectonicやOpenShiftは もう少し大きなSolution Suiteな感じ Appendix.6