-
Notifications
You must be signed in to change notification settings - Fork 1
/
ABOUT
155 lines (120 loc) · 5.28 KB
/
ABOUT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
###############################################################################
#
#
# Welcome to the cmdb suite of programs
#
# cmdb: Configuration Management Database
#
# dnsa: Domain Name System Administration
#
# cbc: Create build configuration
#
# The cbc suite contains:
#
# cbcvarient -> Manipulate Build Varients
# cbcos -> Manipulate Build Operating Systems
# cbcdomain -> Manipulate Build Domains
# cbcpart -> Manipulate Build Partition Schemes
# cbcsysp -> Manipulate cbc system packages
# cbcscript -> Manipulate cbc system scripts
# cbclocale -> Manipulate cbc locales
# cbc -> Create Build Configuration
# cpc -> Create Preseed Configuration
# ckc -> Create Kickstart Config
#
#
###############################################################################
This 3 suites of programs will allow you to keep track of servers in your
estate and create individual build files for the servers, whilst being able to
maintain DNS records for the servers. Let's describe the 3 suites now
#####
#
# cmdb
#
#####
cmdb will store configuration details about your servers, and these details
will be used to create automatic build files for your servers. Details stored
include hardware details (include the MAC address of the network card; useful
for network booting!) and switch / power ports and rack locations. You can
group servers by customer, which can be an external customer or an internal
customer, for example a specific project. You can also store the serial numbers
and hardware types.
#####
#
# dnsa
#
#####
dnsa allows you manipulate DNS records for your servers and the services that
run on them. It will also automatically build the reverse DNS zones, based on
the forward names in DNS. For IP addresses that have multiple forward records
you can choose a preferrred A record.
#####
#
# cbc
#
####
The cbc suite allows you to create multiple configurations for server builds.
There is multiple OS support, you can create partition schemes, build varients
that can be used to install different server types, e.g. web, database, mail.
You can also configure base OS services, such as logging, authentication types,
NTP, monitoring services, smtp relay, and locales and languages. The cbc
program will create the DHCP and TFTP configuration to allow network booting of
your servers, as well as the build configuration file for either preseed or
kickstart build types.
For the license see the COPYING file in this directory
For full compilation instructions see the INSTALL FILE.
For full functionality, ensure that libsqlite3 and
libmysqlclient are installed along with the -dev or -devel packages.
The configure script will build the 3 suites of programs in the src/
directory and make install will install them into /usr/local (unless you
specify a differnt location using the --prefix options to './configure'.
###############################################################################
#
#
# Installation Instructions
#
#
###############################################################################
You need to run the configure script to configure the build of the software.
#############
# IMPORTANT
#############
If using MySQL ensure the root user from your host has the GRANT privilege
otherwise the script will be unable to create the cmdb user. This is not
an issue if you are using a locally installed mysql.
The script also assumes that the build network is your default network
(i.e. the one with a default route) If this is not the case you will have to
edit the entry in /etc/dhcp/dhcpd.networks and give it the correct routing
info
###############################################################################
Once the software has been installed you will need to run the cmdb.sh script
which will have been copied into the bindir you selected during ./configure.
This is most likely /usr/local/bin. This script must be run as root.
The script takes the following options:
-h hostname
Set the hostname of the system. This should not be the FQDN of the system. We
will get that with:
-d domain
Set the domain name of the system.
-i ip_address
Set the IP address the system will use to build servers. The network this ip
address belongs to must exist and be available. This is for the automatic
dhcpd configuration for the network. We will assume a /24 and you wish to use
ip addresses .100 -> .250. You can change this in the dhcpd.networks file
in the dhcpd configuration directory.
-n
Do not install bind. I would only recommend doing this if you have not built
the dnsa module in ./configure, otherwise you will most likely get strange
errors
-m mirror
Set the mirror to use to get the various files that are needed. This will also
set the default mirror to use for building servers. If you have you own mirrors
of the centos, debian and ubuntu systems, you would add this here. This will
default to an http mirror, so do not provide the leading http:// This will
expect the /centos /ubuntu and /debian directories so ensure these are setup.
-b database-type
This will set the database type to use (mysql or sqlite). Ensure that you have
support compilied in to enable this. If you do not, the script will set what
capabilitied are set.
This script will install apache, bind, tftpd, syslinux, dhcpd and will setup
some base configuration of these.