Running Ansible within Salt How to smoothly migrate away from - - PowerPoint PPT Presentation

running ansible within salt
SMART_READER_LITE
LIVE PREVIEW

Running Ansible within Salt How to smoothly migrate away from - - PowerPoint PPT Presentation

Running Ansible within Salt How to smoothly migrate away from Ansible to Salt Pablo Surez Hernndez Don Vosburg SUSE Senior Software Engineer SUSE Technology Specialist psuarezhernandez@suse.com dvosburg@suse.com People are using Ansible


slide-1
SLIDE 1

Running Ansible within Salt

How to smoothly migrate away from Ansible to Salt

Pablo Suárez Hernández SUSE Senior Software Engineer psuarezhernandez@suse.com Don Vosburg SUSE Technology Specialist dvosburg@suse.com

slide-2
SLIDE 2

2

People are using Ansible out there!

slide-3
SLIDE 3

3

People are running Ansible out there!

  • Customer’s IT infrastructure already defined with Ansible
  • Efforts already invested. Security audit.
  • Ansible modules and playbooks all over the places.
slide-4
SLIDE 4

4

… and they always face the same problems!

  • Real-time monitoring
  • Event-driven Orchestration
  • Scalability
slide-5
SLIDE 5

5

Salt enables you! Let’s put Salt in your IT.

  • Real-time monitoring → beacons!
  • Event-driven Orchestration → reactors!
  • Scalability → zeromq, syndics!
slide-6
SLIDE 6

6

But wait! We have a problem!

slide-7
SLIDE 7

7

But wait! We have a problem!

  • Customer IT infrastructure already defined with Ansible
  • Efforts already invested. Security audit.
  • Ansible modules and playbooks all over the place.

No way of a smooth, step-by-step, planned migration. Only the hard

  • way. UNTIL NOW!
slide-8
SLIDE 8

8

Don’t panic!

slide-9
SLIDE 9

9

What would happen if ...

we could just simply consider the whole Ansible as a subset of the functionality that Salt provides ?

slide-10
SLIDE 10

10

Ansible Gate: Cooking Ansible with a bit of Salt

  • New module in Salt 2019.2.0 “Fluorine” release
  • An innovation coming from SUSE
  • Execute Ansible modules from Salt
  • Run your playbooks!
slide-11
SLIDE 11

11

Ansible Gate: Cooking Ansible with a bit of Salt

The Salt “Fluorine” release package is available in:

  • SLE15 and SLE15SP1. Base system package
  • OpenSUSE Leap 15/15.1, 42.3 and Tumbleweed
  • “systemsmanagement:saltstack:products:next/salt” at OBS [1]

[1] - https://build.opensuse.org/package/show/systemsmanagement:saltstack:products:next/salt

slide-12
SLIDE 12

12

How does the Ansible Gate work?

slide-13
SLIDE 13

13

How does the Ansible Gate work?

  • Ma

n a g e y

  • u

r A n s i b l e f r

  • m

S a l t

  • E

x e c u t e S a l t c

  • mma

n d s

  • n

y

  • u

r A n s i b l e ma n a g e d s y s t e ms ( s a l t

  • ma

s t e r & s a l t

  • s

s h )

slide-14
SLIDE 14

14

How does the Ansible Gate work?

# Some examples: # Ansible needs to be installed on the running system. $ salt-call --local ansible.list $ salt-call --local ansible.help system.ping $ salt-call --local ansible.system.ping data=”Hello from Salt”

slide-15
SLIDE 15

15

How does the Ansible Gate work?

# Some examples: # Ansible needs to be installed on “ansiblenode” minion. # Playbooks are already stored on the “ansiblenode” minion.

$ salt “ansiblenode” ansible.system.ping $ salt “ansiblenode” ansible.packaging.os.zypper name=”iotop” state=”installed”

$ salt “ansiblenode” ansible.playbook playbook=/srv/playbooks/install_nginx.yml

slide-16
SLIDE 16

16

  • Ma

n a g e y

  • u

r A n s i b l e f r

  • m

S a l t

  • E

n a b l e s r e a l

  • t

i me mo n i t

  • r

i n g a n d e v e n t

  • d

r i v e n

  • r

c h e s t r a t i

  • n

.

  • A

d d t h e wh

  • l

e mi n i

  • n

f u n c t i

  • n

a l i t y t

  • t

h e A n s i b l e ma n a g e d s y s t e ms .

slide-17
SLIDE 17

17

Reusing the Ansible Inventory

# Example of running Salt commands # on Ansible managed systems. $ salt-ssh --roster=ansible --roster-file=/etc/ansible/hosts

  • N all test.ping

$ salt-ssh --roster=ansible --roster-file=/etc/ansible/hosts

  • N webservers service.stop apache2

susecon-fluorine-minion1.tf.local Susecon-fluorine-minion2.tf.local [webservers] susecon-fluorine-minion1.tf.local [py3-hosts] susecon-fluorine-minion1.tf.local susecon-fluorine-minion2.tf.local [py3-hosts:vars] ansible_python_interpreter=/usr/bin/python3

/etc/ansible/hosts

slide-18
SLIDE 18

18

How to smoothly migrate from Ansible to Salt

slide-19
SLIDE 19

19

The common Ansible scenario

  • A

n s i b l e mo d u l e s

  • P

l a y b

  • k

s

slide-20
SLIDE 20

20

Step 0: Adding just few grains of Salt

slide-21
SLIDE 21

21

Adding some grains of Salt ...

  • A

n s i b l e mo d u l e s

  • P

l a y b

  • k

s

  • E

x e c u t e S a l t c

  • mma

n d s ( s a l t

  • s

s h )

  • n

A n s i b l e ma n a g e d s y s t e ms

slide-22
SLIDE 22

22

Step 1: Salt makes it tasty!

slide-23
SLIDE 23

23

Salt makes it tasty!

  • A

n s i b l e mo d u l e s

  • P

l a y b

  • k

s

  • E

x e c u t e S a l t c

  • mma

n d s ( s a l t

  • s

s h )

  • n

A n s i b l e ma n a g e d s y s t e ms

  • R

u n n i n g p l a y b

  • k

s a s S a l t j

  • b

s .

  • E

x e c u t e A n s i b l e mo d u l e s

  • n

t h e s a l t

  • mi

n i

  • n

s y s t e m.

  • R

u n n i n g p l a y b

  • k

s i n S L S fj l e s !

slide-24
SLIDE 24

24

  • A

n s i b l e mo d u l e s

  • P

l a y b

  • k

s

  • E

x e c u t e S a l t c

  • mma

n d s ( s a l t

  • s

s h )

  • n

A n s i b l e ma n a g e d s y s t e ms

  • N

e w g r

  • wi

n g S a l t ma n a g e d I T

  • E

v e n t

  • d

r i v e n

  • r

c h e s t r a t i

  • n
  • n

a h y b r i d e n v i r

  • n

me n t

slide-25
SLIDE 25

25

Step 2: Spreading the Salt all over the place!

slide-26
SLIDE 26

26

  • Ma

n a g e y

  • u

r l e g a c y A n s i b l e a s S a l t j

  • b

s .

  • R

e a l

  • t

i me mo n i t

  • r

i n g a n d e v e n t

  • d

r i v e n

  • r

c h e s t r a t i

  • n

i n a l l y

  • u

r I T ( s a l t

  • mi

n i

  • n

)

  • T

h e wh

  • l

e mi n i

  • n

f u n c t i

  • n

a l i t y

  • n

t h e

  • l

d A n s i b l e ma n a g e d s y s t e ms .

slide-27
SLIDE 27

27

Demo time!

slide-28
SLIDE 28

28

Questions?

slide-29
SLIDE 29

T h a n k Y

  • u

!

slide-30
SLIDE 30
slide-31
SLIDE 31

31