官术网_书友最值得收藏!

Using SDB modules

There are a number of places where SDB modules can be used. Because SDB retrieval is built into the config.get function in the config execution module, the following locations can be used to set a value for a Minion:

  • Minion configuration file
  • Grains
  • Pillars
  • Master configuration file

SDB is also supported by Salt Cloud, so you can also set SDB URIs in:

  • The main cloud configuration file
  • Cloud profiles
  • Cloud providers
  • Cloud maps

Regardless of where you set an SDB URI, the format is the same:

<setting name>: sdb://<profile name>/<key>

This can be particularly useful with cloud providers, all of which require credentials, but many of which also use more complex configuration blocks that should be checked into revision control.

Take, for example, the openstack Cloud provider:

my-openstack-config:
  identity_url: https://keystone.example.com:35357/v2.0/
  compute_region: intermountain
  compute_name: Compute
  tenant: sdb://openstack_creds/tenant
  user: sdb://openstack_creds/username
  ssh_key_name: sdb://openstack_creds/keyname

In this organization, compute_region and compute_name are probably public. And identity_url certainly is (else, how would you authenticate?). But the other information should probably be kept hidden.

If you've ever set up OpenStack in Salt Cloud, you've probably used a number of other arguments as well, many of which are probably not sensitive. However, a complex configuration file should probably be kept in a revision control system. With SDB URIs, you can do so without having to worry about exposing the data that is sensitive.

主站蜘蛛池模板: 凤冈县| 九寨沟县| 平湖市| 华亭县| 工布江达县| 贡山| 山阳县| 兰溪市| 开阳县| 左云县| 淮滨县| 霍林郭勒市| 府谷县| 兴化市| 久治县| 辛集市| 清流县| 永福县| 南郑县| 博白县| 江达县| 常熟市| 河北省| 芜湖市| 泸州市| 绵竹市| 固始县| 松滋市| 石河子市| 博乐市| 巩留县| 额敏县| 平南县| 封丘县| 西乌珠穆沁旗| 崇州市| 天峨县| 凤山市| 介休市| 疏附县| 雷山县|