summaryrefslogtreecommitdiffstats
path: root/src/powerdns/README.md
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 18:24:20 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 18:24:20 +0000
commit483eb2f56657e8e7f419ab1a4fab8dce9ade8609 (patch)
treee5d88d25d870d5dedacb6bbdbe2a966086a0a5cf /src/powerdns/README.md
parentInitial commit. (diff)
downloadceph-483eb2f56657e8e7f419ab1a4fab8dce9ade8609.tar.xz
ceph-483eb2f56657e8e7f419ab1a4fab8dce9ade8609.zip
Adding upstream version 14.2.21.upstream/14.2.21upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/powerdns/README.md')
-rw-r--r--src/powerdns/README.md61
1 files changed, 61 insertions, 0 deletions
diff --git a/src/powerdns/README.md b/src/powerdns/README.md
new file mode 100644
index 00000000..0b34ede9
--- /dev/null
+++ b/src/powerdns/README.md
@@ -0,0 +1,61 @@
+# PowerDNS RADOS Gateway backend
+
+A backend for PowerDNS to direct RADOS Gateway bucket traffic to the correct regions.
+
+For example, two regions exist, US and EU.
+
+ EU: o.myobjects.eu
+ US: o.myobjects.us
+
+A global domain o.myobjects.com exists.
+
+Bucket 'foo' exists in the region EU and 'bar' in US.
+
+ foo.o.myobjects.com will return a CNAME to foo.o.myobjects.eu
+ bar.o.myobjects.com will return a CNAME to foo.o.myobjects.us
+
+The HTTP Remote Backend from PowerDNS is used in this case: http://doc.powerdns.com/html/remotebackend.html
+
+PowerDNS must be compiled with Remote HTTP backend support enabled, this is not default.
+
+For more information visit the [Blueprint](http://wiki.ceph.com/Planning/Blueprints/Firefly/PowerDNS_backend_for_RGW)
+
+# Configuration
+
+## PowerDNS
+ launch=remote
+ remote-connection-string=http:url=http://localhost:6780/dns
+
+## PowerDNS backend
+Usage for this backend is showed by invoking with --help. See rgw-pdns.conf.in for a configuration example
+
+The ACCESS and SECRET key pair requires the caps "metadata=read"
+
+# Testing
+
+$ curl -X GET http://localhost:6780/dns/lookup/foo.o.myobjects.com/ANY
+
+Should return something like:
+
+ {
+ "result": [
+ {
+ "content": "foo.o.myobjects.eu",
+ "qtype": "CNAME",
+ "qname": "foo.o.myobjects.com",
+ "ttl": 60
+ }
+ ]
+ }
+
+## WSGI
+You can run this backend directly behind an Apache server with mod_wsgi
+
+ WSGIScriptAlias / /var/www/pdns-backend-rgw.py
+
+Placing that in your virtualhost should be sufficient.
+
+Afterwards point PowerDNS to localhost on port 80:
+
+ launch=remote
+ remote-connection-string=http:url=http://localhost/dns