บทความนี้เรามาดูวิธีการทำ Multi Master-PKI Failover กันซึ่งจะไม่เหมือนการทำ Redundant Multi Master ในบทความที่แล้ว ตรงที่เครื่อง Salt Minion จะ connection ไปที่เครื่อง Salt Master หลักเครื่องเดียว ซึ่งถ้า Salt Master หลักไม่สามารถ connection ได้ Salt Minion ถึงจะย้ายไป conection กับ Salt Master อื่นที่อยู่ตาม list ใน config ของ Salt-Minion โดยมีขั้นตอนดังนี้

เครื่องที่ต้องใช้จะมี

  • Salt Master 2 เครื่องชื่อ saltmaster1 และ saltmaster2
  • Salt Minion 1 เครื่องชื่อ saltminion

ที่เครื่อง saltmaster1 และ saltmaster2 ตั้งค่า Salt Master ให้สร้าง file sign public key เพื่อใช้ Authen Reply

vi /etc/salt/master


Continue reading

Redundant Salt Master นั้นเป็นทั้ง Load balancing และ High-availability (HA) นั้นคือ Salt Minion หรือ Client จะทำการเชื่อมต่อไปยัง Salt Master ทั้งหมดที่มีใน list ของ file config Salt Minion และ Salt Master ทั้งหมดใน list มี Permission ต่อ Salt minion นั้นเท่ากัน เช่นเราสามารถสั่ง run SLS Formula หรือ list ip ในแต่ล่ะ Salt Master ได้ เป็นต้น ที่นี้เรามาดูวิธีการทำ Redundant Salt Master กันน่ะครับ

ในตัวอย่างจะมี

  • Salt Master 2 host ชื่อ saltmaster1 และ saltmaster2
  • Salt minion 1 host ชื่อ saltminion

แนะนำให้ตั้งค่าโดเมนไว้จะสะดวกในการใช้งาน แต่ถ้าไม่มีจะเพิ่มลงใน /etc/hosts ในทุกๆ เครื่องก็ได้ เปลี่ยนชื่อเครื่องและ ip address เป็นของคุณเอง


Continue reading

ครั้งที่แล้วได้ติดตั้ง Salt กันไปเบื้องต้นแล้ว ครั้งนี้เรามาดูการสร้าง Salt Formula กันครับ อันดับแรกมาดูความหมายของคำต่างๆก่อนน่ะครับ State System เป็นส่วนประกอบของ Salt ที่ใช้ในการจัดการ Configuration ต่างๆ State System นั้นสร้างมาจาก SLS Formula ซึ่ง SLS Formula นั้นคือ file ที่อยู่ใน Salt file server หรือพูดง่ายๆ มันเป็น Formula ที่ถูกเขียนขึ้นและปกติจะเก็บไว้ที่ Path /srv/salt ของ Salt-Master ที่นี้เรามาทดลองสร้าง SLS Formula ดูอันดับแรกให้สร้าง file ที่ /srv/salt/vim.sls โดย SLS Formula นี้จะไปสั่งให้ Client ติดตั้ง Package vim

vi /srv/salt/vim.sls

เพิ่มข้อมูลลงในไฟล์ดังนี้

vim:
  pkg.installed

เสร็จแล้วลอง run sls ที่พึ่งสร้างเมื่อสักครู่นี้ โดยคำสั่งนี้จะทำให้เกิด State System และ run vim.sls นั้น

salt '*' state.sls vim


Continue reading

ในบทความนี้มาดูการติดตั้งและการใช้งานเบื้องต้น Salt กันน่ะครับ หลายคนอาจสงสัยว่า Salt คืออะไร? Salt คือตัวจัดการคอมพิวเตอร์หลายๆ เครื่องในคราวเดียว หรือในภาษาอังกฤษจะเรียกว่า infrastructure management เช่นถ้าหากเราต้องการดู ip เครื่อง ทุกๆ เครื่องพร้อมกันก็สามารถสั่งคำสั่งจาก server salt ไปเพื่อดูได้เลย แต่หากว่าคุณมีเครื่องคอมพิวเตอร์อยู่ 2-3 เครื่องก็ไม่ต้องใช้ครับลุกไปดูเองเลย หรือเราต้องการติดตั้งโปรแกรมที่เครื่องหลายๆ เครื่องพร้อมกัน Salt ก็สามารถทำได้ เป็นต้น

Salt เป็นโปรแกรมในลักษณะ Server-Client ซึ่งเป็นลักษณะ Active คือ Client เชื่อมต่อไปที่เครื่อง Server ก่อนเสมอ หมายความว่าหากเครื่อง Client เป้าหมายอยู่หลัง Gateway หรือ Firewall และไม่ได้ทำ forward port ก็ไม่มีปัญหาในการคุยกับ Client ขอให้เครื่อง Client สามารถออก internet ได้ก็พอ หรือ allow outgoing port 4505 และ 4506 ไว้ ต่อไปก็มาดูวิธีการติดตั้ง Salt-Master หรือเรียกว่า Salt Server และ Salt-Minion หรือเรียกว่า Salt Client ในบทความนี้จะติดตั้งทั้ง Salt-Master และ Salt-Minion บน Ubuntu Server 14.04 เครื่องเดียวกัน

ทำการเพิ่ม repository ของ Salt ก่อน

sudo apt-get install python-software-properties

sudo add-apt-repository ppa:saltstack/salt

แล้วทำการ update และติดตั้ง Salt-Master และ Salt-Minion


Continue reading