ต้องยอมรับอย่างนึงว่าตอนนี้เทคโนโลยี LXC (Linux Container) กำลังมาแรงมากๆ ทุกแห่งหนพูดถึงเรื่องนี้ทั้งสิ้น ก็เพราะว่ามันเร็วต่อการ Deploy สามารถทำตัวเองเป็นไมโครเซอร์วิสได้ (Micro service) และมัน lightweight มากกว่า Virtual Machine ตัวที่ได้รับความนิยมมากคือ Docker ตอนนี้ก็สามารถใช้งานลองเล่นได้แล้วไม่ว่าจะเป็น Linux, Mac OS X, Windows
ในบทความนี้จะทำการติดตั้งตัว Zabbix Monitoring ด้วย Docker กันนะครับ ข้อดีอย่างนึงในการใช้ Docker คือ มีคนทำ image ต่างๆ เยอะมาก สามารถ download มาใช้ได้เลยแหล่ะ ขอแค่มี internet ในการ download มาก็พอครับ มาดูวัฏจักรของ docker กันครับว่ามันทำอย่างไรบ้าง
Lifecycle
docker create creates a container but does not start it.
docker run creates and starts a container in one operation.
docker stop stops it.
docker start will start it again.
docker restart restarts a container.
docker rm deletes a container.
docker kill sends a SIGKILL to a container.
docker attach will connect to a running container.
docker wait blocks until container stops.
ก่อนอื่นมาติดตั้งกันก่อนครับ
[shell]
aptitude install -y docker.io
[/shell]
หลังจากนั้นเราจะใช้ image จากนี่กันนะครับ https://github.com/berngp/docker-zabbix แล้วก็รันคำสั่งนี้
[shell]
docker run -d -P –name zabbix berngp/docker-zabbix
[/shell]
หลังจากนั้นก็รอมัน download เสร็จครับ เพียงแค่นี้ก็สามารถใช้งานได้แล้ว ถ้าเราสั่งดู process ของ container ดูจะเห็นว่า
[shell]
docker ps -a
[/shell]
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
NAMES
34212f4bf1a2 berngp/docker-zabbix:latest /bin/docker-zabbix r 46 minutes ago Up 18 minutes 0.0.0.0:49153->10052/tcp, 0.0.0.0:49154->10051/tcp, 0.0.0.0:49155->2812/tcp, 0.0.0.0:49156->80/tcp zabbix
จะแสดงข้อมูล container ที่เราได้สั่งให้มันทำงานอยู่ สิ่งที่เราสนใจคือ 0.0.0.0:49153->10052/tcp, 0.0.0.0:49154->10051/tcp, 0.0.0.0:49155->2812/tcp, 0.0.0.0:49156->80/tcp หมายความว่าเราสั่งให้มัน forward port จาก port 49156 จากเครื่องเราไปยัง port 80 ของ container นี้ครับ ดังนั้นเวลาเข้าใช้งาน zabbix ก็สามารถเข้าได้จาก http://127.0.0.1:49156/zabbix ครับ การ login ก็ใช้
username: admin
password: zabbix
รายละเอียดของ image นี้เพิ่มเติมอ่านได้ที่ https://github.com/berngp/docker-zabbix ครับ