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
810
ExternalDNS を試してみた / Tried ExternalDNS
ののし
December 08, 2020
Tweet
Share
More Decks by ののし
See All by ののし
HCP Vault Secrets でシークレット管理を始めよう / Getting Started with Secret Management Using HCP Vault Secrets
nnstt1
0
41
HashiCorp Ambassador が予想!Red Hat × HashiCorp の未来 / The Future of Red Hat and HashiCorp
nnstt1
1
120
Terraform を使った Front Door の小ネタ / Terraform for Front Door
nnstt1
0
76
つまずきから学ぶ Backstage の Golden Path 構築
nnstt1
2
910
Azure ユーザに捧げる Terraform Cloud 101 / Terraform Cloud 101 for Azure Users
nnstt1
0
460
AKS と HCP Vault の組み合わせでつまずいた話 / Stumbles with AKS and HCP Vault combination
nnstt1
1
96
Vault Secrets Operator と HCP Vault を使った AKS のシークレット管理 / AKS secret management using the Vault Secrets Operator and HCP Vault
nnstt1
0
110
Vault Secrets Operator と Dynamic Secrets で安全にシークレットを使おう / Vault Secrets Operator and Dynamic Secrets
nnstt1
4
780
OpenShift を身近に感じる Single Node OpenShift と OpenShift Local / Single Node OpenShift and OpenShift Local that makes OpenShift familiar
nnstt1
1
980
Other Decks in Technology
See All in Technology
いざ、BSC討伐の旅
nikinusu
2
780
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
380
The Rise of LLMOps
asei
5
1.2k
Amazon CloudWatch Network Monitor のススメ
yuki_ink
1
200
Why does continuous profiling matter to developers? #appdevelopercon
salaboy
0
180
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
複雑なState管理からの脱却
sansantech
PRO
1
130
ノーコードデータ分析ツールで体験する時系列データ分析超入門
negi111111
0
410
インフラとバックエンドとフロントエンドをくまなく調べて遅いアプリを早くした件
tubone24
1
430
Amazon Personalizeのレコメンドシステム構築、実際何するの?〜大体10分で具体的なイメージをつかむ〜
kniino
1
100
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
120
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
570
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
136
6.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Embracing the Ebb and Flow
colly
84
4.5k
Typedesign – Prime Four
hannesfritz
40
2.4k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
Producing Creativity
orderedlist
PRO
341
39k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
720
Done Done
chrislema
181
16k
A Tale of Four Properties
chriscoyier
156
23k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Designing for humans not robots
tammielis
250
25k
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 コマンドでの同期を紹介