Ansible Copy Examples Ansible Copy Module

Ansible copy module is een van de modules in de bestandsmodules in Ansible. De Ansible kopieermodule wordt gebruikt voor het kopiëren van bestanden van de Ansible machine naar de externe server. Met ansible kopieer module kunt u verschillende dingen doen laten we eens kijken wat we kunnen doen met ansible kopieer module. In deze blog post zullen we zien ansible copy modules voorbeelden en hoe de bestanden te kopiëren van ansible master naar remote server.

Kopieer het bestand met force yes-Ansible Copy Module

tasks:- name: Copy file to a remote machine copy: src: ~/devops.txt dest: /tmp

In dit voorbeeld devops.txt bestand in de ansible machine zal worden gekopieerd naar de plaats van bestemming op de externe server. maar als hetzelfde bestand (met dezelfde naam) al bestaat op de plaats van bestemming op de externe server, zal het vervangen worden door het bestand van ansible machine. Het zal geen rekening houden of het bestand al dan niet bestaat op de externe locatie. Het bestand wordt blindelings gekopieerd van de ansible machine naar de server op afstand.

  • Ansible Fetch module tutorial

In de standaardinstelling is force yes

tasks:- name: Copy file to a remote machine copy: src: ~/devops.txt dest: /tmp force: yes

Dus beide bovenstaande codes werken op dezelfde manier. Force vermelden: ja of force verwijderen: ja, dat hangt van u af. Voor een beter begrip kunt u vermelden kracht: ja.

Kopieer het bestand met kracht geen-Ansible Copy Module

tasks:- name: Copy file to a remote machine copy: src: ~/devops.txt dest: /tmp force: no

Hier zal het niet forceren. Als het bestand al bestaat op de plaats van bestemming zal het niet het bestand vervangen. Dat betekent dat we niet forceren om het bestand te kopiëren van de ansible machine naar de server op afstand.

Kopieer een directory van de ansible machine naar een bestemming op afstand-Ansible Copy Voorbeelden

laten we aannemen dat we een directory hebben genaamd scripts. In deze directory hebben we twee bestanden genaamd file1 en file2 en Linux directory, in Linux directory hebben we twee bestanden genaamd file 3 en file 4.

scripts├── file1├── file2└── linux ├── file3 ├── file4

Nu de taak is moeten we verzenden of Linux directory te kopiëren naar de externe server.

tasks:- name: Copy a directory to a remote machine copy: src: /User/scripts/linux dest: /tmp

Met bovenstaande code kun je de Linux directory van ansible machine naar een server op afstand sturen of kopiëren.

Zie dat aan het eind van src:/user/scripts/linux geen (/) is vermeld, dus daarom wordt de Linux directory van ansible machine naar de server op afstand gekopieerd.

De uitvoer in de tmp directory op afstand.

├── tmp└── linux ├── file3 ├── file4

Als je (/) vermeldt aan het einde van src, zullen de bestanden in de Linux directory (file3 en file4) worden gekopieerd naar de remote.

zie src:/user/scripts/linux/

tasks:- name: Copy files to a remote machine copy: src: /User/scripts/linux/ dest: /tmp

de output in de remote tmp directory

└── tmp ├── file3 ├── file4

Alleen bestanden in de Linux directory zullen worden gekopieerd naar de remote locatie als je (/) vermeldt aan het einde van de source.

Kopieer het bestand met permissies-Ansible Kopieer Voorbeelden

- copy: src: /srd/myfiles/abc.conf dest: /etc/abc.conf owner: abc group: abc mode: 0644

Door gebruik te maken van bovenstaande code kun je het bestand met verschillende permissies kopiëren.

- copy: src: /srd/myfiles/abc.conf dest: /etc/abc.conf owner: abc group: abc mode: "u=rw,g=r,o=r"

Het zal werken als hetzelfde voorbeeld als hierboven. Hier hebben we de permissies vermeld met een symbolische mode gelijk aan 0644. we kunnen elk type mode gebruiken.

Kopieer inhoud naar externe server-Ansible Kopieer Voorbeelden

copy:content: "Hello devops"dest: /tmp/devops.txt

Met behulp van deze module kunt u inhoud schrijven en die inhoud naar de externe server kopiëren. Als het bestand nog niet bestaat op een externe locatie zal het dat devops.txt bestand aanmaken en de inhoud schrijven naar devops.txt. Hier is devops.txt een bestandsnaam die je eender welke bestandsnaam kan geven. Met de kopieermodule ansible kunnen we een bestand met inhoud maken.

Als u meer wilt weten over ansible copy, kunt u de documentatie van ansible raadplegen.

  • https://docs.ansible.com/ansible/2.3/copy_module.html

Plaats een reactie