2015-01-19 9 views
7

Veri Madenciliği için çeşitli sunucularda aynı anda cronjobs kurmak istiyorum. Ayrıca zaten Ansible and crontabs'daki adımları izliyordum ama şu ana kadar hiçbir şey işe yaramadı. Benansible oluşturma çalışma cronjobs

ERROR: cron is not a legal parameter at this level in an Ansible Playbook 

: i yaparsan yap i Hata mesajı almak /usr/lib/python2.6/site-packages/ansible/modules/

isterim: yanıtlayıcı '

Ve bazı bilinmeyen nedenlerden dolayı, benim Modüller bulunmaktadır 1.8.1 Ansel'ın crontab dosyasına yeni bir cronjob yüklemesini sağlamak için hangi kesin adımları izlemem gerektiğini bilmek.

  1. Bir oyun kitabı, bir cronjob yüklemek nasıl görünüyor?
  2. Bu kayıt defterini başlatmak için komut satırı nedir?

Bu garip soruyu soruyorum çünkü cron belgeleri yetersiz ve örnekler çalışmıyor. Belki de kurulumum yanlıştır, bu da cron'un çalışan bir örneğini denemek isterim. Bende

+0

Denemeye çalıştığınız kitabı listeleyin ve buna cevap vermekten mutluluk duyarız. – tedder42

cevap

16

bir ./roles/cron/tasks/main.yml dosyasında (çok çok gibi bir şey) bu:

- name: Creates weekly backup cronjob 
    cron: minute="20" hour="5" weekday="sun" 
     name="Backup mysql tables (weekly schedule)" 
     cron_file="mysqlbackup-WeeklyBackups" 
     user="root" 
     job="/usr/local/bin/mysqlbackup.WeeklyBackups.sh" 
    tags: 
    - mysql 
    - cronjobs 

'iş' listelenen shell script biraz yaratıldı main.yml dosyasında daha önce.

#Ansible: Backup mysql tables (weekly schedule) 
20 5 * * sun root /usr/local/bin/mysqlbackup.WeeklyBackups.sh 
+0

Bu sadece dosyayı oluşturur mu yoksa yürütmek için mi ayarlar? Aynısını benim kitabımda da denedim. Dosya belirtilen yerde oluşturuldu. Ama crontab -l'yi çalıştırdığımda "kullanıcı için crontab yok" mesajını – Ishan

+2

'crontabs -l' sadece '/ var/spool/cron/crontabs/{username}' olarak görüyorum. –

1

Eğer kullanıcı Crontab üzerinde çalışacak şekilde kurmaya ediyorsanız:

- name: Install Batchjobs on crontab 
    cron: 
    name: "Manage Disk Space" 
    minute: "30" 
    hour: "02" 
    weekday: "0-6" 
    job: "home/export/manageDiskSpace.sh > home/export/manageDiskSpace.sh.log 2>&1" 
    #user: "admin" 
    disabled: "no" 
    become_user: "{{ admin_user }}" 
    tags: 
    - cronjobs 

Bu görev /etc/cron.d/mysqlbackup-WeeklyBackups bir dosya oluşturur

Başvuru [1]: https://docs.ansible.com/ansible/latest/cron_module.html