一。Foreman环境:

foreman建好后,系统默认创建了3个环境:production,development,common,

1. production:

在puppet.conf里已经定义其调用的路径,是foreman默认使用的环境,通过foreman-proxy验证后的cliente均默认会进入这个环境

2. development:

在puppet.conf里已经定义其调用的路径,新装的foreman的web界面是看不到,其modules目录下有模块后,通过导入模块才能

将此环境导入到foreman

3. common:

在puppet.conf里没有定义,如果需要用到common这个环境,则可以在puppet.conf里创建其调用的路径,如下:

vi /etc/puppet/puppet.conf,添加以下:

[common]
          modulepath = /etc/puppet/environments/common/modules:/etc/puppet/environments/common:/usr/share/puppet/modules
          config_version =

新装的foreman的web界面是看不到,其modules目录下有模块后,通过导入模块才能将此环境导入到foreman

二。 建模块:

1. 进入 development 环境的模块目录

# cd /etc/puppet/environments/development/modules

2. 创建"修改root密码"模块的三个组成目录:

# mkdir -p chpasswd/{manifests,templates,files}

注意: 此处的 chpasswd文件夹的名字必须和后面新建的类的名字一致,否则client会报找不到类的错误提示

3. 进入写puppet类的目录:

# cd chpasswd/manifests/

4. 创建init.pp文件:

# touch init.pp,并添加以下文件:

class chpasswd {

user { "root":
                                             password  => '$6$6TXhJimPoQrOe52Y$XxFjwJ6s5LZ1',

}

                                  }

5. 检查语法

# puppet parser validate init.pp

6. 客户端模拟执行:

puppet agent --test  --noop

三。 把"修改root密码"模块导入到foreman里面

1. 从“环境”处导入:点击“更多”-》配置-》环境

2. 点击右上角的 “从server1.xxx.com导入”按钮

备注:此处我用了两个环境,development是测试环境,production是生产环境,在这个另个环境里

我均创建了"chpasswd模块",所以截图上foreman的两个环境里都会检测到puppet新建的类

3. 选中,点击更新,并到 puppet类里去查看:

Foreman--Puppet类导入的更多相关文章

  1. tp5.1 phpspreadsheet- 工具类 导入导出(整合优化,非原创,抄一抄,加了一些自己的东西,)

    phpspreadsheet-工具类 导入导出(整合优化,非原创,抄一抄,加了一些自己的东西)1. composer require phpoffice/phpspreadsheet2. 看最下面的两 ...

  2. Eclipse构建Activiti项目,类导入提示功能不能使用

    Eclipse新建一个新的Activiti项目(Activiti项目默认使用Maven管理项目),接着配置好pom.xml添加需要的jar包依赖,引入依赖之后发现在测试类中没有提示导入所需要的包的选项 ...

  3. Python 学习笔记16 类 - 导入

    我们在编码的过程中,可能会给对象添加越来越多的功能,即使我们使用了继承,也不可避免的使文件越来越臃肿. 为了避免这种情况, Python允许将对象存储在模块中,并且可以在其他模块中进行导入. 其实这和 ...

  4. python 类 --导入类

    导入类 1.1.导入单个类 如何导入单个类 以上一节为例,编写一个car.py程序 编写一个新程序my_car.py 希望在my.car.py文件中直接使用car.py中的函数,使用from car ...

  5. Centos 7 Puppet之foreman介绍安装测试

    一.简介 1.前言(引用一下网上的资料) 随着企业的 Linux 系统数量越来越多,管理问题便成为一个相对麻烦并需要急 迫解决的问题,这里有 2 个 Key Message:1)统一管控体系非常重要, ...

  6. Centos7+puppet+foreman,实现部署OS

    一.简介 1. 需要实现操作系统的部署 foreman提供了一个基于kickstart的部署工具,输入一台服务器的部署网卡的mac地址和hostname.ip等信息,就能自动的帮我们部署完,并且,还可 ...

  7. 【Python】导入类

    导入单个类 随着不断添加类,可能会使文件变得很长,那么此时,需要将类存储在模块中,然后在主程序导入类即可 book.py class Book(): '''模拟一本书''' def __init__( ...

  8. JAVA导入支持类

    导入支持类(可以是JDK基础类或者自己编写的类),可以供本类调用方法和属性. java中import用法: 1.单类型导入(single-type-import),例如import java.io.F ...

  9. MinGW dll导入导出类

    dll不仅可以导入导出函数,还可以导入导出类.这篇文章就来介绍如何将类导入dll中并导出. 首先我们建立一个名为dll.cpp的文件(又是这种破名字),里面写上: #include <iostr ...

随机推荐

  1. qml实现窗口拖动

    在去掉窗口标题栏后窗口会失去鼠标拖动效果,所以需要自己添加拖动效果. 实现代码: ApplicationWindow {     id: mainWindow     visible: true    ...

  2. canvas 的学习

    canvas 绘制直线的API有: 1.moveTo()起点坐标. 2.lineTo()绘制的直线 3. fillStyle以及 flii()是绘制实体的 4. strokeStyle 和stroke ...

  3. Spark Streaming揭秘 Day23 启动关闭源码图解

    Spark Streaming揭秘 Day23 启动关闭源码图解 今天主要分析一下SparkStreaming的启动和关闭过程. 从Demo程序出发,主要聚焦在两段代码: 启动代码: 关闭代码: 启动 ...

  4. java之StringBuffer

    StringBuffer就是字符串缓冲区,用于存储数据的容器. 特点:长度可变,可存储不同类型的数据,最终转化成字符串使用,可以对字符串修改 功能: 添加:append(value), insert( ...

  5. Opencv 的数据结构

    opencv的基本数据结构 结构 成员 意义 CvPoint int x,y 图像中的点 CvPoint2D32f float x,y 二维空间中的点 CvPoint3D32f float x,y,z ...

  6. 【python】开始python之旅

    上午开始抽空学习python,具体内容如下: (1)安装了python 2.7 (2)安装了notepad ++,安装它之前,在notepad++和Sublime Text之间纠结了一下,baidu了 ...

  7. C++ 关联容器详解——从内部结构到应用

    关联容器不同于顺序容器的是:顺序容器底层用数组实现,为线性结构:关联容器在实现中,用到的非线性存储方式: 顺序容器是通过元素在容器中的位置顺序存储和访问元素,而关联容器是通过键(key)存储和读取元素 ...

  8. hdu 4679 Terrorist’s destroy 树形DP

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=4679 题意:给定一颗树,每条边有一个权值w,问切掉哪条边之后,分成的两颗树的较大的直径*切掉边的权值最小? ...

  9. W25Q32的使用

    一.W25Q32简介 W25Q32是华邦公司推出的大容量“SPI  FLASH” 产品. 1.容量 32M-Bit/4M-byte(4,194,304) 2.存储结构 页:256-bytes 扇区:4 ...

  10. EXTJS 4.2 资料 控件之 Store 用法

    最近工作,发现在Extjs中自定义Store的功能挺多,特意在此做笔记,几下来,具体代码如下: 1.定义Store //定义Store var ItemSelectorStore = new Ext. ...