Authconfig가 /etc/sysconfig/authconfig 파일을 계속 다시 작성하여 Puppet 작업을 엉망으로 만듭니다.

Authconfig가 /etc/sysconfig/authconfig 파일을 계속 다시 작성하여 Puppet 작업을 엉망으로 만듭니다.

나는 내 Puppet 환경에서 이 LDAP 모듈을 오랫동안 사용해 왔습니다. 이 모듈은 다음 파일을 RHEL 서버에 업로드합니다.

/etc/openldap/openldap.conf
/etc/pam_ldap.conf
/etc/nsswitch.conf
/etc/sssd/sssd.conf
/etc/sysconfig/authconfig
/etc/sudo-ldap.conf
/etc/openldap/cacerts/cacert.pem

이 명령을 실행하면 실행되고 authconfig --updateallLDAP가 작동하기 시작합니다. 이것은 우리가 가지고 있는 RH6.2 서버에서는 잘 작동하지만 RH6.4에서는 문제가 있으며 유일한 차이점은 추가 FORCELEGACY=YES line.

이 행동에 대해 어떻게 해야 합니까? 논리적인 것은 /etc/sysconfig/authconfig/sbin/authconfig 생성된 파일을 Puppetmaster에 업로드 하는 것 같지만 계속해서 다시 작성 /etc/sysconfig/authconfig하고 모든 작업이 순서를 변경합니다.

[root@rhel-server ~]# puppet agent --test
Info: Retrieving plugin
Info: Loading facts in /var/lib/puppet/lib/facter/extra_info.rb
Info: Caching catalog for rhel-server.domain.local
Info: Applying configuration version '1379669638'
Notice: /File[/etc/sysconfig/authconfig]/content: 
--- /etc/sysconfig/authconfig   2013-09-20 13:18:24.165303819 +0200
+++ /tmp/puppet-file20130920-17419-lgtzfu-0 2013-09-20 13:44:05.388741384 +0200
@@ -5,22 +5,22 @@
 USESSSDAUTH=no
 USESHADOW=yes
 USEWINBIND=no
+USESSSD=no
 USEDB=no
 FORCELEGACY=yes
 USEFPRINTD=yes
-USEHESIOD=no
 FORCESMARTCARD=no
-PASSWDALGORITHM=md5
 USELDAPAUTH=yes
+USEPASSWDQC=no
 IPAV2NONTP=no
-USELDAP=yes
+USELOCAUTHORIZE=yes
 USECRACKLIB=yes
 USEIPAV2=no
 USEWINBINDAUTH=no
 USESMARTCARD=no
-USELOCAUTHORIZE=yes
+USELDAP=yes
 USENIS=no
 USEKERBEROS=no
 USESYSNETAUTH=no
-USESSSD=no
-USEPASSWDQC=no
+PASSWDALGORITHM=md5
+USEHESIOD=no

Info: FileBucket got a duplicate file {md5}b8bd9dc8120ab4be6b41ac5bb57e1192
Info: /File[/etc/sysconfig/authconfig]: Filebucketed /etc/sysconfig/authconfig to puppet with sum b8bd9dc8120ab4be6b41ac5bb57e1192
Notice: /File[/etc/sysconfig/authconfig]/content: content changed '{md5}b8bd9dc8120ab4be6b41ac5bb57e1192' to '{md5}f1cf038ce9c007f9eefe3b83fb674584'
Info: /File[/etc/sysconfig/authconfig]: Scheduling refresh of Exec[/usr/sbin/authconfig --updateall]
Notice: /Stage[main]/Ldap/Exec[/usr/sbin/authconfig --updateall]: Triggered 'refresh' from 1 events
Notice: Finished catalog run in 6.17 seconds
[root@rhel-server ~]# 

따라서 Puppetmaster의 authconfig 파일 순서에 관계없이 authconfig가 계속 다시 작성하는 것 같습니다. 이것이 본질적으로 의미하는 바는 Puppet이 실행될 때마다(30분) Puppet이 파일을 교체한 다음 authconfig가 파일의 순서를 변경한다는 것입니다.

이 문제를 어떻게 해결할 수 있나요?

답변1

Puppet은 본질적으로 실행 순서를 보장하지 않습니다. 이 설정을 변경해야 하는 경우 before 또는 require 문을 사용하세요.

file {'foo':
  ensure => present,
}

file {'bar':
  ensure => present, 
  require => File['foo'],
}

http://docs.puppetlabs.com/learning/ordering.html

답변2

인형에게 authconfig를 사용하여 파일을 생성하도록 요청한 다음 파일을 chk 파일로 정렬한 다음 인형이 합계를 확인합니다. 단순히 순서만 다를 경우에는 정렬된 생성 파일의 합은 변하지 않습니다.

관련 정보