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
830
ExternalDNS を試してみた / Tried ExternalDNS
ののし
December 08, 2020
Tweet
Share
More Decks by ののし
See All by ののし
今から、 今だからこそ始める Terraform で Azure 管理 / Managing Azure with Terraform: The Perfect Time to Start
nnstt1
0
310
HCP Vault Secrets でシークレット管理を始めよう / Getting Started with Secret Management Using HCP Vault Secrets
nnstt1
0
75
HashiCorp Ambassador が予想!Red Hat × HashiCorp の未来 / The Future of Red Hat and HashiCorp
nnstt1
1
150
Terraform を使った Front Door の小ネタ / Terraform for Front Door
nnstt1
0
120
つまずきから学ぶ Backstage の Golden Path 構築
nnstt1
2
1.1k
Azure ユーザに捧げる Terraform Cloud 101 / Terraform Cloud 101 for Azure Users
nnstt1
0
490
AKS と HCP Vault の組み合わせでつまずいた話 / Stumbles with AKS and HCP Vault combination
nnstt1
1
120
Vault Secrets Operator と HCP Vault を使った AKS のシークレット管理 / AKS secret management using the Vault Secrets Operator and HCP Vault
nnstt1
0
150
Vault Secrets Operator と Dynamic Secrets で安全にシークレットを使おう / Vault Secrets Operator and Dynamic Secrets
nnstt1
4
840
Other Decks in Technology
See All in Technology
生成AI “再”入門 2025年春@WIRED TUESDAY EDITOR'S LOUNGE
kajikent
0
130
脳波を用いた嗜好マッチングシステム
hokkey621
0
290
わたしがEMとして入社した「最初の100日」の過ごし方 / EMConfJp2025
daiksy
14
5.1k
Exadata Database Service on Cloud@Customer セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
2
1.5k
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
530
Oracle Database Technology Night #87-1 : Exadata Database Service on Exascale Infrastructure(ExaDB-XS)サービス詳細
oracle4engineer
PRO
1
190
JAWS DAYS 2025 アーキテクチャ道場 事前説明会 / JAWS DAYS 2025 briefing document
naospon
0
150
"TEAM"を導入したら最高のエンジニア"Team"を実現できた / Deploying "TEAM" and Building the Best Engineering "Team"
yuj1osm
1
210
技術スタックだけじゃない、業務ドメイン知識のオンボーディングも同じくらいの量が必要な話
niftycorp
PRO
0
110
DevinでAI AWSエンジニア製造計画 序章 〜CDKを添えて〜/devin-load-to-aws-engineer
tomoki10
0
160
1行のコードから社会課題の解決へ: EMの探究、事業・技術・組織を紡ぐ実践知 / EM Conf 2025
9ma3r
12
4k
あなたが人生で成功するための5つの普遍的法則 #jawsug #jawsdays2025 / 20250301 HEROZ
yoshidashingo
2
310
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Side Projects
sachag
452
42k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Six Lessons from altMBA
skipperchong
27
3.6k
Building an army of robots
kneath
303
45k
The Language of Interfaces
destraynor
156
24k
Optimizing for Happiness
mojombo
376
70k
Code Reviewing Like a Champion
maltzj
521
39k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Docker and Python
trallard
44
3.3k
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 コマンドでの同期を紹介