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
ExternalDNS を試してみた / Tried ExternalDNS
Search
ののし
December 08, 2020
Technology
2
930
ExternalDNS を試してみた / Tried ExternalDNS
ののし
December 08, 2020
Tweet
Share
More Decks by ののし
See All by ののし
2025 年版 HashiCorp Vault 入門 / Introduction to HashiCorp Vault - 2025 Edition
nnstt1
1
110
シークレット管理だけじゃない!HashiCorp Vault でデータ暗号化をしよう / Beyond Secret Management! Let's Encrypt Data with HashiCorp Vault
nnstt1
3
500
Azure Developer CLI と Azure Deployment Environment / Azure Developer CLI and Azure Deployment Environment
nnstt1
1
570
Terraform にコントリビュートしていたら Azure のコストをやらかした話 / How I Messed Up Azure Costs While Contributing to Terraform
nnstt1
1
840
進化するクラウド管理 -Azure と Terraform の最新トレンド- / Evolving Cloud Management - Latest Trends in Azure and Terraform
nnstt1
0
84
今から、 今だからこそ始める Terraform で Azure 管理 / Managing Azure with Terraform: The Perfect Time to Start
nnstt1
0
490
HCP Vault Secrets でシークレット管理を始めよう / Getting Started with Secret Management Using HCP Vault Secrets
nnstt1
0
260
HashiCorp Ambassador が予想!Red Hat × HashiCorp の未来 / The Future of Red Hat and HashiCorp
nnstt1
1
230
Terraform を使った Front Door の小ネタ / Terraform for Front Door
nnstt1
0
230
Other Decks in Technology
See All in Technology
Phase08_クイックウィン実装
overflowinc
0
1.6k
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
qa
0
200
スピンアウト講座02_ファイル管理
overflowinc
0
1.2k
脳が溶けた話 / Melted Brain
keisuke69
1
880
「お金で解決」が全てではない!大規模WebアプリのCI高速化 #phperkaigi
stefafafan
5
2.2k
1GB RAMのラズピッピで何ができるのか試してみよう / 20260319-rpijam-1gb-rpi-whats-possible
akkiesoft
0
860
スケールアップ企業でQA組織が機能し続けるための組織設計と仕組み〜ボトムアップとトップダウンを両輪としたアプローチ〜
qa
0
190
スピンアウト講座05_実践活用事例
overflowinc
0
1.1k
中央集権型を脱却した話 分散型をやめて、連邦型にたどり着くまで
sansantech
PRO
1
320
スピンアウト講座03_CLAUDE-MDとSKILL-MD
overflowinc
0
1.1k
20年以上続く PHP 大規模プロダクトを Kubernetes へ ── クラウド基盤刷新プロジェクトの4年間
oogfranz
PRO
0
170
大規模ECサイトのあるバッチのパフォーマンスを改善するために僕たちのチームがしてきたこと
panda_program
1
380
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Navigating Team Friction
lara
192
16k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
300
Being A Developer After 40
akosma
91
590k
Leo the Paperboy
mayatellez
4
1.5k
Ruling the World: When Life Gets Gamed
codingconduct
0
180
The Mindset for Success: Future Career Progression
greggifford
PRO
0
290
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
150
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
200
Building Applications with DynamoDB
mza
96
7k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
650
My Coaching Mixtape
mlcsv
0
84
Transcript
ExternalDNS を試してみた December 8, 2020 @nnstt1 Kubernetes Novice Tokyo #7
自己紹介 ◼Name ののし @nnstt1 ◼Job インフラエンジニア ◼Fav Ansible Azure Kubernetes
登壇きっかけ
背景
自宅 k8s クラスタでの悩み Service type: LoadBalancer デプロイ ブラウザで IP アドレスにアクセス
MetalLB で IP アドレス払い出し Grafana とか ArgoCD とか使いたい!
自宅 k8s クラスタでの悩み Service type: LoadBalancer デプロイ ブラウザで IP アドレスにアクセス
MetalLB で IP アドレス払い出し Grafana とか ArgoCD とか使いたい! IP アドレスでアクセスしたくない! 手動で DNS レコード登録したくない!
None
ExternalDNS とは ◼Ingress や Service を DNS プロバイダと同期 ◼DNS プロバイダに依存しない
DNS レコードの動的管理
対応している DNS プロバイダ Stable Google Cloud DNS, AWS Route 53
Beta AWS Cloud Map, Azure DNS, CloudFlare Alpha DigitalOcean, CoreDNS, …計 22 個 v0.7 時点
デプロイ方法 ◼DNS プロバイダ毎に設定 ◼公式リポジトリにチュートリアルあります
登録するホスト名 Ingress spec.rules.host に基づいて設定 Service ExternalDNS 用アノテーションを付与
+ CoreDNS
ExternalDNS マニフェスト
システム構成図
システム構成図 IP アドレス払い出し
システム構成図 ホスト名とIPアドレス参照
システム構成図 DNS レコード自動登録
システム構成図 DNS 参照
システム構成図 FQDN でアクセス
結果が分かりにくいので
+ Azure DNS
システム構成図 Azure Load Balancer Azure DNS
事前準備 DNS ゾーン ExternalDNS でレコード登録する対象 Secret DNS ゾーンを操作するサービスプリンシパルの情報 kubectl create
secret generic azure-config-file --from-file azure.json
ExternalDNS マニフェスト
Azure DNS TXT レコードも作成 されている
TXT レコード ◼ ExternalDNS は TXT レコードで管理対象のレコードか判断
まとめ
まとめ ExternalDNS で DNS 動的管理 自宅 k8s クラスタで簡単にサービスへアクセスできるように 多くの DNS
プロバイダに対応 Stable, Beta のプロバイダは少ない コントリビュートするチャンスかも? 某金魚さんブログにて awx コマンドでの同期を紹介