Product BoltOpen Source PuppetPuppet EnterpriseContinuous Delivery for Puppet EnterprisePuppet RemediatePuppet DiscoveryPipelines for ApplicationsPipelines for ContainersPuppetDBProject NebulaPuppet Development KitPuppet Plug-in for VMware vRealize AutomationPuppet License ManagerContainer Registry Version Version latestVersion 6.4Version 6.0Version 5.5Version 4.10 Open source Puppet 6.10Welcome to Puppet 6.10 Puppet architecture Puppet packages and versions Puppet language and codeGlossaryRelease notesPuppet release notesPuppet known issuesGetting started with PuppetManaging NTPManaging DNSManaging sudoManage firewall rulesInstalling and upgradingSystem requirementsUsing the Puppet platformInstalling PuppetInstalling agentsUpgradingConfiguring Puppet Puppet settingsKey configuration settingsPuppet's configuration files puppet.conf: The main config file environment.conf: Per-environment settingsfileserver.conf: Custom fileserver mount pointspuppetdb.conf: PuppetDB server locationshiera.yaml: Data lookup configurationautosign.conf: Basic certificate autosigning csr_attributes.yaml: Certificate extensions custom_trusted_oid_mapping.yaml: Short names for cert extension OIDsdevice.conf: Network hardware accessroutes.yaml: Advanced plugin routingConfiguring Puppet Server Puppet Server's config filespuppetserver.conf: Main config fileauth.conf: Access controlwebserver.conf: Jetty web server configweb-routes.conf: Mount points for component servicesglobal.conf: Trapperkeeper settingsca.conf: CA service access control (deprecated)master.conf: Authorization by HTTP header (deprecated)product.conf: Configuring Product-level Interactions (optional)logback.xml: Logging level and locationAdvanced logging configurationBootstrap upgrade notesAdding file server mount pointsChecking the values of settingsEditing settings on the command lineConfiguration settings referenceSettings that differ under Puppet ServerImportant directories and filesCode and data directory (codedir)Config directory (confdir)Main manifest directoryThe modulepathSSL directory (ssldir)Cache directory (vardir)EnvironmentsAbout environmentsCreating environmentsEnvironment isolationModulesModule fundamentalsPlug-ins in modulesModule cheat sheetInstalling and managing modules from the command lineBeginner's guide to writing modulesModule metadataDocumenting modulesDocumenting modules with Puppet Strings Puppet Strings style guidePublishing modulesContributing to Puppet modulesPuppet services and toolsPuppet commandsRunning Puppet commands on Windows Puppet master Puppet ServerPuppet agent on *nix systemsPuppet agent on WindowsPuppet apply Puppet devicePuppet Server IndexAbout Puppet ServerRelease NotesDeprecated featuresCompatibility with Puppet agentInstalling Puppet ServerConfiguring Puppet ServerDiffering behavior in puppet.confUsing and extending Puppet Server SubcommandsUsing Ruby gemsUsing an external certificate authorityIntermediate CAInfrastructure certificate revocation listExternal SSL terminationMonitoring Puppet Server metricsHTTP client metricsTuning guideApplying metrics to improve performanceScaling Puppet ServerRestarting Puppet ServerKnown issues and workarounds Known issuesSSL problems with load-balanced PuppetDB servers (“Server Certificate Change” error)Administrative API endpoints Environment cacheJRuby poolCA v1 API CertificateCertificate signing requestsCertificate statusCertificate revocation listServer-specific Puppet API endpoints Environment classesEnvironment modulesStatic file contentStatus API endpoints Status servicesMetrics API endpoints v1 metricsv2 (Jolokia) metricsDeveloper information Developer debuggingRunning from sourceTracing code eventsThe Puppet languageLanguage visual indexThe Puppet language style guide Files and paths on Windows Code comments VariablesResourcesRelationships and orderingClassesDefined resource typesBolt tasksType aliasesExpressions and operatorsConditional statements and expressionsFunction callsBuilt-in functionsNode definitionsFacts and built-in variablesReserved words and acceptable namesCustom resourcesDevelop types and providers with the Resource APIResource API referenceLow-level method for developing types and providersType developmentProvider developmentValues and data typesStringsNumbersBooleansArraysHashesRegular expressionsSensitiveTime-related data typesUndefDefaultResource and class referencesResource typesData type syntaxAbstract data typesTemplatesCreating templates using Embedded PuppetCreating templates using Embedded RubyAdvanced constructsIteration and loopsLambdasResource default statementsResource collectorsVirtual resourcesExported resourcesTagsRun stagesDetails of complex behaviorsContainment of resourcesScopeNamespaces and autoloadingWriting custom functionsCustom functionsCustom Puppet functionsWriting custom functions in RubyOverviewRuby function signaturesUsing special features in implementation methodsIterative functionsRefactoring legacy 3.x functionsSecrets store integrations and agent-side data retrievalWrite a Puppet function to store secrets Hiera About Hiera Getting started with Hiera Configuring HieraCreating and editing data Looking up data with Hiera Writing new data backends Upgrading to Hiera 5 Facter Facter release notesCore factsCustom factsCustom facts walkthroughExternal factsConfiguring Facter with facter.confResource typesAll resource typesCore types cheat sheetOptional resource types for WindowsexecUsing exec on Windows fileUsing file on WindowsfilebucketgroupUsing user and group on WindowsindexnotifypackageUsing package on Windows resourcesscheduleserviceUsing servicestagetidyuserTracking Puppet activity with reportsReportingReport referenceWriting custom report processorsReport formatWriting external node classifiersReferences (settings, functions, etc.) Configuration settings referenceFunctionsMetaparametersBuilt-in report processorsRuby API for developing extensionsMan pages IndexCore tools puppet agentpuppet applypuppet modulepuppet resourcepuppet lookupOccasionally useful puppet configpuppet describepuppet devicepuppet docpuppet helppuppet manpuppet nodepuppet parserpuppet pluginNiche puppet catalogpuppet factspuppet filebucketpuppet keypuppet reportpuppet statusHTTP API Puppet Server HTTP APIPSONPuppet v4 API CatalogPuppet v3 APICatalogNodeFile bucket fileFile contentFile metadataReportEnvironmentsStatusCA v1 API CertificateCertificate signing requestsCertificate statusCertificate revocation listSchemas (JSON)Certificate authority and SSL Puppet Server CA commandsIntermediate CAAutosigning certificate requestsCSR attributes and certificate extensionsRegenerating certificates in a Puppet deploymentExternal CAExternal SSL termination with Puppet ServerPuppet's internalsAgent-master HTTPS communicationsCatalog compilationExperimental featuresMsgpack support Expand menu Collapse menu Open menu Close menu Helpful modules docs linksOther useful places Understanding Puppet modules Module fundamentals Plug-ins in modules Modules cheatsheet Managing modules Installing modules Upgrading modules Uninstalling modules puppet-module command reference Writing modules Beginner's guide to modules Module metadata Publishing modules Documenting modules Writing module documentation Puppet Strings Puppet Strings style guide Publishing modules On the Forge Contributing to modules Contributing to Puppet modules Reviewing community pull requests Modules on the Puppet ForgeThe Forge module repository Puppet approved modules Puppet supported modules module quality scoring Modules in Code Manager Managing modules with the Puppetfile Puppet language reference Classes Defined types Puppet tasks and plans Developing and testing modules Puppet Development Kit (PDK) Developing types and providers Puppet Resource API Community resources Puppet Community Slack puppet-users email group Back to top
Helpful modules docs linksOther useful places Understanding Puppet modules Module fundamentals Plug-ins in modules Modules cheatsheet Managing modules Installing modules Upgrading modules Uninstalling modules puppet-module command reference Writing modules Beginner's guide to modules Module metadata Publishing modules Documenting modules Writing module documentation Puppet Strings Puppet Strings style guide Publishing modules On the Forge Contributing to modules Contributing to Puppet modules Reviewing community pull requests Modules on the Puppet ForgeThe Forge module repository Puppet approved modules Puppet supported modules module quality scoring Modules in Code Manager Managing modules with the Puppetfile Puppet language reference Classes Defined types Puppet tasks and plans Developing and testing modules Puppet Development Kit (PDK) Developing types and providers Puppet Resource API Community resources Puppet Community Slack puppet-users email group