# Using puppet for elastic upgrade to 5.x

**URL:** https://discuss.elastic.co/t/using-puppet-for-elastic-upgrade-to-5-x/116108
**Category:** Elasticsearch
**Created:** [January 18, 2018, 5:28pm UTC](https://discuss.elastic.co/t/using-puppet-for-elastic-upgrade-to-5-x/116108 "2018-01-18T17:28:31Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![Sa1](https://avatars.discourse-cdn.com/v4/letter/s/85f322/32.png) [@Sa1](https://discuss.elastic.co/u/Sa1)
#### Post date: [January 18, 2018, 5:28pm UTC](https://discuss.elastic.co/t/using-puppet-for-elastic-upgrade-to-5-x/116108/1 "2018-01-18T17:28:31Z")

</div>

sorry for being ignorant .How puppet will help for elastic upgrade from 2,x to 5.x?  
i know puppet can be used to automate large scale elastic deployments. from upgrade point of view how can i use puppet.can some one throw light on how a manifest look like

---

<div class="post-metadata">

### Author: ![tylerjl](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/tylerjl/32/44965_2.png) [@tylerjl](https://discuss.elastic.co/u/tylerjl)
#### Post date: [January 18, 2018, 9:10pm UTC](https://discuss.elastic.co/t/using-puppet-for-elastic-upgrade-to-5-x/116108/2 "2018-01-18T21:10:34Z")

</div>

In general, the Puppet module will just try to enforce what you've specified in your manifest, but will not handle things like migrations for breaking changes that may occur between major versions. For example, if an initial manifest looks like this:

```auto
class { 'elasticsearch':
  repo_version => '2.x',
  autoupgrade => true,
}

```

And you were to change the manifest to this:

```auto
class { 'elasticsearch':
  repo_version => '5.x',
  autoupgrade => true,
}

```

(updating the `repo_version`), Puppet will update your package and services but you still need to bear in mind any changes that Elasticsearch upgrades will bring. For example, the `name` setting was supported in 2.x but not 5.x, so if your manifest included

```auto
config => { 'name' => 'foobar' }

```

You would need to change it to

```auto
config => { 'node.name' => 'foobar' }

```

All of these types of breaking changes need to be checked manually against the list of breaking changes in 5.x.

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [February 15, 2018, 9:10pm UTC](https://discuss.elastic.co/t/using-puppet-for-elastic-upgrade-to-5-x/116108/3 "2018-02-15T21:10:56Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
