ignore inventories
fix named.template hardcoding listen address can't be 127.0.0.1. Conflicts: install/group_vars/all install/roles/cobbler/templates/Dockerfile.j2 test compass without chef Conflicts: install/roles/cobbler/templates/Dockerfile.j2 Change-Id: I1c2d9b686e9370ccf253ad001b95fe491008365b
This commit is contained in:
parent
d602162ece
commit
8b761cfd9b
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
install/inventories
|
8
install/allinone_nochef.yml
Normal file
8
install/allinone_nochef.yml
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
|
||||
- hosts: allinone
|
||||
sudo: True
|
||||
roles:
|
||||
- common
|
||||
- cobbler
|
||||
- compass
|
@ -4,9 +4,9 @@
|
||||
rebuild: True
|
||||
|
||||
# Auto-generated IP values
|
||||
chef_server: "10.145.89.133"
|
||||
cobbler_server: "10.145.89.133"
|
||||
compass-server: "10.145.89.128"
|
||||
chef_server: "10.145.81.208"
|
||||
cobbler_server: "10.145.81.208"
|
||||
compass-server: "10.145.81.208"
|
||||
|
||||
# Auto-generated
|
||||
dockerized_cobbler: True
|
||||
@ -15,6 +15,9 @@ dockerized_chef: False
|
||||
# shared_dir on local machine
|
||||
shared_dir: "~/compass/shared"
|
||||
|
||||
# pkg installer
|
||||
pkg_installer: ['ansible']
|
||||
|
||||
## default urls
|
||||
|
||||
# centos
|
||||
@ -25,19 +28,19 @@ compass_adapters: "git://git.openstack.org/stackforge/compass-adapters.git"
|
||||
|
||||
## cobbler
|
||||
# cidr for docker bridge: compass0
|
||||
compass0_subnet: "192.168.100.1/24"
|
||||
compass0_subnet: "192.168.101.1/24"
|
||||
|
||||
# subnet ip for docker bridge: compass0
|
||||
compass0_subnet_ip: "192.168.100.0"
|
||||
compass0_subnet_ip: "192.168.101.0"
|
||||
|
||||
# subnet mask for docker bridge: compass0
|
||||
compass0_subnet_mask: "255.255.255.0"
|
||||
|
||||
# router ip for docker bridge: compass0
|
||||
compass0_router: "192.168.100.1"
|
||||
compass0_router: "192.168.101.1"
|
||||
|
||||
# dhcp range for docker bridge: compass0
|
||||
compass0_dhcp_range: "192.168.100.10 192.168.100.250"
|
||||
compass0_dhcp_range: "192.168.101.150 192.168.101.160"
|
||||
|
||||
# management subnet ip of the cluster you want to deploy
|
||||
mgmt_subnet_ip: "10.145.88.0"
|
||||
@ -46,10 +49,10 @@ mgmt_subnet_ip: "10.145.88.0"
|
||||
mgmt_router: "10.145.88.1"
|
||||
|
||||
# management subnet subnet mask
|
||||
mgmt_subnet_mask: "255.255.254.0"
|
||||
mgmt_subnet_mask: "255.255.255.0"
|
||||
|
||||
# management subnet dhcp range
|
||||
mgmt_dhcp_range: "10.145.88.10 10.145.89.250"
|
||||
mgmt_dhcp_range: "10.145.88.150 10.145.88.160"
|
||||
|
||||
|
||||
|
||||
@ -70,6 +73,9 @@ xmlrpc_port: "25151"
|
||||
# dns port on host that maps to the cobbler container
|
||||
dns_port: "53"
|
||||
|
||||
# mysql port
|
||||
mysql_port: "3306"
|
||||
|
||||
# port mapping as a paramter for running cobbler container
|
||||
cobbler_port_mapping: -p {{ cobbler_mapped_http_port_on_host }}:80 -p {{ tftp_port }}:69/udp -p {{ dns_port }}:53/udp -p {{ xmlrpc_port }}:25151 -p {{ rsyslog_port_mapped_on_host }}:514
|
||||
|
||||
@ -87,7 +93,7 @@ ntp_port: "123"
|
||||
proxy_port: "3128"
|
||||
|
||||
# port mapping as a parameter for running compass container
|
||||
compass_port_mapping: -p {{ compass_mapped_http_port_on_host }}:80 -p {{ ntp_port }}:123 -p {{ proxy_port }}:3128
|
||||
compass_port_mapping: -p {{ compass_mapped_http_port_on_host }}:80 -p {{ ntp_port }}:123 -p {{ proxy_port }}:3128 -p {{ mysql_port }}:3306
|
||||
|
||||
|
||||
## isos
|
||||
|
@ -45,13 +45,18 @@
|
||||
when: mount_info.stdout.find('CentOS') == -1
|
||||
|
||||
- name: copy Dockerfile to ~/docker-cobbler
|
||||
copy: src=Dockerfile dest=~/docker-cobbler/Dockerfile mode=0644
|
||||
template: src=Dockerfile.j2 dest=~/docker-cobbler/Dockerfile mode=0644
|
||||
|
||||
- name: copy dhcp.template
|
||||
template: src=dhcp.template.j2
|
||||
dest=~/docker-cobbler/files/dhcp.template
|
||||
mode=0644
|
||||
|
||||
- name: copy named.template
|
||||
template: src=named.template.j2
|
||||
dest=~/docker-cobbler/files/named.template
|
||||
mode=0644
|
||||
|
||||
- name: copy start script
|
||||
template: src=start.sh.j2
|
||||
dest=~/docker-cobbler/files/start.sh
|
||||
@ -66,11 +71,13 @@
|
||||
copy: src={{ shared_dir }}/keys/admin.pem
|
||||
dest=~/docker-cobbler/files/admin.pem
|
||||
mode=0644
|
||||
when: "'chef' in {{ pkg_installer }}"
|
||||
|
||||
- name: copy chef validator key
|
||||
copy: src={{ shared_dir }}/keys/chef-validator.pem
|
||||
dest=~/docker-cobbler/files/chef-validator.pem
|
||||
mode=0644
|
||||
when: "'chef' in {{ pkg_installer }}"
|
||||
|
||||
- name: cobbler container?
|
||||
command: docker ps -a
|
||||
@ -97,7 +104,7 @@
|
||||
when: image.stdout.find('cobbler') == -1 or rebuild
|
||||
|
||||
- name: fork image and run a new cobbler container
|
||||
shell: docker run --name=cobbler-dev -d {{ cobbler_port_mapping }} {{ image_volume_mapping }} {{ log_volume_mapping }} -i -t cobbler
|
||||
shell: docker run --name=cobbler-dev -d {{ cobbler_port_mapping }} {{ image_volume_mapping }} -i -t cobbler
|
||||
|
||||
- name: extract cobbler ip info
|
||||
shell: echo `docker inspect cobbler-dev | awk -F '"' '/IPAdd/ {print $4}'` > /tmp/ip
|
||||
|
22
install/roles/cobbler/templates/Dockerfile.j2
Normal file
22
install/roles/cobbler/templates/Dockerfile.j2
Normal file
@ -0,0 +1,22 @@
|
||||
FROM compassindocker/cobbler
|
||||
|
||||
ADD files/dhcp.template /etc/cobbler/dhcp.template
|
||||
ADD files/named.template /etc/cobbler/named.template
|
||||
ADD files/start.sh /root/start.sh
|
||||
{% if 'chef' in pkg_installer %}
|
||||
ADD files/admin.pem /etc/cobbler/admin.pem
|
||||
ADD files/chef-validator.pem /etc/cobbler/chef-validator.pem
|
||||
{% endif %}
|
||||
ADD files/fix_ks_server.py /var/lib/cobbler/sync/post/fix_ks_server.py
|
||||
|
||||
RUN chmod +x /root/start.sh
|
||||
CMD ["/root/start.sh"]
|
||||
|
||||
EXPOSE 80
|
||||
EXPOSE 67 67/udp
|
||||
EXPOSE 69 69/udp
|
||||
EXPOSE 53 53/udp
|
||||
EXPOSE 25151
|
||||
EXPOSE 443
|
||||
EXPOSE 873
|
||||
|
31
install/roles/cobbler/templates/named.template.j2
Normal file
31
install/roles/cobbler/templates/named.template.j2
Normal file
@ -0,0 +1,31 @@
|
||||
options {
|
||||
listen-on port 53 { $listen_ip; };
|
||||
directory "/var/named";
|
||||
dump-file "/var/named/data/cache_dump.db";
|
||||
statistics-file "/var/named/data/named_stats.txt";
|
||||
memstatistics-file "/var/named/data/named_mem_stats.txt";
|
||||
allow-query { 127.0.0.0/8; {{ compass0_subnet }}; };
|
||||
recursion yes;
|
||||
};
|
||||
|
||||
logging {
|
||||
channel default_debug {
|
||||
file "data/named.run";
|
||||
severity dynamic;
|
||||
};
|
||||
};
|
||||
|
||||
#for $zone in $forward_zones
|
||||
zone "${zone}." {
|
||||
type master;
|
||||
file "$zone";
|
||||
};
|
||||
|
||||
#end for
|
||||
#for $zone, $arpa in $reverse_zones
|
||||
zone "${arpa}." {
|
||||
type master;
|
||||
file "$zone";
|
||||
};
|
||||
|
||||
#end for
|
@ -2,6 +2,7 @@
|
||||
|
||||
export ipaddr=$(ip addr show eth0 | grep 'inet ' | awk '{ print $2}'|cut -d/ -f1)
|
||||
sed -i "/^local-address/c\local-address $ipaddr;" /etc/cobbler/dhcp.template
|
||||
sed -i "s/listen-on port 53 { \$listen_ip; }/listen-on port 53 \{ $ipaddr; \}/g" /etc/cobbler/named.template
|
||||
sed -i "/^server/c\server: $ipaddr" /etc/cobbler/settings
|
||||
sed -i "/^next_server/c\next_server: {{ cobbler_server }}" /etc/cobbler/settings
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
file: path=~/docker-compass/files state=directory
|
||||
|
||||
- name: copy Dockerfile
|
||||
copy: src=Dockerfile dest=~/docker-compass/Dockerfile mode=0644
|
||||
template: src=Dockerfile.j2 dest=~/docker-compass/Dockerfile mode=0644
|
||||
|
||||
- name: copy start script
|
||||
copy: src=start.sh
|
||||
@ -24,6 +24,7 @@
|
||||
copy: src={{ shared_dir }}/keys/compass.pem
|
||||
dest=~/docker-compass/files/compass.pem
|
||||
mode=0644
|
||||
when: "'chef' in {{ pkg_installer }}"
|
||||
|
||||
- name: copy chef config
|
||||
template: src=chef-icehouse.conf.j2 dest=~/docker-compass/files/chef-icehouse.conf
|
||||
@ -37,9 +38,6 @@
|
||||
template: src=compass.setting.j2 dest=~/docker-compass/files/compass.setting
|
||||
mode=0644
|
||||
|
||||
- name: copy Dockerfile
|
||||
copy: src=Dockerfile dest=~/docker-compass/Dockerfile mode=0644
|
||||
|
||||
- name: get containers
|
||||
command: docker ps -a
|
||||
register: containers
|
||||
|
@ -3,8 +3,10 @@ FROM compassindocker/compass
|
||||
ADD files/start.sh /root/start.sh
|
||||
ADD files/compass.setting /etc/compass/setting
|
||||
ADD files/cobbler.conf /etc/compass/os_installer/cobbler.conf
|
||||
{% if 'chef' in pkg_installer %}
|
||||
ADD files/chef-icehouse.conf /etc/compass/package_installer/chef-icehouse.conf
|
||||
ADD files/compass.pem /etc/compass.pem
|
||||
{% endif %}
|
||||
|
||||
CMD ["/root/start.sh"]
|
||||
EXPOSE 80
|
Loading…
x
Reference in New Issue
Block a user