Difference between revisions of "Designate/Vancouver/Workshop"
Tim Simmons (talk | contribs) |
Tim Simmons (talk | contribs) (→Designate Installation Instructions) |
||
(4 intermediate revisions by the same user not shown) | |||
Line 9: | Line 9: | ||
Several of the Designate contributors will be on hand during the workshop to help attendees work through the deployment. | Several of the Designate contributors will be on hand during the workshop to help attendees work through the deployment. | ||
− | See also: | + | See also: [https://openstacksummitmay2015vancouver.sched.org/event/d4cfac6323519e803c9d7797036ed0a2?iframe=no&w=i:100;&sidebar=yes&bg=no#.VVutXRZSbjI DNS For Your Cloud - OpenStack Designate] |
== Designate Installation Instructions == | == Designate Installation Instructions == | ||
Line 15: | Line 15: | ||
====Install Designate and its dependencies==== | ====Install Designate and its dependencies==== | ||
cd /home/vagrant/designate | cd /home/vagrant/designate | ||
+ | |||
pip install -r requirements.txt | pip install -r requirements.txt | ||
+ | |||
sudo python setup.py develop | sudo python setup.py develop | ||
− | ==== | + | ====Configuration==== |
cd /home/vagrant/designate/etc/designate | cd /home/vagrant/designate/etc/designate | ||
− | + | The configuration file is set for you at etc/designate/designate.conf, you can diff it with designate.conf.sample if you'd like to see the differences. | |
− | + | ||
− | + | =====Create directory for maintaining designate log files===== | |
+ | This directory was referenced by 'logdir' variable in designate.conf file. | ||
+ | |||
mkdir /home/vagrant/logs/ | mkdir /home/vagrant/logs/ | ||
====Create, Initialize and sync the databases==== | ====Create, Initialize and sync the databases==== | ||
− | ====The Designate database==== | + | =====The Designate database===== |
+ | |||
mysql -e 'CREATE DATABASE `designate` CHARACTER SET utf8 COLLATE utf8_general_ci;' | mysql -e 'CREATE DATABASE `designate` CHARACTER SET utf8 COLLATE utf8_general_ci;' | ||
+ | |||
designate-manage database sync | designate-manage database sync | ||
− | ====The PowerDNS database==== | + | =====The PowerDNS database===== |
+ | |||
mysql -e 'CREATE DATABASE `powerdns` CHARACTER SET utf8 COLLATE utf8_general_ci;' | mysql -e 'CREATE DATABASE `powerdns` CHARACTER SET utf8 COLLATE utf8_general_ci;' | ||
+ | |||
designate-manage powerdns sync f26e0b32-736f-4f0a-831b-039a415c481e | designate-manage powerdns sync f26e0b32-736f-4f0a-831b-039a415c481e | ||
====Restart pDNS after replacing it's DB==== | ====Restart pDNS after replacing it's DB==== | ||
+ | |||
sudo service pdns restart | sudo service pdns restart | ||
====Start the Designate Central Service==== | ====Start the Designate Central Service==== | ||
− | + | ||
sudo start designate-central | sudo start designate-central | ||
====Start the Designate API Service==== | ====Start the Designate API Service==== | ||
− | + | ||
sudo start designate-api | sudo start designate-api | ||
====Start the Designate mDNS Service==== | ====Start the Designate mDNS Service==== | ||
− | + | ||
sudo start designate-mdns | sudo start designate-mdns | ||
====Start the Designate Pool Manager Service==== | ====Start the Designate Pool Manager Service==== | ||
− | + | ||
sudo start designate-pool-manager | sudo start designate-pool-manager | ||
====Setup the Designate Keystone service and endpoints==== | ====Setup the Designate Keystone service and endpoints==== | ||
− | + | First set user 'admin' particulars then create service and endpoint | |
+ | |||
source /home/vagrant/openrc.admin | source /home/vagrant/openrc.admin | ||
− | keystone service- | + | keystone service-create --name designate --type dns --description "Designate Service" |
− | + | keystone endpoint-create --service designate --publicurl http://127.0.0.1:9001 | |
− | keystone endpoint-create --service designate --publicurl | ||
====Confirm the service exists==== | ====Confirm the service exists==== | ||
+ | |||
keystone catalog --service dns | keystone catalog --service dns | ||
====Install Designate Client==== | ====Install Designate Client==== | ||
+ | |||
cd /home/vagrant/python-designateclient | cd /home/vagrant/python-designateclient | ||
+ | |||
sudo pip install -r requirements.txt | sudo pip install -r requirements.txt | ||
+ | |||
sudo python setup.py develop | sudo python setup.py develop | ||
====Install Designate Horizon Panels==== | ====Install Designate Horizon Panels==== | ||
+ | |||
cd /home/vagrant/designate/contrib/designate-dashboard | cd /home/vagrant/designate/contrib/designate-dashboard | ||
+ | |||
+ | truncate -s0 requirements.txt | ||
+ | |||
python setup.py sdist | python setup.py sdist | ||
+ | |||
sudo pip install dist/*.tar.gz | sudo pip install dist/*.tar.gz | ||
+ | |||
sudo cp designatedashboard/enabled/_70_dns_add_group.py /usr/share/openstack-dashboard/openstack_dashboard/local/enabled | sudo cp designatedashboard/enabled/_70_dns_add_group.py /usr/share/openstack-dashboard/openstack_dashboard/local/enabled | ||
+ | |||
sudo cp designatedashboard/enabled/_71_dns_project.py /usr/share/openstack-dashboard/openstack_dashboard/local/enabled | sudo cp designatedashboard/enabled/_71_dns_project.py /usr/share/openstack-dashboard/openstack_dashboard/local/enabled | ||
+ | |||
sudo service apache2 restart | sudo service apache2 restart | ||
====Tell designate what you want your ns records to be==== | ====Tell designate what you want your ns records to be==== | ||
+ | |||
designate server-create --name ns.example.com. | designate server-create --name ns.example.com. | ||
= Additional Notes on the workshop = | = Additional Notes on the workshop = | ||
*A single node was used so that it is easier to control and easier for newbies to install. | *A single node was used so that it is easier to control and easier for newbies to install. |
Latest revision as of 22:19, 19 May 2015
Contents
- 1 Designate: Interactive Workshop - Install and Operate - Openstack Summit, May 2015
- 1.1 Designate Installation Instructions
- 1.1.1 Install Designate and its dependencies
- 1.1.2 Configuration
- 1.1.3 Create, Initialize and sync the databases
- 1.1.4 Restart pDNS after replacing it's DB
- 1.1.5 Start the Designate Central Service
- 1.1.6 Start the Designate API Service
- 1.1.7 Start the Designate mDNS Service
- 1.1.8 Start the Designate Pool Manager Service
- 1.1.9 Setup the Designate Keystone service and endpoints
- 1.1.10 Confirm the service exists
- 1.1.11 Install Designate Client
- 1.1.12 Install Designate Horizon Panels
- 1.1.13 Tell designate what you want your ns records to be
- 1.1 Designate Installation Instructions
- 2 Additional Notes on the workshop
Designate: Interactive Workshop - Install and Operate - Openstack Summit, May 2015
Designate provides DNSaaS services for OpenStack.
This interactive workshop will guide attendees on how Designate can be installed with PowerDNS. For the purposes of the workshop the various designate components will be installed on a single node. Once installed it shows some of the V1 and V2 APIs for domain and record management. The workshop will conclude by using a tool like dig to retrieve the added records from the PowerDNS backend, showing a fully functional by-hand deployment.
The workshop will also cover the steps for contributing to the development of Designate.
Several of the Designate contributors will be on hand during the workshop to help attendees work through the deployment.
See also: DNS For Your Cloud - OpenStack Designate
Designate Installation Instructions
Install Designate and its dependencies
cd /home/vagrant/designate
pip install -r requirements.txt
sudo python setup.py develop
Configuration
cd /home/vagrant/designate/etc/designate
The configuration file is set for you at etc/designate/designate.conf, you can diff it with designate.conf.sample if you'd like to see the differences.
Create directory for maintaining designate log files
This directory was referenced by 'logdir' variable in designate.conf file.
mkdir /home/vagrant/logs/
Create, Initialize and sync the databases
The Designate database
mysql -e 'CREATE DATABASE `designate` CHARACTER SET utf8 COLLATE utf8_general_ci;'
designate-manage database sync
The PowerDNS database
mysql -e 'CREATE DATABASE `powerdns` CHARACTER SET utf8 COLLATE utf8_general_ci;'
designate-manage powerdns sync f26e0b32-736f-4f0a-831b-039a415c481e
Restart pDNS after replacing it's DB
sudo service pdns restart
Start the Designate Central Service
sudo start designate-central
Start the Designate API Service
sudo start designate-api
Start the Designate mDNS Service
sudo start designate-mdns
Start the Designate Pool Manager Service
sudo start designate-pool-manager
Setup the Designate Keystone service and endpoints
First set user 'admin' particulars then create service and endpoint
source /home/vagrant/openrc.admin
keystone service-create --name designate --type dns --description "Designate Service"
keystone endpoint-create --service designate --publicurl http://127.0.0.1:9001
Confirm the service exists
keystone catalog --service dns
Install Designate Client
cd /home/vagrant/python-designateclient
sudo pip install -r requirements.txt
sudo python setup.py develop
Install Designate Horizon Panels
cd /home/vagrant/designate/contrib/designate-dashboard
truncate -s0 requirements.txt
python setup.py sdist
sudo pip install dist/*.tar.gz
sudo cp designatedashboard/enabled/_70_dns_add_group.py /usr/share/openstack-dashboard/openstack_dashboard/local/enabled
sudo cp designatedashboard/enabled/_71_dns_project.py /usr/share/openstack-dashboard/openstack_dashboard/local/enabled
sudo service apache2 restart
Tell designate what you want your ns records to be
designate server-create --name ns.example.com.
Additional Notes on the workshop
- A single node was used so that it is easier to control and easier for newbies to install.