9 ספרי השמעה ראויים למינהל Windows

אני אראה לך מספר פעולות שמנהל יכול לבצע במערכת חלונות מרוחקת באמצעות חוברת-Playbook.


Ansible הוא אחד הכלים המשומשים ביותר ב- DevOps הקיימים כיום. הוא מספק חבורה של מודולי חלונות המשמשים להגדרת תצורה וניהול של שרת Windows. אני מניח שכבר התקנת את Ansible במערכת Windows שממנה ברצונך לנהל את שרתי Windows.

להלן כמה מהמטלות הנפוצות המבוצעות על ידי מנהלי Windows על בסיס יומי. תופתעו לראות כמה קל ניתן לנהל את Windows באמצעות Ansible.

כתובת ה- IP המשמעותית של מכשיר הבקר של Windows היא 192.168.0.106, וכתובת ה- IP של מערכת Windows המרוחקת שלי היא 192.168.0.102. לפני שתתחיל, וודא שאתה מפעיל מודול win_ping כדי לבדוק אם אתה מסוגל להתחבר לשרת מרוחק של חלונות או לא.

[מוגן בדוא”ל] ~
$ אחראי win-m win_ping
192.168.0.102 | הצלחה => {
"השתנה": שקר,
"פינג": "פונג"
}

החיבור שלי למארח מרוחק הוא מוצלח.

אז בואו נתחיל עם ספרי פלייבק עם תשובה …

העתקת קבצים

win_copy הוא מודול אחראי המעתיק קובץ מהשרת המקומי למארח Windows מרוחק. אשתמש במודול זה כדי להעתיק קובץ PDF יחיד.

השתמש בקוד YAML שלהלן, ציין את נתיבי המקור והיעד.

[מוגן בדוא”ל] ~
$ vi copy.yml

– מארחים: לנצח

משימות:

– שם: העתק קובץ

win_copy:

src: C: \ output.pdf

dest: C: \ ansible_examples \

remote_src: כן

הפעל את ספר ההשמעה האחראי של win_copy.

[מוגן בדוא”ל] ~
$ ansible-playbook copy.yml

PLAY [win] *********************************************** *************************************************** ***********************************

משימה [איסוף עובדות] ********************************************** *************************************************** ************************
בסדר: [192.168.0.102]

משימה [העתק קובץ] ********************************************* *************************************************** ******************************
שונה: [192.168.0.102]

שחק RECAP ************************************************* *************************************************** *********************************
192.168.0.102
: בסדר = 2 השתנה = 1 בלתי ניתן להשגה = 0 נכשל = 0
דילג = 0 חולץ = 0 התעלם = 0

הקובץ הועתק בהצלחה במיקום היעד במערכת חלונות מרוחקת.

עותק חלונות אחראי

התקן / הסר התקנה של MSI

כדי להתקין יישום באמצעות קובץ MSI, עליך להשתמש win_get_url כדי להזכיר את הנתיב של קובץ MSI להורדה ואז להשתמש במודול win_package כדי להתקין אותו. המצב הנוכחי פירושו שה- MSI יותקן במחשב, והיישום במצב הנוכחי.

הנה, אני מתקין את אפאצ’י.

קוד YAML שישמש:

[מוגן בדוא”ל] ~
$ vi msi.yml

– שם: התקנת Apache MSI
מארחים: לנצח

משימות:
– שם: הורד את מתקין Apache
win_get_url:
url: https://archive.apache.org/dist/httpd/binaries/win32/httpd-2.2.25-win32-x86-no_ssl.msi
dest: C: \ ansible_examples \ httpd-2.2.25-win32-x86-no_ssl.msi

– שם: התקן את MSI
win_package:
נתיב: C: \ ansible_examples \ httpd-2.2.25-win32-x86-no_ssl.msi
מדינה: הווה

הפעל את ספר ההשמעה האחראי להתקנה באמצעות MSI.

[מוגן בדוא”ל] ~
$ ansible-playbook msi.yml

PLAY [התקנת Apache MSI] ********************************************* *************************************************** *******************

משימה [איסוף עובדות] ********************************************** *************************************************** ************************
בסדר: [192.168.0.102]

משימה [הורד את מתקין אפאצ’י] ******************************************** *************************************************** ************
שונה: [192.168.0.102]

משימה [התקן MSI] ********************************************** *************************************************** *****************************
שונה: [192.168.0.102]

שחק RECAP ************************************************* *************************************************** *********************************
192.168.0.102
: בסדר = 3 השתנה = 2 לא ניתן להגיע = 0 נכשל = 0
דילג = 0 חולץ = 0 התעלם = 0

כעת, עבור אל מערכת החלונות ובדוק אם יישום ה- Apache הותקן בהצלחה.

C: \ משתמשים \ geekflare>תקליטור C: \ קבצי תוכנית (x86) \ Apache Software Foundation \ Apache2.2 \ bin
C: \ קבצי תוכנית (x86) \ קרן Apache Software \ Apache2.2 \ bin>httpd -v
גרסת השרת: Apache / 2.2.25 (Win32)
שרת נבנה: 10 ביולי 2013 01:52:12

אתה יכול גם להתקין יישומים באמצעות MSI עם ארגומנטים. להלן דוגמה זהה לעיל, אך במקום מצב אנו משתמשים בטיעון התקנה כדי להתקין אפאצ ‘י.

קוד YAML שישמש:

– שם: התקנת Apache MSI

מארחים: לנצח

משימות:

– שם: הורד את מתקין Apache

win_get_url:

url: https://archive.apache.org/dist/httpd/binaries/win32/httpd-2.2.25-win32-x86-no_ssl.msi

dest: C: \ ansible_examples \ httpd-2.2.25-win32-x86-no_ssl.msi

– שם: התקן את MSI

win_package:

נתיב: C: \ ansible_examples \ httpd-2.2.25-win32-x86-no_ssl.msi

טיעונים:

– /להתקין

– / פסיבי

– / norestart

כדי להסיר התקנה של יישום באמצעות קובץ MSI, עליכם להשתמש במודול win_package. המצב שנעדר פירושו שהיישום יוסר באמצעות קובץ MSI.

הנה, אני מסיר את Apache.

[מוגן בדוא”ל] ~
$ vi uninstall_msi.yml

– שם: הסרת התקנת Apache MSI

מארחים: לנצח

משימות:

– שם: הסר את התקנת MSI

win_package:

נתיב: C: \ ansible_examples \ httpd-2.2.25-win32-x86-no_ssl.msi

מצב: נעדר

הפעל את ספר ההשמעה האחראי להסרת ההתקנה באמצעות MSI.

[מוגן בדוא”ל] ~
$ ansible-playbook uninstall_msi.yml

הפעל [הסרת התקנת אפאצ’י MSI] ********************************************* *************************************************** *******************

משימה [איסוף עובדות] ********************************************** *************************************************** ************************
בסדר: [192.168.0.102]

משימה [הסר את התקנת MSI] ********************************************** *************************************************** **************************
שונה: [192.168.0.102]

PLAY RECAP ************************************************* *************************************************** *********************************
192.168.0.102
: בסדר = 2 השתנה = 1 בלתי ניתן להשגה = 0 נכשל = 0
דילג = 0 חולץ = 0 התעלם = 0

כעת, אם אבדוק את גרסת האפאצ’י, אקבל את הפלט שלהלן ככל שהיישום הוסר.

C: \ קבצי תוכנית (x86) \ קרן Apache Software \ Apache2.2 \ bin>httpd -v ‘httpd’ אינו מוכר כפקודה פנימית או חיצונית,
תוכנית או קובץ אצווה.

הסר את התוכנה (.EXE)

באפשרותך גם להסיר התקנת תוכנה עם קובץ .exe באמצעות מזהה המוצר של התוכנה.

[מוגן בדוא”ל] ~
$ vi uninstall.yml

– מארחים: לנצח

משימות:

– שם: הסר את ההתקנה של 7-Zip מה- exe

win_package:

נתיב: C: \ Program Files \ 7-Zip \ Uninstall.exe

product_id: 7-Zip

טיעונים: / S

מצב: נעדר

הפעל את ספר ההשמעה ansible כדי להסיר את 7-Zip.

[מוגן בדוא”ל] ~
$ ansible-playbook uninstall.yml

PLAY [win] *********************************************** *************************************************** *************************************************** ***********************************

משימה [איסוף עובדות] ********************************************** *************************************************** *************************************************** ************************
בסדר: [192.168.0.102]

משימה [הסר את ההתקנה של 7 Zip מהאקסית] ***************************************** *************************************************** *************************************************** ***************
שונה: [192.168.0.102]

שחק RECAP ************************************************* *************************************************** *************************************************** *********************************
192.168.0.102: בסדר = 2 השתנה = 1 לא ניתן להגיע = 0 נכשל = 0 דילג = 0 חולץ = 0 התעלם = 0

עצור / התחל / הפעל מחדש את שירותי Windows

המודול האחראי של win_service משמש להפעלה, עצירה או הפעלה מחדש של שירות. הנה, אני אראה לך כיצד להפסיק את שירות tomcat.

חלונות אחראיים

עליך להזכיר את שם השירות בקובץ YAML ולהגדיר את המדינה להפסיק.

[מוגן בדוא”ל] ~
$ vi service.yml

– מארחים: לנצח

משימות:

– שם: עצור את השירות Tomcat

win_service:

שם: Tomcat8

מצב: עצר

הפעל את ספר ההשמעה האחראי כדי להפסיק את שירות tomcat.

[מוגן בדוא”ל] ~
$ ansible-playbook service.yml

PLAY [win] *********************************************** *************************************************** ***********************************

משימה [איסוף עובדות] ********************************************** *************************************************** ************************
בסדר: [192.168.0.102]

המשימה [עצור את השירות Tomcat] ********************************************* *************************************************** ******************
שונה: [192.168.0.102]

שחק RECAP ************************************************* *************************************************** *********************************
192.168.0.102
: בסדר = 2 השתנה = 1 בלתי ניתן להשגה = 0 נכשל = 0
דילג = 0 חולץ = 0 התעלם = 0

אם אתה בודק את שירות tomcat במערכת החלונות, הוא נמצא כעת במצב עצור.

עצור חלונות

באפשרותך להגדיר מצב להתחלה או להפעלה מחדש או מושהה כדי לשנות את מצב השירות.

איסוף עובדות

באמצעות win_disk_facts אחראי מודול, אתה יכול לאחזר את כל פרטי הדיסק של מארח היעד.

[מוגן בדוא”ל] ~
$ vi disk.yml

– מארחים: לנצח
משימות:
– שם: קבל עובדות בדיסק
win_disk_facts:

– שם: פלט גודל דיסק ראשון
לנפות:
var: ansible_facts.disks [0]. גודל

– שם: המר את דיסק המערכת הראשון לפורמטים שונים
לנפות:
msg: ‘{{disksize_gib}} לעומת {{disksize_gib_human}}’
vars:
# קבל דיסק מערכת ראשון
דיסק: ‘{{ansible_facts.disks | selectattr ("מערכת_דיסק") | הראשון}} ‘

# הצג גודל דיסק בג’יביט
disksize_gib_human: ‘{{disk.size | filesizeformat (true)}}’
disksize_gib: ‘{{(disk.size / 1024 | pow (3)) | עגול | int}} GiB’

הפעל את ספר ההשמעה האחראי כדי לקבל את מידע הדיסק.

[מוגן בדוא”ל] ~
$ ansible-playbook disk.yml

PLAY [win] *********************************************** *************************************************** ***********************************

משימה [איסוף עובדות] ********************************************** *************************************************** ************************
בסדר: [192.168.0.102]

משימה [קבל עובדות בדיסק] ******************************************** *************************************************** **************************
בסדר: [192.168.0.102]

משימה [פלט גודל דיסק ראשון] ******************************************** *************************************************** *******************
בסדר: [192.168.0.102] => {

"ansible_facts.diskks [0]. גודל": "1000204886016"
}

משימה [המרת דיסק מערכת ראשוני לפורמטים שונים] **************************************** ************************************************
בסדר: [192.168.0.102] => {
"msg": "932 GiB לעומת 931.5 GiB"
}

PLAY RECAP ************************************************* *************************************************** *********************************
192.168.0.102
: בסדר = 4 השתנה = 0 לא ניתן להגיע = 0 נכשל = 0
דילג = 0 חולץ = 0 התעלם = 0

באמצעות win_command מודול אחראי, באפשרותך לבצע פקודות במארח המרוחק ולקבל מידע על מעבד, פרטי התקנים ועוד..

[מוגן בדוא”ל] ~
$ vi check.yml

– מארחים: לנצח
משימות:
– שם: קבל עובדות בדיסק
win_command: wmic cpu קבל כיתוב, deviceid, שם, מספר תאים, מקסימום מהירות, מצב
הרשמה: שימוש

– debug: msg ="{{use.stdout}}"

הפעל את ספר ההשמעה האחראי לקבלת מידע על מערכת מרוחקת.

[מוגן בדוא”ל] ~
$ ansible-playbook check.yml

PLAY [win] *********************************************** *************************************************** ***********************************

משימה [איסוף עובדות] ********************************************** *************************************************** ************************
בסדר: [192.168.0.102]

משימה [קבל עובדות] ********************************************* *************************************************** *************************
שונה: [192.168.0.102]

Task [debug] *********************************************** ************************************************** *********************************
בסדר: [192.168.0.102] => {
"msg": "התקן הכיתוב ID MaxClockSpeed
שם
NumberOfCores Status \ r \ r \ nIntel64 Family 6 Model 142 צעד 9 CPU0 2712 Intel (R) Core (TM) i5-7200U מעבד @ 2.50GHz 2 אישור \ r \ r \ n \ r \ r \ n"
}

PLAY RECAP ************************************************* *************************************************** *********************************
192.168.0.102
: בסדר = 3 השתנה = 1 בלתי ניתן להשגה = 0 נכשל = 0
דילג = 0 חולץ = 0
התעלם = 0

הפעלת פקודות

לא משנה מה הפקודות שאתה מפעיל על חלון, ניתן להריץ אותן באמצעות מודול win_command האחראי. אתה רק צריך לציין את הפקודה בקובץ YAML שלך. הנה, אני רק יוצר ספרייה.

[מוגן בדוא”ל] ~
$ vi commands.yml

– מארחים: לנצח

משימות:

– שם: הרץ הפעלה באמצעות win_command

win_command: whoami.exe

– שם: הפעל פקודה cmd

win_command: cmd.exe / c mkdir C: \ test

הפעל את ספר ההשמעה האחראי לביצוע פעולת win_command.

[מוגן בדוא”ל] ~
$ ansible-playbook commands.yml

PLAY [win] *********************************************** *************************************************** ***********************************

משימה [איסוף עובדות] ********************************************** *************************************************** ************************
בסדר: [192.168.0.102]

משימה [הפעל הפעלה באמצעות win_command] ******************************************* ************************************************** *******
שונה: [192.168.0.102]

משימה [הפעל פקודה cmd] ******************************************* *************************************************** ************************
שונה: [192.168.0.102]

PLAY RECAP ************************************************* *************************************************** *********************************
192.168.0.102
: בסדר = 3 השתנה = 2 לא ניתן להגיע = 0 נכשל = 0
דילג = 0 חולץ = 0 התעלם = 0

משתני סביבה

מערכת חלונות כוללת משתני סביבה מרובים, למשל JAVA_HOME. באמצעות המודול האחראי win_envelope, באפשרותך להוסיף או לשנות משתני סביבה במערכת חלונות. בדוגמה זו, אני מוסיף משתנה חדש לרשימת המשתנים של סביבת חלונות.

[מוגן בדוא”ל] ~
$ vi env.yml

– מארחים: לנצח
משימות:
– שם: הגדר משתנה לסביבה עבור כל המשתמשים
הסביבה:
מדינה: הווה
שם: NewVariable
ערך: ערך חדש
רמה: מכונה

הפעל את ספר ההשמעה האחראי כדי להוסיף את משתנה הסביבה במחשב חלונות מרוחק.

[מוגן בדוא”ל] ~
$ ansible-playbook env.yml

PLAY [win] *********************************************** *************************************************** ***********************************

משימה [איסוף עובדות] ********************************************** *************************************************** ************************
בסדר: [192.168.0.102]

משימה [הגדר משתנה לסביבה עבור כל המשתמשים] **************************************** *************************************************** ***
שונה: [192.168.0.102]

PLAY RECAP ************************************************* *************************************************** *********************************
192.168.0.102
: בסדר = 2 השתנה = 1 בלתי ניתן להשגה = 0 נכשל = 0
דילג = 0 חולץ = 0 התעלם = 0

עבור לחלון משתני הסביבה; תוכלו לראות את המשתנה החדש שהוספת זה עתה נמצא כאן.

משתני חלונות אחראיים

הוסף / ערוך רישום

המודול האחראי win_regedit משמש להוספה או עריכה של פרטי הרישום במחשב חלונות מרוחק. עליכם לתת את נתיב הרישום והתוכן שיש להוסיף / לעדכן. כאן אני יוצר ערך רישום חדש GeekFlare בתוך נתיב HKLM: \ SOFTWARE ואז מוסיף שם ונתונים לרישום זה.

[מוגן בדוא”ל] ~
$ vi registry.yml

– מארחים: לנצח

משימות:

– שם: יצירת רישום

win_regedit:

נתיב: HKLM: \ SOFTWARE \ GeekFlare

– שם: שינוי רישום, הוספת שם ונתונים

win_regedit:

נתיב: HKLM: \ SOFTWARE \ GeekFlare

שם: חנון

נתונים: התלקחות

הפעל את ספר ההשמעה האחראי כדי להוסיף את הרישום.

[מוגן בדוא”ל] ~
$ ansible-playbook registry.yml

PLAY [win] *********************************************** *************************************************** ***********************************

משימה [איסוף עובדות] ********************************************** *************************************************** ************************
בסדר: [192.168.0.102]

משימה [יצירת רישום] ********************************************* *************************************************** *********************
שונה: [192.168.0.102]

משימה [שינוי רישום, הוספת שם ונתונים] **************************************** *************************************************** ***
שונה: [192.168.0.102]

PLAY RECAP ************************************************* *************************************************** *********************************
192.168.0.102
: בסדר = 3 השתנה = 2 לא ניתן להגיע = 0 נכשל = 0
דילג = 0 חולץ = 0 התעלם = 0

אם אתה עובר לעורך הרישום במערכת המרוחקת, אתה יכול לראות כי הרישום הזה נוסף בהצלחה עם פרמטרים של שם ונתונים.

רישום חלונות אחראי

מחק יומן

המודול האחראי win_eventlog משמש להוסיף, לנקות או להסיר יומני אירועים של חלונות ממערכת החלונות.

עבור אל Windows Powershell, ורשום את EventLogs שנמצאים במחשב החלונות המרוחק.

נ.ב. ג: \ משתמשים \ Geekflare> Get-EventLog – רשימה
מקס (K) שמור על יומן רשומות הצפת יתר
—— —— ————– ——- —
20,480 0 OverwiteAsNeeded 33,549 בקשה
20,480 0 החלף כנדרש 0 צורך במוצרי חומרה
512 7 OverwriteOlder 20 Internet Explorer
20,480 0 OverwriteAsNeeded 0 שירות ניהול מפתחות
128 0 OverwiteAsNeeded 190 OAlerts
אבטחה
20,480 0 OverwriteAsNeeded 44,828 מערכת
15,360 0 OverwiteAsNeeded 3,662 Windows PowerShell

כעת, אראה כיצד להסיר יומנים מכל המקורות עבור Internet Explorer.

[מוגן בדוא”ל] ~
$ vi log.yml

– מארחים: לנצח
משימות:
– שם: הסר את יומני Internet Explorer
win_eventlog:
שם: Internet Explorer
מצב: נעדר

הפעל את ספר ההשמעה האחראי כדי להסיר את Internet Explorer מהמחשב המרוחק של Windows.

[מוגן בדוא”ל] ~
$ ansible-playbook log.yml

PLAY [win] *********************************************** *************************************************** *************************************************** ***********************************

משימה [איסוף עובדות] ********************************************** *************************************************** *************************************************** ************************
בסדר: [192.168.0.102]

משימה [הסר את יומני Internet Explorer] ******************************************** *************************************************** **************************************************
שונה: [192.168.0.102]

שחק RECAP ************************************************* *************************************************** *************************************************** *********************************
192.168.0.102: בסדר = 2 השתנה = 1 לא ניתן להגיע = 0 נכשל = 0 דילג = 0 חולץ = 0 התעלם = 0

כעת, אם תרשום שוב את EventLogs, תראה יומני Internet Explorer הוסרו.

נ.ב. ג: \ משתמשים \ Geekflare> Get-EventLog – רשימה

מקס (K) שמור על יומן רשומות הצפת יתר
—— —— ————– ——- —
20,480 0 OverwiteAsNeeded 33,549 בקשה
20,480 0 החלף כנדרש 0 צורך במוצרי חומרה
20,480 0 OverwriteAsNeeded 0 שירות ניהול מפתחות
128 0 OverwiteAsNeeded 190 OAlerts
אבטחה
20,480 0 OverwriteAsNeeded 44,835 מערכת
15,360 0 OverwiteAsNeeded 56 Windows PowerShell

אז, זה היה הכל על ספרי השמעה של Ansible, שניתן להשתמש בהם לניהול חלונות מרוחקים. קדימה נסה את ספרי המשחק האלה. אתה יכול לנסות גם אחר מודולים חלוניים זמין.

תגיות:

  • תשובה

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map