บทช่วยสอนสำหรับเชฟ - เปลี่ยนโครงสร้างพื้นฐานให้เป็นรหัส



Chef Tutorial เป็นบล็อกที่สองของบล็อกซีรีส์ Chef บล็อกนี้จะอธิบายถึงสถาปัตยกรรมของเชฟและส่วนประกอบของเชฟเช่นตำราอาหารสูตรอาหาร ฯลฯ พร้อมตัวอย่าง

บทแนะนำเชฟ

Chef Tutorial เป็นบล็อกที่สองของบล็อกซีรีส์ Chef ในไฟล์ บล็อกก่อนหน้า ฉันได้อธิบายแล้วว่า Chef คืออะไรการจัดการการกำหนดค่าและวิธีที่ Chef ประสบความสำเร็จในการจัดการการกำหนดค่าด้วยความช่วยเหลือของกรณีการใช้งานของ Gannett

ในบทช่วยสอนเชฟนี้จะกล่าวถึงหัวข้อต่อไปนี้:





ฉันแน่ใจว่าหลังจากอ่านไฟล์ บล็อกก่อนหน้า คุณต้องอยากรู้ว่าเชฟทำงานอย่างไร ส่วนแรกของบล็อก Chef Tutorial นี้จะอธิบายรายละเอียดเกี่ยวกับสถาปัตยกรรมของเชฟซึ่งจะช่วยไขข้อสงสัยทั้งหมดของคุณ



บทช่วยสอนเชฟ - สถาปัตยกรรมเชฟ

ดังที่แสดงในแผนภาพด้านล่างมีส่วนประกอบหลักของ Chef สามส่วน:

  • เวิร์กสเตชัน
  • เซิร์ฟเวอร์
  • โหนด

สถาปัตยกรรมเชฟ - บทแนะนำเชฟ - Edureka

บทแนะนำเชฟ - เวิร์คสเตชั่น



เวิร์กสเตชันเป็นที่ตั้งของการกำหนดค่า Chef ทั้งหมดจัดการ. เครื่องนี้เก็บข้อมูลการกำหนดค่าทั้งหมดที่สามารถผลักดันไปยังเซิร์ฟเวอร์ Chef ส่วนกลางได้ในภายหลัง การกำหนดค่าเหล่านี้ได้รับการทดสอบในเวิร์กสเตชันก่อนที่จะผลักดันเข้าสู่เซิร์ฟเวอร์ Chef เวิร์กสเตชันประกอบด้วยเครื่องมือบรรทัดคำสั่งที่เรียกว่า มีด ที่ใช้ในการโต้ตอบกับ Chef Server อาจมีเวิร์คสเตชั่นหลายเครื่องที่จัดการ Chef Server ส่วนกลางร่วมกัน

เวิร์กสเตชันมีหน้าที่รับผิดชอบในการทำหน้าที่ดังต่อไปนี้:

  • การเขียนตำราและสูตรอาหารซึ่งจะถูกผลักดันไปยังเซิร์ฟเวอร์เชฟส่วนกลางในภายหลัง
  • การจัดการโหนดบนเซิร์ฟเวอร์ Chef ส่วนกลาง

ตอนนี้ให้เราเข้าใจประเด็นที่กล่าวถึงข้างต้นทีละประเด็น

การเขียนตำราและสูตรอาหารซึ่งจะถูกผลักดันไปยังเซิร์ฟเวอร์เชฟส่วนกลางในภายหลัง

สูตรอาหาร: สูตรอาหารคือชุดของทรัพยากรที่อธิบายการกำหนดค่าหรือนโยบายเฉพาะ อธิบายทุกอย่างที่จำเป็นในการกำหนดค่าส่วนหนึ่งของระบบ ผู้ใช้เขียน Recipes ที่อธิบายถึงวิธีที่ Chef จัดการแอปพลิเคชันและยูทิลิตี้ (เช่น Apache HTTP Server, MySQL หรือ Hadoop) และวิธีกำหนดค่า

สูตรอาหารเหล่านี้อธิบายถึงชุดของทรัพยากรที่ควรอยู่ในสถานะเฉพาะเช่นแพ็คเกจที่ควรติดตั้งบริการที่ควรทำงานหรือไฟล์ที่ควรเขียน

ต่อมาในบล็อก ฉันจะแสดงวิธีการเขียน Recipe เพื่อติดตั้งแพ็คเกจ Apache2 บน Chef Nodes โดยการเขียนรหัสทับทิมใน Chef Workstation

ตำราอาหาร: สามารถจัดกลุ่มสูตรอาหารหลายรายการเข้าด้วยกันเพื่อสร้างตำราอาหาร ตำราอาหารกำหนดสถานการณ์และมีทุกสิ่งที่จำเป็นเพื่อรองรับสถานการณ์นั้น:

  • สูตรอาหารซึ่งระบุทรัพยากรที่จะใช้และลำดับที่จะนำไปใช้
  • ค่าคุณสมบัติ
  • การแจกแจงไฟล์
  • เทมเพลต
  • ส่วนขยายสำหรับ Chef เช่นไลบรารีคำจำกัดความและทรัพยากรที่กำหนดเอง

การจัดการโหนดบนเซิร์ฟเวอร์ Chef ส่วนกลาง

ระบบเวิร์กสเตชันจะมียูทิลิตี้บรรทัดคำสั่งที่จำเป็นเพื่อควบคุมและจัดการทุกด้านของ Chef Server ส่วนกลาง สิ่งต่างๆเช่นการเพิ่ม Node ใหม่ไปยัง Chef Server ส่วนกลางการลบ Node จาก Chef Server ส่วนกลางการแก้ไขการกำหนดค่า Node ฯลฯ ทั้งหมดนี้สามารถจัดการได้จาก Workstation เอง

ตอนนี้ให้เราดูว่าส่วนประกอบใดของเวิร์กสเตชันที่จำเป็นเพื่อทำหน้าที่ข้างต้น

เวิร์กสเตชันมีองค์ประกอบหลักสองส่วน:

ยูทิลิตี้มีด: เครื่องมือบรรทัดคำสั่งนี้สามารถใช้เพื่อสื่อสารกับ Chef Server ส่วนกลางจากเวิร์กสเตชัน การเพิ่มลบและเปลี่ยนแปลงการกำหนดค่าโหนดในเซิร์ฟเวอร์ Chef ส่วนกลางจะดำเนินการโดยใช้ยูทิลิตี้ Knife นี้ การใช้ยูทิลิตี้ Knife สามารถอัปโหลด Cookbooks ไปยังเซิร์ฟเวอร์ Chef ส่วนกลางและบทบาทรวมทั้งสามารถจัดการสภาพแวดล้อมได้ โดยทั่วไปทุกแง่มุมของ Chef Server ส่วนกลางสามารถควบคุมได้จากเวิร์กสเตชันโดยใช้ยูทิลิตี้ Knife

ที่เก็บ Chef ในพื้นที่: นี่คือสถานที่ที่จัดเก็บองค์ประกอบการกำหนดค่าทั้งหมดของเซิร์ฟเวอร์ Chef ส่วนกลาง ที่เก็บ Chef นี้สามารถซิงโครไนซ์กับเซิร์ฟเวอร์ Chef ส่วนกลาง (อีกครั้งโดยใช้ยูทิลิตี้มีดเอง)

Chef Tutorial - Chef Server

Chef Server ทำหน้าที่เป็นศูนย์กลางสำหรับข้อมูลการกำหนดค่า Chef Server จัดเก็บตำราอาหารนโยบายที่ใช้กับโหนดและข้อมูลเมตาที่อธิบายถึงโหนดที่ลงทะเบียนแต่ละโหนดที่ถูกจัดการโดย Chef-Client

โหนดใช้ Chef-Client เพื่อขอรายละเอียดการกำหนดค่า Chef Server เช่นสูตรอาหารเทมเพลตและการแจกแจงไฟล์ จากนั้น Chef-Client จะทำการกำหนดค่าให้มากที่สุดเท่าที่จะเป็นไปได้บน Nodes ด้วยตนเอง (ไม่ใช่บน Chef Server) แต่ละโหนดจะมีซอฟต์แวร์ Chef Client ติดตั้งอยู่ซึ่งจะดึงการกำหนดค่าจาก Chef Server ส่วนกลางที่ใช้ได้กับโหนดนั้น แนวทางที่ปรับขนาดได้นี้จะกระจายความพยายามในการกำหนดค่าไปทั่วทั้งองค์กร

บทช่วยสอนเชฟ - โหนดเชฟ

โหนดสามารถเป็นเซิร์ฟเวอร์เสมือนบนคลาวด์หรือเซิร์ฟเวอร์จริงในศูนย์ข้อมูลของคุณเองซึ่งได้รับการจัดการโดยใช้ Chef Server ส่วนกลาง องค์ประกอบหลักที่ต้องมีอยู่บน Node คือตัวแทนที่จะสร้างการสื่อสารกับ Chef Server ส่วนกลาง สิ่งนี้เรียกว่า Chef Client

Chef Client ทำหน้าที่ดังต่อไปนี้:

  • มีหน้าที่ในการโต้ตอบกับ Chef Server ส่วนกลาง
  • จัดการการลงทะเบียนเริ่มต้นของโหนดไปยังเซิร์ฟเวอร์ Chef ส่วนกลาง
  • มันดึงตำราอาหารลงมาและนำไปใช้กับโหนดเพื่อกำหนดค่า
  • การสำรวจความคิดเห็นของเซิร์ฟเวอร์ Chef ส่วนกลางเป็นระยะเพื่อดึงรายการการกำหนดค่าใหม่ถ้ามี

คลิกที่นี่เพื่อเรียนรู้วิธีการติดตั้ง Chef Server, Workstation และ Node

แยกวิเคราะห์สตริงจนถึงวันที่ java

การสอนเชฟ - ข้อดีของเชฟ:

บทช่วยสอนเกี่ยวกับเชฟนี้จะไม่สมบูรณ์หากฉันไม่รวมประโยชน์หลักของ Chef:

  • คุณสามารถสร้างโครงสร้างพื้นฐานทั้งหมดโดยอัตโนมัติโดยใช้ Chef งานทั้งหมดที่ทำด้วยตนเองสามารถทำได้ผ่านเครื่องมือ Chef
  • คุณสามารถกำหนดค่าโหนดนับพันภายในไม่กี่นาทีโดยใช้ Chef
  • ระบบอัตโนมัติของ Chef ทำงานร่วมกับข้อเสนอคลาวด์สาธารณะส่วนใหญ่เช่น .
  • Chef จะไม่เพียง แต่ทำให้สิ่งต่างๆเป็นไปโดยอัตโนมัติเท่านั้น แต่ยังดูแลระบบให้อยู่ภายใต้การตรวจสอบที่สม่ำเสมอและยืนยันว่าระบบได้รับการกำหนดค่าตามที่จำเป็น (Chef Agent / Client ทำหน้าที่นี้) หากมีใครแก้ไขไฟล์ผิดพลาด Chef จะแก้ไขให้
  • โครงสร้างพื้นฐานทั้งหมดสามารถบันทึกในรูปแบบของที่เก็บ Chef ซึ่งสามารถใช้เป็นพิมพ์เขียวเพื่อสร้างโครงสร้างพื้นฐานใหม่ตั้งแต่เริ่มต้น

ฉันหวังว่าคุณจะสนุกกับบทช่วยสอนเชฟนี้จนถึงตอนนี้เพียงพอกับโพสต์เชิงทฤษฎี! ให้เราสนุกกับการลงมือทำ

บทแนะนำเชฟ | เริ่มต้นกับเชฟ | Edureka

บทช่วยสอนเชฟ - ภาคปฏิบัติ

ฉันจะอธิบายวิธีสร้างสูตรตำราอาหารและเทมเพลตใน Chef Workstation ในที่นี้ ฉันจะอธิบายวิธีปรับใช้ Cookbook จาก Workstation ไปยัง Chef-Client (Chef Node)

ฉันใช้ Virtual Images สองภาพสำหรับ Chef Workstation และอื่น ๆ สำหรับ Chef Node สำหรับ Chef Server ฉันจะใช้ Chef เวอร์ชันโฮสต์ (บนคลาวด์) คุณยังสามารถใช้เครื่องจริงสำหรับ Chef Server ได้เช่นกัน

ขั้นตอนที่ 1: ติดตั้ง Chef DK (Development Kit) ใน Chef Workstation ของคุณ

Chef DK เป็นแพ็คเกจที่มีเครื่องมือการพัฒนาทั้งหมดที่คุณต้องการเมื่อเขียนโค้ด Chef นี่คือลิงค์สำหรับดาวน์โหลด เชฟ DK .

ที่นี่เลือกระบบปฏิบัติการที่คุณใช้ ฉันใช้ CentOS 6.8 ดังนั้นฉันจะคลิกที่ Red Hat Enterprise Linux .

คัดลอกลิงค์ตามเวอร์ชันของ CentOS ที่คุณใช้อยู่ ฉันใช้ CentOS 6 อย่างที่คุณเห็นว่าฉันได้ไฮไลต์ไว้ในภาพหน้าจอด้านบน

ไปที่สถานีเวิร์คสเตชั่นของคุณและดาวน์โหลด Chef DK โดยใช้คำสั่ง wget แล้ววางลิงค์

ดำเนินการนี้:

wget https://packages.chef.io/stable/el/6/chefdk-1.0.3-1.el6.x86_64.rpm

ดาวน์โหลดแพ็คเกจแล้ว ถึงเวลาติดตั้งแพคเกจนี้โดยใช้รอบต่อนาที

ดำเนินการนี้:

รอบต่อนาที -ivh chefdk-1.0.3-1.el6.x86_64.rpm

ตอนนี้ Chef DK ได้รับการติดตั้งในเวิร์กสเตชันของฉันแล้ว

ขั้นตอนที่ 2: สร้างสูตรอาหารในเวิร์กสเตชัน

เริ่มต้นด้วยการสร้าง Recipe ในเวิร์กสเตชันและทดสอบในเครื่องเพื่อให้แน่ใจว่าใช้งานได้สร้างโฟลเดอร์ชื่อ chef-repo เราสามารถสร้าง Recipes ของเราภายในโฟลเดอร์นี้

ดำเนินการนี้:

mkdir chef-repo cd เชฟ repo

ในไดเร็กทอรี chef-repo นี้ฉันจะสร้าง Recipe ชื่อ edureka.rb .rb เป็นนามสกุลที่ใช้สำหรับทับทิม ฉันจะใช้ vim editor คุณสามารถใช้โปรแกรมแก้ไขอื่น ๆ ที่คุณต้องการเช่น gedit, emac, vi เป็นต้น

ดำเนินการนี้:

กลุ่ม edureka.rb

เพิ่มสิ่งต่อไปนี้:

ไฟล์ '/ etc / motd' เนื้อหา 'ยินดีต้อนรับสู่เชฟ' ตอนท้าย

Recipe คือ dureka .rb สร้างไฟล์ชื่อ / etc / motd พร้อมเนื้อหา“ ยินดีต้อนรับสู่เชฟ”

ตอนนี้ฉันจะใช้สูตรนี้เพื่อตรวจสอบว่ามันใช้งานได้หรือไม่

ดำเนินการ นี้:

เชฟสมัคร edureka.rb

ดังนั้นจึงมีไฟล์ที่สร้างขึ้นใน chef-repo ที่มีเนื้อหา ยินดีต้อนรับสู่เชฟ

ขั้นตอนที่ 3:odifying ไฟล์ Recipe เพื่อติดตั้งแพ็คเกจ httpd

ฉันจะแก้ไข Recipe เพื่อติดตั้งแพ็คเกจ httpd บนเวิร์กสเตชันของฉันและคัดลอกไฟล์ index.html ไปยังรูทเอกสารเริ่มต้นเพื่อยืนยันการติดตั้ง การดำเนินการเริ่มต้นสำหรับทรัพยากรแพ็คเกจคือการติดตั้งดังนั้นฉันจึงไม่จำเป็นต้องระบุการดำเนินการนั้นแยกต่างหาก

ดำเนินการ นี้:

กลุ่ม edureka.rb

ที่นี่เพิ่มสิ่งต่อไปนี้:

แพ็กเกจ 'httpd' service 'httpd' ดำเนินการ [: enable,: start] end file '/var/www/html/index.html' ทำเนื้อหา 'ยินดีต้อนรับสู่ Apache in Chef'

ตอนนี้ฉันจะใช้การกำหนดค่าเหล่านี้โดยดำเนินการคำสั่งด้านล่าง:

ดำเนินการ นี้:

เชฟสมัคร edureka.rb

การดำเนินการคำสั่งอธิบายแต่ละอินสแตนซ์อย่างชัดเจนในสูตรอาหาร ติดตั้งแพ็คเกจ Apache เปิดใช้งานและเริ่มบริการ httpd บนเวิร์กสเตชัน และจะสร้างไฟล์ index.html ในรูทเอกสารเริ่มต้นพร้อมเนื้อหา“ ยินดีต้อนรับสู่ Apache in Chef”

ตอนนี้ยืนยันการติดตั้ง Apache2 โดยเปิดเว็บเบราว์เซอร์ของคุณ พิมพ์ที่อยู่ IP สาธารณะของคุณหรือชื่อโฮสต์ของคุณ ในกรณีของฉันมันเป็น localhost

ขั้นตอนที่ 4: ตอนนี้เราจะสร้างตำราอาหารเล่มแรกของเรา

สร้างไดเร็กทอรีชื่อตำราอาหารและดำเนินการคำสั่งด้านล่างเพื่อสร้างตำราอาหาร

ดำเนินการ นี้:

mkdir cookbooks cd cookbooks เชฟสร้างตำรา httpd_deploy

httpd_deploy เป็นชื่อที่ตั้งให้กับตำราอาหาร คุณสามารถตั้งชื่ออะไรก็ได้ที่คุณต้องการ

ให้เราย้ายไปที่ไดเรกทอรีใหม่นี้ httpd_deploy

ดำเนินการ นี้:

cd httpd_deploy

ตอนนี้ให้เราดูโครงสร้างไฟล์ของตำราอาหารที่สร้างขึ้น

ดำเนินการ นี้:

ต้นไม้

ขั้นตอนที่ 5:สร้างไฟล์เทมเพลต

ก่อนหน้านี้ฉันได้สร้างไฟล์ที่มีเนื้อหาบางส่วน แต่ไม่สามารถเข้ากับโครงสร้างสูตรอาหารและตำราอาหารของฉันได้ ลองมาดูกันว่าเราจะสร้างเทมเพลตสำหรับหน้า index.html ได้อย่างไร

ดำเนินการ นี้:

พ่อครัวสร้างเทมเพลต httpd_deploy index.html

ตอนนี้ถ้าคุณเห็นโครงสร้างไฟล์ Cookbook ของฉันแสดงว่ามีโฟลเดอร์ที่สร้างด้วยเทมเพลตชื่อที่มีไฟล์ index.html.erb ฉันจะแก้ไขไฟล์เทมเพลต index.html.erb นี้และเพิ่ม Recipe ของฉันเข้าไป ดูตัวอย่างด้านล่าง:

ไปที่ไดเร็กทอรีเริ่มต้น

ดำเนินการ นี้:

cd / root / chef-repo / cookbook / httpd_deploy / template / default

ที่นี่แก้ไขเทมเพลต index.html.erb โดยใช้ตัวแก้ไขใด ๆ ที่คุณพอใจ ฉันจะใช้ vim editor

ดำเนินการ นี้:

กลุ่ม index.html.erb

ตอนนี้เพิ่มสิ่งต่อไปนี้:

ยินดีต้อนรับสู่การปรับใช้ Chef Apache

ขั้นตอนที่ 6:สร้างสูตรอาหารด้วยเทมเพลตนี้

ไปที่ไดเร็กทอรี Recipes

ดำเนินการ t เขา:

cd / root / chef-repo / ตำราอาหาร / httpd_deploy / สูตร

ตอนนี้แก้ไขไฟล์ default.rb โดยใช้ตัวแก้ไขที่คุณต้องการ ฉันจะใช้ vim editor

ดำเนินการ นี้:

เป็นกลุ่ม default.rb

ที่นี่เพิ่มสิ่งต่อไปนี้:

แพ็กเกจ 'httpd' service 'httpd' ดำเนินการ [: enable,: start] end template '/var/www/html/index.html' do source 'index.html.erb' end

ตอนนี้ฉันจะกลับไปที่โฟลเดอร์ chef-repo ของฉันและเรียกใช้ / ทดสอบสูตรของฉันบนเวิร์กสเตชันของฉัน

ดำเนินการ นี้:

cd / root / chef-repo chef-client --local-mode --runlist 'สูตร [httpd_deploy]'

ตามสูตรของฉัน Apache ถูกติดตั้งบนเวิร์กสเตชันของฉันบริการกำลังเริ่มต้นและเปิดใช้งานเมื่อบูต นอกจากนี้ไฟล์เทมเพลตยังถูกสร้างขึ้นบนรูทเอกสารเริ่มต้นของฉัน

ตอนนี้ฉันได้ทดสอบเวิร์กสเตชันของฉันแล้ว ได้เวลาตั้งค่าเซิร์ฟเวอร์ Chef

ขั้นตอนที่ 7: ตั้งค่าเซิร์ฟเวอร์ Chef

ฉันจะใช้ Chef Server เวอร์ชันโฮสต์บนคลาวด์ แต่คุณสามารถใช้เครื่องจริงได้เช่นกัน Chef-Server นี้อยู่ที่ Manage.chef.io

สร้างบัญชีที่นี่หากคุณยังไม่มี เมื่อคุณสร้างบัญชีแล้วให้ลงชื่อเข้าใช้ด้วยข้อมูลรับรองการเข้าสู่ระบบของคุณ

นี่คือหน้าตาของ Chef Server

หากคุณลงชื่อเข้าใช้เป็นครั้งแรกสิ่งแรกที่คุณจะต้องทำคือการสร้างองค์กร โดยพื้นฐานแล้วองค์กรเป็นกลุ่มเครื่องจักรที่คุณจะจัดการกับ Chef Server

ก่อนอื่นฉันจะไปที่แท็บการดูแลระบบ ที่นั่นฉันได้สร้างองค์กรชื่อ edu แล้ว ดังนั้นฉันต้องดาวน์โหลดชุดเริ่มต้นในเวิร์กสเตชันของฉัน ชุดเริ่มต้นนี้จะช่วยคุณในการพุชไฟล์จากเวิร์กสเตชันไปยังเซิร์ฟเวอร์เชฟ คลิกที่ไอคอนการตั้งค่าทางด้านขวามือและคลิกที่ Starter Kit

เมื่อคุณคลิกที่นั่นคุณจะได้รับตัวเลือกในการดาวน์โหลด Starter Kit เพียงคลิกเพื่อดาวน์โหลดไฟล์ zip ของ Starter Kit

ย้ายไฟล์นี้ไปยังไดเร็กทอรีรากของคุณตอนนี้แตกไฟล์ zip นี้โดยใช้คำสั่ง unzip ในเทอร์มินัลของคุณ คุณจะสังเกตเห็นว่ามีไดเร็กทอรีชื่อ chef-repo

ดำเนินการ นี้:

เปิดเครื่องรูด chef-starter.zip

ตอนนี้ย้ายชุดเริ่มต้นนี้ไปยังไดเร็กทอรีตำราอาหารในไดเรกทอรี chef-repo

ดำเนินการ นี้:

mv starter / root / chef-repo / ตำรา

Chef Cookbooks มีอยู่ใน Cookbook Super Market เราสามารถไปที่ Chef SuperMarket ดาวน์โหลดตำราอาหารที่จำเป็นจาก supermarket.chef.io . ฉันกำลังดาวน์โหลดตำราเพื่อติดตั้ง Apache จากที่นั่น

ดำเนินการ e t คือ:

cd chef-repo มีดเว็บไซต์ตำราอาหาร download learn_chef_httpd

มี Tar ball ดาวน์โหลดสำหรับ Apache Cookbook ตอนนี้เราจำเป็นต้องแยกเนื้อหาจากไฟล์ Tar ที่ดาวน์โหลดมานี้ สำหรับสิ่งนั้นฉันจะใช้คำสั่ง tar

tar -xvf learn_chef_httpd-0.2.0.tar.gz

ไฟล์ที่ต้องการทั้งหมดจะถูกสร้างขึ้นโดยอัตโนมัติภายใต้ตำรานี้ ไม่จำเป็นต้องทำการปรับเปลี่ยนใด ๆ มาตรวจสอบคำอธิบายสูตรอาหารในโฟลเดอร์สูตรอาหารของฉัน

ดำเนินการ t คือ :

cd / root / chef-repo / learn_chef_httpd / recipes cat default.rb

ตอนนี้ฉันจะอัปโหลดตำราอาหารนี้ไปยังเซิร์ฟเวอร์เชฟของฉันเพราะมันดูสมบูรณ์แบบสำหรับฉัน

ขั้นตอนที่ 8: อัปโหลดตำราอาหารไปยังเซิร์ฟเวอร์เชฟ

ในการอัปโหลด Apache Cookbook ที่ฉันดาวน์โหลดมาก่อนอื่นให้ย้ายไฟล์ learn_chef_httpd นี้ไปที่โฟลเดอร์ Cookbooks ใน chef-repo จากนั้นเปลี่ยนไดเรกทอรีของคุณเป็นตำราอาหาร

ดำเนินการ t คือ :

mv / root / chef-repo / learn_chef_httpd / root / chef-repo / ตำราอาหาร

ตอนนี้ย้ายไปที่ไดเรกทอรีตำราอาหารนี้

ดำเนินการนี้:

ตำราซีดี

ในไดเร็กทอรีนี้ให้ดำเนินการคำสั่งด้านล่างเพื่ออัปโหลด Apache Cookbooถึง:

Exec ute t คือ:

อัปโหลดตำรามีด learn_chef_httpd

ตรวจสอบตำราอาหารจากคอนโซล Chef Server Management ในส่วนนโยบายคุณจะพบตำราอาหารที่คุณอัปโหลด ดูภาพหน้าจอด้านล่าง:

ตอนนี้ขั้นตอนสุดท้ายของเราคือการเพิ่ม Chef Node ฉันได้ตั้งค่าเวิร์กสเตชันเซิร์ฟเวอร์เชฟและตอนนี้ฉันต้องการเพิ่มไคลเอนต์ของฉันไปยังเซิร์ฟเวอร์เชฟสำหรับการทำงานอัตโนมัติ

ขั้นตอนที่ 9: การเพิ่ม Chef Node ไปยังเซิร์ฟเวอร์ Chef

เพื่อจุดประสงค์ในการสาธิตฉันจะใช้เครื่อง CentOS หนึ่งเครื่องเป็น Chef Node สามารถมีหลายร้อยโหนดที่เชื่อมต่อกับเซิร์ฟเวอร์ Chef หนึ่งตัว สีเทอร์มินัลของเครื่อง Node ของฉันแตกต่างจาก Workstation เพื่อให้คุณสามารถแยกความแตกต่างระหว่างทั้งสองอย่างได้

ฉันแค่ต้องการที่อยู่ IP ของโหนดของฉันเพื่อที่ฉันจะดำเนินการคำสั่งด้านล่างในเครื่องโหนดของฉันคือ.

Exec ยู t คือ t คือ:

ifconfig

ฉันจะเพิ่ม Chef Node ของฉันไปยังเซิร์ฟเวอร์โดยดำเนินการคำสั่ง Knife Bootstrap ซึ่งฉันจะระบุที่อยู่ IP ของ The Chef Node และชื่อของมัน ดำเนินการคำสั่งที่แสดง beloใน:

Exec ute t คือ:

มีด bootstrap 192.168.56.102 --ssh-user root --ssh-password edureka - โหนดชื่อ chefNode

คำสั่งนี้จะเริ่มต้นการติดตั้ง Chef-Client ใน Chef Node คุณสามารถตรวจสอบได้จาก CLI บนเวิร์กสเตชันโดยใช้คำสั่งมีดดังที่แสดงไว้ด้านล่างใน:

Exec ute t คือ:

รายการโหนดมีด

คุณยังสามารถตรวจสอบได้จากเซิร์ฟเวอร์ Chef ไปที่แท็บโหนดในคอนโซลการจัดการเซิร์ฟเวอร์ของคุณที่นี่คุณจะสังเกตเห็นว่ามีโหนดที่คุณเพิ่มเข้ามา อ้างอิงภาพหน้าจอด้านล่าง

ขั้นตอนที่ 10: จัดการ Node Run List

มาดูกันว่าเราจะเพิ่ม Cookbook ไปยัง Node และจัดการรายการ Run จาก Chef Server ได้อย่างไร ดังที่คุณเห็นในภาพหน้าจอด้านล่างคลิกแท็บการดำเนินการและเลือกตัวเลือกแก้ไขรายการเรียกใช้เพื่อจัดการรายการเรียกใช้

ในสูตรอาหารที่มีให้คุณสามารถดูสูตรการเรียนรู้ _chef_httpd ของเราคุณสามารถลากจากแพ็คเกจที่มีไปยังรายการเรียกใช้ปัจจุบันและบันทึกรายการเรียกใช้

ตอนนี้ลงชื่อเข้าใช้ Node ของคุณแล้วเรียกใช้ chef-client เพื่อดำเนินการ Run List.

Exec ute t คือ:

หัวหน้าลูกค้า

ฉันหวังว่าคุณจะสนุกกับบทแนะนำเชฟนี้และเรียนรู้วิธีใช้ Chef เพื่อกำหนดค่าโหนดหลายร้อยรายการ เชฟมีบทบาทสำคัญในหลายองค์กรเพื่อให้บรรลุ DevOps ด้วยองค์กร Chef กำลังเปิดตัวแอปพลิเคชันบ่อยขึ้นและเชื่อถือได้กระจก.

หากคุณพบบล็อกนี้ใน“ บทแนะนำเชฟ ” เกี่ยวข้อง ตรวจสอบไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ซึ่งมีเครือข่ายผู้เรียนที่พึงพอใจมากกว่า 250,000 คนกระจายอยู่ทั่วโลก หลักสูตรการฝึกอบรม Edureka DevOps Certification ช่วยให้ผู้เรียนมีความเชี่ยวชาญในกระบวนการและเครื่องมือต่างๆของ DevOps เช่น Puppet, Chef, Jenkins, Nagios และ GIT สำหรับการทำหลายขั้นตอนใน SDLC โดยอัตโนมัติ