日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

通过案例了解puppet创建虚拟资源解决资源冲突问题

發(fā)布時(shí)間:2025/7/14 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 通过案例了解puppet创建虚拟资源解决资源冲突问题 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

通過案例了解puppet創(chuàng)建虛擬資源解決資源沖突問題

虛擬資源是一種用來管理多種配置共同依賴同一資源的方法。如果多個(gè)類依賴同一個(gè)資源時(shí)則可避免寫多個(gè)資源,也可以解決資源重定義的錯(cuò)誤。 虛擬資源經(jīng)常用于用戶管理中,虛擬資源只會(huì)被聲明一次,但可以運(yùn)用一次或多次。

要使用虛擬資源是需要在資源聲明開頭加上字符“@”來使資源虛擬化。然后再使用下面兩種方法之一來實(shí)例化虛擬資源:

  • "飛船"語法<||>

  • realize函數(shù)

更多詳情可訪問 www.kisspuppet.com ?www.rsyslog.org

1. 定義兩個(gè)用戶,puppet和root,并將其虛擬化

注意定義虛擬資源必須在全局作用域或者節(jié)點(diǎn)作用域中定義,簡單的理解,以下目錄中site.pp就是全局作用域,包含(site.pp中import了nodes目錄),其他模塊中的都屬于局部作用域。

1.1 在全局作用域中創(chuàng)建對(duì)應(yīng)的pp文件

[root@linuxmaster1poc testing]# tree manifests/ manifests/ ├── nodes │ ├── puppetclient.pp │ ├── virtual_group.pp │ └── virtual_user.pp └── site.pp 1 directory, 4 files

1.2 創(chuàng)建虛擬用戶puppet、root、xiaonuo

[root@linuxmaster1poc testing]# vim manifests/nodes/virtual_user.pp class alluser{include alluser::puppet,alluser::root } class alluser::puppet{@user { 'puppet':ensure => present,uid => '52',gid => '52',home => '/var/lib/puppet',shell => '/sbin/nologin',} } class alluser::root{@user { 'root':ensure => present,uid => '0',gid => '0',home => '/root',shell => '/bin/bash',} } class alluser::xiaonuo{@user { 'xiaonuo':ensure => present,uid => '600',gid => '600',home => '/home/xiaonuo',shell => '/sbin/nologin',} }

1.3 創(chuàng)建虛擬組puppet、root和xiaonuo

[root@linuxmaster1poc testing]# vim manifests/nodes/virtual_group.pp class allgroup{include allgroup::puppet,allgroup::root } class allgroup::puppet{@group { 'puppet':ensure => present,name => 'puppet',gid => '52',allowdupe => false,members => 'puppet',} } class allgroup::root{@group { 'root':ensure => present,name => 'root',gid => '0',allowdupe => false,members => 'root',} } class allgroup::xiaonuo{@group { 'xiaonuo':ensure => present,name => 'xiaonuo',gid => '600',allowdupe => false,members => 'xiaonuo',} }

2. 編寫puppet模塊,將虛擬資源用戶puppet和組puppet實(shí)化

2.1 編寫pupppet模塊

[root@linuxmaster1poc testing]# tree environment/modules/puppet environment/modules/puppet ├── files ├── manifests │ ├── config.pp │ ├── init.pp │ ├── install.pp │ ├── params.pp │ └── service.pp ├── README └── templates├── auth.conf.erb├── namespaceauth.conf.erb└── puppet.conf.erb 3 directories, 9 files

2.2 編寫puppet_linux57poc模塊

[root@linuxmaster1poc testing]# tree agents/modules/puppet_linux57poc/ agents/modules/puppet_linux57poc/ ├── files ├── manifests │ └── init.pp └── templates├── facts.txt.erb└── motd.erb 3 directories, 3 files

2.3 實(shí)例化虛擬資源

2.3.1 在puppet模塊中實(shí)例化

[root@linuxmaster1poc testing]# vim environment/modules/puppet/manifests/config.pp class puppet::config{include puppet::paramsinclude puppet::puppet_config,puppet::namespaceauth_config,puppet::auth_config,puppet::user,puppet::groupinclude alluser,allgroup #必須將節(jié)點(diǎn)作用域中的類包含進(jìn)來 } class puppet::puppet_config{file { '/etc/puppet/puppet.conf':ensure => present,content => template('puppet/puppet.conf.erb'),owner => 'puppet',group => 'puppet',mode => '0644',backup => main,require => Class['puppet::install','puppet::user','puppet::group'],notify => Class['puppet::service'],} } class puppet::auth_config{file { '/etc/puppet/auth.conf':ensure => present,content => template('puppet/auth.conf.erb'),owner => 'puppet',group => 'puppet',mode => '0644',backup => main,require => Class['puppet::install','puppet::user','puppet::group'],notify => Class['puppet::service'],} } class puppet::namespaceauth_config{file { '/etc/puppet/namespaceauth.conf':ensure => present,content => template('puppet/namespaceauth.conf.erb'),owner => 'puppet',group => 'puppet',mode => '0644',backup => main,require => Class['puppet::install','puppet::user','puppet::group'],notify => Class['puppet::service'],} } class puppet::user{ #使用飛船語法實(shí)化用戶puppet資源 # realize User['puppet']User <| title == 'puppet' |> } class puppet::group{ #使用realize函數(shù)實(shí)化組puppet資源realize Group['puppet'] # Group <| title == 'puppet' |> }

2.3.2 在puppet_linux57poc模塊中實(shí)例化

[root@linuxmaster1poc testing]# cat agents/modules/puppet_linux57poc/manifests/init.pp class puppet_linux57poc{include puppet_linux57poc::motd_install,puppet_linux57poc::motd_config,puppet_linux57poc::facts,puppet_linux57poc::user,puppet_linux57poc::groupinclude alluser,allgroup #必須將節(jié)點(diǎn)作用域中的類包含進(jìn)來 } class puppet_linux57poc::motd_install{package{ setup:ensure => present,} } class puppet_linux57poc::motd_config{file{ "/etc/motd":owner => "xiaonuo",group => "root",mode => 0440,content => template("puppet_linux57poc/motd.erb"),backup => 'main',require => Class['puppet_linux57poc::motd_install','puppet_linux57poc::user','puppet_linux57poc::group']} } class puppet_linux57poc::facts{file{ "/etc/mcollective/facts.txt":owner => "root",group => "root",mode => 0400,content => template("puppet_linux57poc/facts.txt.erb"),backup => 'main',require => Class['puppet_linux57poc::motd_install','puppet_linux57poc::user','puppet_linux57poc::group']} } class puppet_linux57poc::user{ #使用realize函數(shù)實(shí)化用戶xiaonuo和root資源realize( User['xiaonuo'],User['root'] ) } class puppet_linux57poc::group{ #使用realize函數(shù)實(shí)化組xiaonuo和root資源realize( Group['xiaonuo'],Group['root'] ) }

3. 測試

3.1 測試puppet模塊(略)

3.2 測試puppet_linux57poc模塊

3.2.1 查看當(dāng)前系統(tǒng)是否有xiaonuo用戶和組

[root@linux57poc puppet]# id xiaonuo id: xiaonuo: No such user [root@linux57poc puppet]# cat /etc/group | grep xiaonuo [root@linux57poc puppet]# [root@linux57poc puppet]# ll /etc/motd -rwxrwxrwx 1 puppet puppet 313 Jan 2 06:17 /etc/motd

3.2.2 同步puppetmaster

[root@linux57poc puppet]# puppet agent -t --environment=testing info: Retrieving plugin info: Loading facts in /var/lib/puppet/lib/facter/fact_apply.rb info: Caching catalog for puppet_linux57poc.dev.shanghaigm.com info: Applying configuration version '1389555288' notice: /Stage[main]/Allservice::Lm_sensors_service/Service[lm_sensors]/ensure: ensure changed 'running' to 'stopped' notice: /Group[xiaonuo]/ensure: created notice: /Stage[main]/Alluser::Xiaonuo/User[xiaonuo]/ensure: created ... info: FileBucket adding {md5}b2090646c444c5ddf1533749743ebd71 info: /Stage[main]/Mcollective::Facter/File[/etc/mcollective/facts.yaml]: Filebucketed /etc/mcollective/facts.yaml to main with sum b2090646c444c5ddf1533749743ebd71 notice: /Stage[main]/Sysctl::Exec/Exec[sysctl -p >/dev/null &]/returns: executed successfully notice: /Stage[main]/Puppet_linux57poc::Motd_config/File[/etc/motd]/owner: owner changed 'puppet' to 'xiaonuo' notice: /Stage[main]/Puppet_linux57poc::Motd_config/File[/etc/motd]/group: group changed 'puppet' to 'root' notice: /Stage[main]/Puppet_linux57poc::Motd_config/File[/etc/motd]/mode: mode changed '0777' to '0440' notice: /Stage[main]/Allservice::Bluetooth_service/Service[bluetooth]/ensure: ensure changed 'running' to 'stopped' notice: Finished catalog run in 4.54 seconds

3.2.3 驗(yàn)證結(jié)果是否正確

[root@linux57poc puppet]# id xiaonuo uid=600(xiaonuo) gid=600(xiaonuo) groups=600(xiaonuo) [root@linux57poc puppet]# cat /etc/group | grep xiaonuo xiaonuo:x:600: [root@linux57poc puppet]# ll /etc/motd -r--r----- 1 xiaonuo root 313 Jan 2 06:17 /etc/motd [root@linux57poc puppet]#


轉(zhuǎn)載于:https://blog.51cto.com/dreamfire/1351173

總結(jié)

以上是生活随笔為你收集整理的通过案例了解puppet创建虚拟资源解决资源冲突问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 在线观看国产亚洲 | 一级黄色片国产 | 长篇高h乱肉辣文 | 久久久极品 | 亚洲欧美一区二区三区在线 | 成年人观看视频 | 日韩欧美色图 | 色射影院 | 色牛av | 四虎国产成人精品免费一女五男 | 欧美男女视频 | 中文字幕无人区二 | 中文字幕无码精品亚洲资源网久久 | 一级片一区二区三区 | 99精品视频在线观看免费 | 欧美日韩国产一区二区三区在线观看 | 久久久精品网站 | 不卡av网站 | 亚洲天堂一级 | 无码人妻精品一区二区中文 | 成人aaaaa| 免费人成在线观看网站 | 国产成人无码av在线播放dvd | 美国色视频 | 无码人妻精品一区二区三区66 | 久久久久久久久久久久国产精品 | 先锋影音久久 | 一本一道久久 | 极品尤物魔鬼身材啪啪仙踪林 | 女人18片毛片60分钟 | 少妇特黄一区二区三区 | 天堂少妇 | 日韩福利一区二区 | xxxxx毛片| 国产av天堂无码一区二区三区 | 伊人成人在线视频 | 欧美做爰全过程免费观看 | 国产11页| 日本少妇与黑人 | 福利网站在线 | 黄色国产视频 | 国产日韩欧美一区二区 | 国产免费一区二区三区 | 高清一区二区视频 | 少妇粉嫩小泬喷水视频www | 国自产拍偷拍精品啪啪一区二区 | 香蕉久久国产av一区二区 | 欧美一区二区视频在线观看 | 粉嫩av一区二区三区四区五区 | 国产主播福利在线 | 日韩av综合网站 | 成人免费毛片视频 | 精国产人伦一区二区三区 | 天天草视频 | 国产免费av网站 | 91在线公开视频 | 成年人在线免费看 | 国产视频一区二区 | xxxwww在线观看 | 亚洲图片欧美视频 | 国产精品久久久久久久av福利 | 国产高清视频在线观看 | 国产无遮挡又黄又爽又色视频 | 风间由美在线观看 | 精品国产丝袜一区二区三区乱码 | 国产精品毛片一区视频播 | 国产欧美日韩综合精品一区二区三区 | 日韩精品一区二区亚洲av | 国产精品suv一区二区 | 色综合狠狠 | 免费在线播放av | 国产又爽又色 | 青青草成人在线 | 香蕉成视频人app下载安装 | 欧美啪啪网 | 欧美日韩成人一区二区三区 | 日韩三级视频 | 中国美女一级片 | 人妻丰满熟妇岳av无码区hd | 国产av一区二区三区 | 亚洲AV无码国产精品 | 久久久久久久久久网 | 毛片你懂的 | 天海翼一二三区 | 国产日本欧美在线 | 欧美激情喷水 | 亚洲最大看欧美片网站 | av手机 | 69av网站 | 奇米狠狠777 | 日本少妇喷水视频 | 美女视频在线免费观看 | 天天人人 | 这里只有精品在线播放 | 一区二区免费在线视频 | a国产精品 | 91伊人网 | 久草超碰| xxxx亚洲|