blob: 9d508e5e47085f52991192b2ca04125f736c7543 (
plain)
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
|
.. -*- mode: rst -*-
.. _unsorted-converging_rhel5:
======================================
Converging on Verification with RHEL 5
======================================
Running verification
====================
To get complete verification status, run::
bcfg2 -vqned
Unmanaged entries
=================
* Package (top-level)
#. Enable the "Packages" plugin in {{{/etc/bcfg2.conf}}}, and configure the Yum repositories in {{{/var/lib/bcfg2/Packages/config.xml}}}.
#. If a package is unwanted, remove it::
sudo yum remove PACKAGE
#. Otherwise, add {{{<Package name="PACKAGE" />}}} to the Base or Bundler configuration.
* Package (dependency)
#. Ensure the Yum repository sources configured in {{{/var/lib/bcfg2/Packages/config.xml}}} are correct.
#. Ensure the Yum repositories themselves are up-to-date with the main package and dependencies.
#. Rebuild the Packages plugin cache::
bcfg2-admin xcmd Packages.Refresh
* Service
#. Add {{{<Service name="SERVICE" />}}} to the Base or Bundler configuration.
#. Add {{{<Service name="SERVICE" status="on" type="chkconfig" />}}} to {{{/var/lib/bcfg2/Rules/services.xml}}}.
Incorrect entries
=================
For a "Package"
---------------
* Failed RPM verification
#. Run {{{rpm -V PACKAGE}}}
#. Add configuration files (the ones with "c" next to them in the verification output) to {{{/var/lib/bcfg2/Cfg/}}}.
* For example, {{{/etc/motd}}} to {{{/var/lib/bcfg2/Cfg/etc/motd/motd}}}. Yes, there is an extra directory level named after the file.
#. Specify configuration files as {{{<Path name='PATH' />}}} in the Base or Bundler configuration.
#. Add directories to {{{/var/lib/bcfg2/Rules/directories.xml}}}. For example:
.. code-block:: xml
<Rules priority="0">
<Directory name="/etc/cron.hourly" group="root" owner="root" perms="0700" />
<Directory name="/etc/cron.daily" group="root" owner="root" perms="0700" />
</Rules>
* Multiple instances
* Option A: Explicitly list the instances
#. Drop the {{{<Package />}}} from the Base or Bundler configuration.
#. Add an explicit {{{<BoundPackage>}}} and {{{<Instance />}}} configuration to a new Bundle, like the following:
.. code-block:: xml
<Bundle name='keys'>
<!-- GPG keys -->
<BoundPackage name="gpg-pubkey" type="yum">
<Instance simplefile="/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL" version="217521f6" release="45e8a532"/>
<Instance simplefile="/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release" version="37017186" release="45761324"/>
</BoundPackage>
</Bundle>
#. Add the bundle to the applicable groups in {{{/var/lib/bcfg2/Metadata/groups.xml}}}.
* Option B: Disable verification of the package
#. Add {{{pkg_checks="false"}}} to the {{{<Package />}}} tag.
For a "Path"
-------------------
* Unclear verification problem (no details from BCFG2)
1. Run {{{bcfg2 -vqI}}} to see detailed verification issues (but deny any suggested actions).
* Permissions mismatch
1. Create an {{{info.xml}}} file in the same directory as the configuration file. Example:
.. code-block:: xml
<FileInfo>
<Group name='webserver'>
<Info owner='root' group='root' perms='0652'/>
</Group>
<Info owner='root' group='sys' perms='0651'/>
</FileInfo>
Other troubleshooting tools
===========================
* Generate the physical configuration from the server side::
bcfg2-info buildfile /test test.example.com
* Generate the physical configuration from the client side::
bcfg2 -vqn -c/root/bcfg2-physical.xml
|