2018년 5월 21일 월요일

[VyOS] bond 모드에 따른 동작 테스트

- 0 개의 댓글


lacp에 대한 이미지 검색결과

내부 자료로 작성했던 건데~!
다른 분들도 재미있어 할꺼 같아서 올려요 :) 


This is some information per bond mode.  

#1. Bond mode 4 (Active-Backup)
  • LACP by eth2 and eth3
  •  
Here is real MAC from switch #1

vagrant@ansible-vyos01:~$ cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 250
Up Delay (ms): 0
Down Delay (ms): 0

802.3ad info
LACP rate: slow
Min links: 0
Aggregator selection policy (ad_select): stable
Active Aggregator Info:
        Aggregator ID: 1
        Number of ports: 2
        Actor Key: 17
        Partner Key: 17
        Partner Mac Address: 08:00:27:d3:c8:d8

Slave Interface: eth2
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 08:00:27:31:83:08
Aggregator ID: 1
Slave queue ID: 0

Slave Interface: eth3
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 08:00:27:94:2a:fb
Aggregator ID: 1
Slave queue ID: 0


Here is real MAC from switch #2
vagrant@ansible-vyos02:~$ cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 250
Up Delay (ms): 0
Down Delay (ms): 0

802.3ad info
LACP rate: slow
Min links: 0
Aggregator selection policy (ad_select): stable
Active Aggregator Info:
        Aggregator ID: 1
        Number of ports: 2
        Actor Key: 17
        Partner Key: 17
        Partner Mac Address: 08:00:27:31:83:08

Slave Interface: eth2
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 08:00:27:d3:c8:d8
Aggregator ID: 1
Slave queue ID: 0

Slave Interface: eth3
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 08:00:27:b3:34:0f
Aggregator ID: 1
Slave queue ID: 0

And Debug from both.

Switch  #1  on eth2

1590.199790 08:00:27:31:83:08 -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1590.400544 08:00:27:d3:c8:d8 -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1620.199776 08:00:27:31:83:08 -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1620.399886 08:00:27:d3:c8:d8 -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1650.210313 08:00:27:31:83:08 -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1650.399770 08:00:27:d3:c8:d8 -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol

Switch #1 on eth3
1500.149660 08:00:27:94:2a:fb -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1500.649315 08:00:27:b3:34:0f -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1530.149616 08:00:27:94:2a:fb -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1530.649637 08:00:27:b3:34:0f -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1560.149682 08:00:27:94:2a:fb -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1560.649534 08:00:27:b3:34:0f -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1590.149482 08:00:27:94:2a:fb -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol
1590.650209 08:00:27:b3:34:0f -> 01:80:c2:00:00:02 LACP Link Aggregation Control Protocol


AND important thing is 01:80:c2:00:00:02 (Fixed multicast Address)
It is really cool isn’t it?

01-80-C2-00-00-02
0x8809
Ethernet OAM Protocol IEEE 802.3ah (A.K.A. "slow protocols")

Here is more info about 802.3ad and ah too.


#2. Bond mode 1 (Active-Backup)

You may already know what it is.
However there is some tweak for compatible option.

cat /etc/sysconfig/network-scripts/ifcfg-bond0
<snipped>
BONDING_OPTS="miimon=100 mode=active-backup fail_over_mac=1"


2-2.fail_over_mac=0 (default)

MAC per interface
-       All of interface are same MAC (from active INT)

[vagrant@ansible-server ~]$ ifconfig
bond0: flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST>  mtu 1500
        inet 10.10.1.10  netmask 255.255.255.0  broadcast 10.10.1.255
        inet6 fe80::a00:27ff:fe8e:98b8  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:8e:98:b8  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 648 (648.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


eth2: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST>  mtu 1500
        ether 08:00:27:8e:98:b8  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 15  bytes 1176 (1.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth3: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST>  mtu 1500
        ether 08:00:27:8e:98:b8  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 13  bytes 1086 (1.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Bonding info

[vagrant@ansible-server ~]$ cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth2
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth2
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 08:00:27:8e:98:b8
Slave queue ID: 0

Slave Interface: eth3
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 08:00:27:ea:f6:6b
Slave queue ID: 0


2-2. fail_over_mac=1

MAC per interface
-       Bond0 and active interface have same MAC.
-       However standby MAC is real MAC

[vagrant@ansible-server ~]$ ifconfig
bond0: flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST>  mtu 1500
        inet 10.10.1.10  netmask 255.255.255.0  broadcast 10.10.1.255
        inet6 fe80::a00:27ff:fe8e:98b8  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:8e:98:b8  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9  bytes 724 (724.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth2: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST>  mtu 1500
        ether 08:00:27:8e:98:b8  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
       TX packets 24  bytes 1900 (1.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth3: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST>  mtu 1500
        ether 08:00:27:ea:f6:6b  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 13  bytes 1086 (1.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Bonding info
[vagrant@ansible-server ~]$ cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup) (fail_over_mac active)
Primary Slave: None
Currently Active Slave: eth2
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth2
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 08:00:27:8e:98:b8
Slave queue ID: 0

Slave Interface: eth3
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 08:00:27:ea:f6:6b
Slave queue ID: 0

What if active interface is down?
  • Bond0’s MAC change to standby’s MAC. i.e. MAC is changed the perspective of receiver(switch?)

eth3: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST>  mtu 1500
        ether 08:00:27:ea:f6:6b  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 27  bytes 2160 (2.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

bond0: flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST>  mtu 1500
        inet 10.10.1.10  netmask 255.255.255.0  broadcast 10.10.1.255
        inet6 fe80::a00:27ff:feea:f66b  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:ea:f6:6b  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 21  bytes 1688 (1.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


And this mode have drawback. If you have interest about it, please refer to below.
Using "fail_over_mac=active" on Ethernet devices has other drawbacks, e.g. if gratuitous ARP is lost or incorrectly processed after a failover, bond is not accessible until it sends a packet.

Reference:

Source Code:

[Continue reading...]

2018년 5월 16일 수요일

[VyOS] VRRP 구성하기

- 0 개의 댓글
안녕하세~~~요오~!

요즘 앤서블 가지고 뭔가 하고 있어서....하하;;
NOS를 찾다 보니 VyOS라는 것을 찾았답니다. (그나마 네트워크 운영체제 처럼 생겨 있는거?)

물론 큐뮬러스라는게 있어서..그것도 함께 사용하고 있긴 하지만...하하 얘는 좀 독특해서
우선 VyOS로 VRRP를 구성 테스트 한 결과를 공유할려고 합니다~!


관련 이미지

간단하게 

VyOS로 3개의 구성을 다음처럼 하려고 해요~!

<VRRP Master / R1>            <VRRP Backup / R2>

            |                          |
     
                 < VRRP Leaf #1>


이미지는 베이그런트 클라우드에 올려둔 제 이미지를 사용했습니다~!
https://app.vagrantup.com/sysnet4admin/boxes/VyOS

구성 요약
<R1>
set interfaces ethernet eth2 address 10.0.0.11/24
set interfaces ethernet eth2 vrrp vrrp‐group 10
set interfaces ethernet eth2 vrrp vrrp‐group 10 virtual‐address 10.0.0.10/24
set interfaces ethernet eth2 vrrp vrrp‐group 10 preempt true
set interfaces ethernet eth2 vrrp vrrp‐group 10 priority 150
commit
save
<R2>
set interfaces ethernet eth2 address 10.0.0.12/24
set interfaces ethernet eth2 vrrp vrrp‐group 10
set interfaces ethernet eth2 vrrp vrrp‐group 10 virtual‐address 10.0.0.10/24
set interfaces ethernet eth2 vrrp vrrp‐group 10 priority 100
commit
save

<Leaf #1>
set interfaces ethernet eth2 address 10.0.0.13/24

상태 요약 for VRRP:
<R1>
vagrant@vyos:~$ show vrrp                   
                                 RFC        Addr   Last        Sync
Interface         Group  State   Compliant  Owner  Transition  Group
---------         -----  -----   ---------  -----  ----------  -----
eth2              10     MASTER  no         no     1m43s       <none>


<R2>
vagrant@vyos:~$ show vrrp
                                 RFC        Addr   Last        Sync
Interface         Group  State   Compliant  Owner  Transition  Group
---------         -----  -----   ---------  -----  ----------  -----
eth2              10     BACKUP  no         no     1m55s       <none>


여기서 저를 비롯한 많은 분들이 헷깔리실텐데요.
하하하;; 나만 그런가...
priority 높은게 대장입니다.

저는 솔직히 낮은게 좋은데 말이죠...ㅠㅠ


상태 요약 from Leaf #1:

vagrant@ansible-vyos03:~$ show arp
Address                  HWtype  HWaddress           Flags Mask            Iface
10.0.2.2                 ether   52:54:00:12:35:02   C                     eth0
10.0.2.3                 ether   52:54:00:12:35:03   C                     eth0
10.0.0.11                ether   08:00:27:25:c3:42   C                     eth2
10.0.0.10                ether   08:00:27:25:c3:42   C                     eth2

여하튼 ping을 여기서 10.0.0.10으로 보내고 Master 노드를 Reboot을 시키면요.

vagrant@ansible-vyos03:~$ ping 10.0.0.10
PING 10.0.0.10 (10.0.0.10) 56(84) bytes of data.
<snipped>
64 bytes from 10.0.0.10: icmp_req=44 ttl=64 time=0.256 ms
64 bytes from 10.0.0.10: icmp_req=45 ttl=64 time=0.257 ms
From 10.0.0.12: icmp_seq=46 Redirect Host(New nexthop: 10.0.0.10)
From 10.0.0.12: icmp_seq=47 Redirect Host(New nexthop: 10.0.0.10)
64 bytes from 10.0.0.10: icmp_req=46 ttl=64 time=1767 ms
64 bytes from 10.0.0.10: icmp_req=47 ttl=64 time=766 ms
64 bytes from 10.0.0.10: icmp_req=48 ttl=64 time=0.623 ms

이런 메시지가 찍히면서, nexthop이 바뀐다고 하네요

그리고

vagrant@ansible-vyos03:~$ show arp
Address                  HWtype  HWaddress           Flags Mask            Iface
10.0.2.2                 ether   52:54:00:12:35:02   C                     eth0
10.0.2.3                 ether   52:54:00:12:35:03   C                     eth0
10.0.0.12                ether   08:00:27:00:78:62   C                     eth2
10.0.0.11                ether   08:00:27:25:c3:42   C                     eth2
10.0.0.10                ether   08:00:27:25:c3:42   C                     eth2


10.0.0.12 부분이 추가가 되긴 하는데요... (Backup이었던 노드)

분명히 RFC 3768에서는

7.3. Virtual Router MAC Address

The virtual router MAC address associated with a virtual router is an IEEE 802 MAC Address in the following format: 00-00-5E-00-01-{VRID} (in hex in internet standard bit-order) The first three octets are derived from the IANA's OUI. The next two octets (00-01) indicate the address block assigned to the VRRP protocol. {VRID} is the VRRP Virtual Router Identifier. This mapping provides for up to 255 VRRP routers on a network.


00-00으로 잡아야 한다고 했는데 왜 얘는...물리 인터페이스 MAC을 -_-

허허허.....


그래서 VRRP 구성 노드들 (Master / Backup)에

set interfaces ethernet eth2 vrrp vrrp-group 10 rfc3768-compatibilit

호환되어라 하는 구성을 넣어 주니...재밌는게..
Leaf #1에서는 맥을 받아 오는데...ICMP에 응답을 안 해줍니다. -_-
어쩌라는건지...

vagrant@ansible-vyos03:~$ show arp
Address                  HWtype  HWaddress           Flags Mask            Iface
10.0.2.2                 ether   52:54:00:12:35:02   C                     eth0
10.0.2.3                 ether   52:54:00:12:35:03   C                     eth0
10.0.0.12                ether   08:00:27:00:78:62   C                     eth2
10.0.0.11                ether   08:00:27:25:c3:42   C                     eth2
10.0.0.10                ether   00:00:5e:00:01:0a   C                     eth2

vagrant@ansible-vyos03:~$ ping 10.0.0.10
PING 10.0.0.10 (10.0.0.10) 56(84) bytes of data.

--- 10.0.0.10 ping statistics ---
14 packets transmitted, 0 received, 100% packet loss, time 13020ms


이 때 인터페이스가 특이하네요....

<R1>
vagrant@vyos:~$ show arp
Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.1.5              ether   bc:5f:f4:e6:b0:f3   C                     eth1
10.0.0.13                ether   08:00:27:93:89:dd   C                     eth2v10

<R2>
vagrant@vyos:~$ show arp
Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.1.5              ether   bc:5f:f4:e6:b0:f3   C                     eth1

<leaf #1>
vagrant@ansible-vyos03:~$ show arp
Address                  HWtype  HWaddress           Flags Mask            Iface
10.0.2.2                 ether   52:54:00:12:35:02   C                     eth0
10.0.2.3                 ether   52:54:00:12:35:03   C                     eth0
10.0.0.12                ether   08:00:27:00:78:62   C                     eth2
10.0.0.11                ether   08:00:27:25:c3:42   C                     eth2
10.0.0.10                        (incomplete)                              eth2

인터페이스가 내부적으로 꼬인거 같네요 -_- 허허허허


====================================

여하튼 아주 간단하게 테스트는 가능하다는 것을 보여주네요 

참고로 VyOS와 Cumulus 구성을 섞어서는 되지 않았습니다. inanet으로는요. 

다 브릿지 하면 될수도....


그래두 Cumulus IP 하는 방법을 정리차원에서 넣어 둡니다~!

Cumulus IP 세팅하는 방법
sudo net add interface swp2 ip address 10.0.0.101/24
sudo net add interface swp2 ip gateway 10.0.0.10
sudo net pending  <<< 이건 확인하는 것
sudo net commit 

[Continue reading...]

2018년 5월 7일 월요일

[vagrant] windows2016 for Ansible

- 0 개의 댓글
안녕하세요!!

며칠 전에 유데미와 인프런 강의를 통해서도 안내했지만...
블로그에 오시는 분들도 도움이 되시면 좋을 것 같아서요 :)
앤서블 테스트용 windows 2016를 포팅했습니다!! 짝짝짝 셀프 짝~!
필요하신 분들은 사용하시면 될 것 같아요~~!


Windows 2016으로 실습 가능하도록 작성하고, 베이그런트 포장하여 올려두었습니다. 

해당 주소는 다음과 같고요..
https://app.vagrantup.com/sysnet4admin/boxes/Windows2016

사용법은 기존에 이미지에서 'sysnet4admin/windows2016' 로 이미지(박스) 이름만 변경하시면 됩니다. 

예시도 함께 드립니다~!
< 예시>
c:\HashiCorp>vagrant up ansible-node07
Bringing machine 'ansible-node07' up with 'virtualbox' provider...
==> ansible-node07: Importing base box 'sysnet4admin/windows2016'...
==> ansible-node07: Matching MAC address for NAT networking...
==> ansible-node07: Checking if box 'sysnet4admin/windows2016' is up to date...
==> ansible-node07: Setting the name of the VM: Ansible-Node07(github_SysNet4Admin)
==> ansible-node07: Clearing any previously set network interfaces...
==> ansible-node07: Preparing network interfaces based on configuration...
    ansible-node07: Adapter 1: nat
    ansible-node07: Adapter 2: bridged
==> ansible-node07: Forwarding ports...
    ansible-node07: 22 (guest) => 60017 (host) (adapter 1)
    ansible-node07: 5985 (guest) => 55985 (host) (adapter 1)
    ansible-node07: 5986 (guest) => 55986 (host) (adapter 1)
==> ansible-node07: Running 'pre-boot' VM customizations...
==> ansible-node07: Booting VM...
==> ansible-node07: Waiting for machine to boot. This may take a few minutes...
    ansible-node07: WinRM address: 127.0.0.1:55985
    ansible-node07: WinRM username: vagrant
    ansible-node07: WinRM execution_time_limit: PT2H
    ansible-node07: WinRM transport: negotiate
==> ansible-node07: Machine booted and ready!
Sorry, don't know how to check guest version of Virtualbox Guest Additions on this platform. Stopping installation.
==> ansible-node07: Checking for guest additions in VM...
==> ansible-node07: Setting hostname...
==> ansible-node07: Configuring and enabling network interfaces...
==> ansible-node07: Running provisioner: shell...
    ansible-node07: Running: inline PowerShell script
    ansible-node07: Ok.

[Continue reading...]

2018년 5월 4일 금요일

[Ansible] win_chocolatey 모듈을 통해서 살펴 보는 코드의 발전 방향

- 0 개의 댓글



안녕~ 하세요오~!

새벽부터 나와서 테스트해 본 결과에 대해서 공유하려고 해요~!
어제 누군가가 안 나오던 메시지가 나오는데 왜 이러는지 모르겠다고 해서요.

그 메시지는 어떤 걸까요?

win_chocolatey를 호출할 때, chocolatey가 설치되어 있지 않다면, 아래의 메시지를 출력하고 설치합니다.

[WARNING] xxxx xxxx


분명히 예전에 테스트할 때는 안 나왔던거 같은데 말이죠.

그래서 이럴 때는 소스 코드를 봐야죠!!

소스 코드는
/usr/lib/python2.7/site-packages/ansible/modules/windows/win_chocolatey.ps1

여기에 있습니다. 내부의 내용을 살펴 보면...


이 함수를 호출하는 구문을 다시 가보면,  이렇게 되어 있네요..

버전을 확인해 보니 2.4.0 - 2.5.2 (현재 최신) 까지는 모두 같고요.

2.3.3 버전을 확인해 보면...
다음과 같은 방식으로 진행되었네요.




어떤 느낌이 드시나요?

저는 말이죠...음....좀 더 사용자 들에게 정보를 제공해 주려고 노력하는구나?
라는게 느껴집니다 :)


아무래도 기능에는 별다른 차이는 없는데, 말이죠.
이렇게 계속 바꾸고 수정하는 것은 분명히 사용자를 배려하는 것처럼 보여져서요!!

이렇게 코드가 변경을 거치며, 더 사용자에게 접근하는 코드가 된다고 생각하시면 될 것 같습니다.!!

불금! 그리고 즐거운 주말되세요 ~!
[Continue reading...]

2018년 4월 24일 화요일

[Ansible] dest와 path에 대한 잡설

- 0 개의 댓글
path에 대한 이미지 검색결과

아주아주 오랜만이죠~!
그동안...아니..9월말까지는 바쁠꺼 같네요 ㅠㅠ
간만에 글을 쓰는 이유는요. 곧 2.5도 나오는데, 어떤 변화가 있나 좀 보고 있는 중에
주요한 변화는 엄청 많지만...아무도 신경 쓰지 않는 dest와 path에 대한 혼용에 대한 얘기를 해보려고 해요

일단, 2.5의 상태는 이러하네요

path로 넘어온 애들 (사실 그 전에 넘어옴)
http://docs.ansible.com/ansible/latest/modules/lineinfile_module.html
http://docs.ansible.com/ansible/latest/modules/blockinfile_module.html
http://docs.ansible.com/ansible/latest/modules/win_file_module.html


dest를 쓰는 애들
http://docs.ansible.com/ansible/latest/modules/get_url_module.html
http://docs.ansible.com/ansible/latest/modules/win_get_url_module.html
https://docs.ansible.com/ansible/latest/win_unzip_module.html
http://docs.ansible.com/ansible/latest/modules/git_module.html
http://docs.ansible.com/ansible/latest/modules/template_module.html
https://docs.ansible.com/ansible/latest/modules/copy_module.html


다 정리한 것은 아니지만요...2.5가 되었다고 해서 큰 변화는 없네요
미래를 감히~! 예측하자면, 3.0쯤 되면 말이죠
dest를 사용하고 있는 모듈들도 모두  path로 동일 될 것이라고!! 생각합니다.

아무래도 open-source base의 개발이다 보니 일관성이 다소 떨어지는 면이 있지만,
대세는~~! dest가 아닌 path이니까요 :)

사실 네트워크 관련 입장에서는 src(source의 약자)와 dst (destination의 약자)가 익숙하다 보니 mount에서 제공하는 src와 path를 쓰는게 어색하긴 하지만, output이라는 관점에서 모두 하나로!! path로 통일하는게 아주 좋다고 생각합니다.!!

대동단결에 대한 이미지 검색결과
대동단결의 중요성을 설파하신분~!!

별로 중요한 내용은 아니지만, ansible이 개발되고 있는 방향과 개별 component가 개발된다는 것을 이해한다면 의외로 재미있는..
쿠크다스 심장에 대한 이미지 검색결과
(아니라고 생각하시면 울면서 도망갈껍니다.)

주제라고 생각합니다.
언제가 올 앤서블 3.0을 기다라면서~~
시간이 되면 2.5에 대한 내용도 간단히 써 볼께요~!
빠잉~!



[Continue reading...]
 
Copyright © . 엔지니어를 위한 파이썬 및 기술 블로그 - Posts · Comments
Theme Template by BTDesigner · Powered by Blogger