我正在尝试使用Packer和puppet-masterless builder创build一个AMI。 我想挂载一个20G的ebs卷到/test
。
基本上我想用puppet自动执行下面的命令。 我尝试过,但没有成功。 我是傀儡新手,尝试使用lvm模块,但面临着一些问题。 有人可以build议适当的方式来实现以下吗?
fdisk /dev/xvdk mkfs -t xfs /dev/xvdk1 mkdir -p /test echo "/dev/xvdk1 /test xfs defaults 0 0" >> /etc/fstab mount /test
既然你说你正在使用lvm
模块,那么你将如何完成你在Puppet中描述的内容。
# there is no Puppet intrinsic for this exec { '/sbin/fdisk /dev/xvdk': unless => '/bin/lsblk /dev/xvdk' } # create the /dev/xvdk1 filesystem filesystem { '/dev/xvdk1': ensure => present, fs_type => xfs, require => Exec['/sbin/fdisk /dev/xvdk1'], # after partition created } # create directory file { '/test': ensure => directory } # mount /test mount { '/test': ensure => mounted, # mount /test device => '/dev/xvdk1', # next five lines fstab mount options fstype => xfs, options => defaults, dump => 0, pass => 0, atboot => true, # add entry to fstab require => File['/test'], # after dir created subscribe => Filesystem['/dev/xvdk1'], # remount if/when filesystem changes }
请注意,您在此过程中未创建卷组或逻辑卷,并且您可能希望(尤其是逻辑卷)成功。 但是,上面的Puppet资源将完美地执行您在问题中描述的命令。
你应该在Puppet中使用mount
类型 。
尝试这个:
mount /dev/xvdk1 /test
希望能帮助到你