Operations 11 min read

Expert Insights: Puppet vs Ansible, MCollective, and Building Sustainable Startup Ops

This article compiles a Q&A from the InfoQ Efficient Ops Talk, where expert Liu Yu discusses Puppet's limitations, compares automation tools like Ansible and MCollective, and offers practical advice for startups building sustainable release pipelines and managing Windows and cloud environments.

Efficient Ops
Efficient Ops
Efficient Ops
Expert Insights: Puppet vs Ansible, MCollective, and Building Sustainable Startup Ops

This article compiles insights from the "Efficient Ops Talk" series, featuring guest speaker Liu Yu, a senior system engineer and automation expert, and includes Q&A covering Puppet's usability, alternatives like Ansible, MCollective, and advice for building sustainable release pipelines in startups.

Key Participants

Liu Yu @ West Mountain

Xu Jiang @ Jicheng Electronics

geekwolf@maka

Zhi Jin – Ops Startup

Luo Yong @ Ctrip Cloud Platform

Xie Anqi @ Ankang

Editors

Xu Wenhui @ 21v-Beijing (content collection)

Wen Guobing @ Spacewalk-Guangzhou (article editing)

Guest Introduction

Liu Yu, known as "Guard Every Day", is a Kingsoft West Mountain architect, former senior engineer at Sina and Baidu, author of "Puppet in Practice", automation expert, InfoQ community editor, co‑founder of linuxtone.org, with nearly ten years of ops experience. He specializes in distributed automation platforms, monitoring, cloud platforms, video streaming, file acceleration, scheduling, and data analysis, and has received awards such as InfoQ Gold Lecturer and 51CTO Blog Star.

Q&A

Q1: In terms of ease of use, what are Puppet's shortcomings compared with newer tools like Ansible? A1: Puppet lacks direct command execution; it only provides a limited

exec

resource with low efficiency. Puppet Labs acquired MCollective to address this gap.

Q2: How do you understand Fabric? A2: Fabric is also a command‑execution tool; we used it ten years ago but its parallel performance was insufficient, so we did not adopt it.

Q3: From today’s perspective, which automation tools would you recommend and why? A3: Recommended tools include Ansible, Zabbix, PowerDNS, GitLab, Redmine, Gods, and ELK. Open‑source software can quickly build an ops stack, but suitability depends on the company’s long‑term needs.

Q4: Under what business loads do you need Puppet agents (cluster mode)? Is it widely used? A4: Cluster mode is needed for complex web architectures, multi‑data‑center deployments, high‑concurrency web services, and CDN scenarios. Many companies with cross‑region disaster recovery use it.

Q5: Puppet has a rich ecosystem, but Ansible feels simpler and more reliable. What’s your view on Puppet’s future? A5: Puppet’s rich ecosystem offers fast building and tested code, though Ansible is more flexible for small teams. The latest Puppet versions are faster, have fewer dependencies, and provide a better coding experience, so its prospects remain strong.

Q6: You mentioned MCollective as a powerful MQ‑based command framework, more flexible than Ansible or Salt. How does it achieve this? A6: MCollective’s flexibility comes from its MQ‑based architecture that allows custom orchestration and fast parallel processing, though it is heavier than Ansible or Salt.

MCollective Features

Interact with clusters from small to large scale.

Uses a broadcast paradigm; only servers matching filters execute requests, with no central database.

Breaks host‑name‑based authentication by using rich target data from Puppet, Chef, Facter, Ohai, or plugins.

Supports remote agent invocation via command line.

Allows custom device reports.

Provides many agents for managing packages, services, and community components.

Enables SimpleRPC‑style agents, clients, and Ruby‑based web UIs.

Pluggable architecture for local needs.

Middleware offers extensive authentication and authorization models as a first line of control.

Reuses middleware for clustering, routing, and network isolation to achieve security and scalability.

Q7: How can a startup quickly build a sustainable release environment? A7: Use PHP with GitLab + Jenkins and rsync for code deployment. Docker diagrams illustrate the process; Puppet has been used at large banks to manage thousands of machines, but simple GitLab hooks can also handle releases.

Docker deployment diagram
Docker deployment diagram

Previously we also drew a Jenkins CI flowchart focusing on risk control at the node stage. Our current PHP setup uses GitLab hooks tied to different tags and environments, which are processed in Puppet environments. The PHP side remains simple.

Q8: For startups not on the cloud, what tools would you suggest? A8: Cloud providers like AWS offer many services; domestically there are third‑party tools. If not using cloud, follow the same workflow with tools that fit the scale—Ansible works well for small setups.

Q9: Which scenarios suit Salt? Is Puppet better for configuration management? A9: Salt is good for command execution; Puppet excels at configuration management. Combining Ansible/Salt with Puppet is common in China.

Q10: Which tool do you recommend for Windows configuration management? A10: Puppet has strong support for Windows and is recommended.

Q11: Is it realistic for a company to adopt multiple ops tools simultaneously? A11: Avoid tool proliferation; choose solutions that address current problems.

Q12: How do you typically implement monitoring integration? A12: Define server roles and monitoring templates; after Puppet deployment, include Zabbix directly.

Q13: Can Puppet be used on Windows XP for software distribution? A13: Not fully tested on Win7; official support focuses on server OSes like Windows Server 2003/2008/2012.

How to Join the Community

InfoQ founder and CEO Huo Taiwen created the "InfoQ Efficient Ops Group" on WeChat for senior internet ops professionals. The group is invitation‑only; to apply, contact Xiao Tianguo on WeChat with a brief note and, humorously, a small red packet as a token.

Note: If you repost this article, you must include the full text and the QR code below.

QR code
QR code
configuration managementAnsiblePuppetOps AutomationMCollectiveStartup DevOps
Efficient Ops
Written by

Efficient Ops

This public account is maintained by Xiaotianguo and friends, regularly publishing widely-read original technical articles. We focus on operations transformation and accompany you throughout your operations career, growing together happily.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.