项目作者: mblaschke

项目描述 :
Sync DNS entries with Azure DNS Zone
高级语言: Go
项目地址: git://github.com/mblaschke/azure-dns-sync.git
创建时间: 2017-10-30T09:16:40Z
项目社区:https://github.com/mblaschke/azure-dns-sync

开源协议:MIT License

下载


Azure DNS sync

Because currently Azure’s DNS servers are limited maybe there is need
for a sync of some hostnames from an internal DNS server into an public
Azure DNS zone.

Setup

Create azure config secret first:

  1. kubectl create secret generic azure-config-file --from-file=/etc/kubernetes/azure.json

Create deployment:

  1. apiVersion: v1
  2. kind: ConfigMap
  3. metadata:
  4. name: azure-dns-sync-config
  5. data:
  6. config.yml: |
  7. ---
  8. updateTime: "@every 10m"
  9. default:
  10. resourceGroup: your-dns-resource-group
  11. zone: your-azure.zone
  12. ttl: 60
  13. entries:
  14. - name: foo.example.com
  15. azure:
  16. name: example-barfoo
  17. - name: foo.example.com
  18. azure:
  19. name: example-foobar
  20. resourceGroup: other-dns-resource-group
  21. zone: other-azure.zone
  22. ttl: 120
  23. dns:
  24. - 8.8.4.4
  25. ---
  26. apiVersion: extensions/v1beta1
  27. kind: Deployment
  28. metadata:
  29. name: azure-dns-sync
  30. spec:
  31. strategy:
  32. type: Recreate
  33. template:
  34. metadata:
  35. labels:
  36. app: azure-dns-sync
  37. spec:
  38. containers:
  39. - name: azure-dns-sync
  40. image: mblaschke/azure-dns-sync
  41. volumeMounts:
  42. - name: azure-config-file
  43. mountPath: /etc/kubernetes
  44. readOnly: true
  45. - name: azure-dns-sync-config-volume
  46. mountPath: /etc/azure-dns-sync
  47. readOnly: true
  48. volumes:
  49. - name: azure-config-file
  50. secret:
  51. secretName: azure-config-file
  52. - name: azure-dns-sync-config-volume
  53. configMap:
  54. name: azure-dns-sync-config

Run deployment

  1. kubectl apply -f deployment.yml