Không còn ClickOps, giờ là TalkOps! Những MCP Servers hữu ích cho Devops Engineer

0 0 0

Người đăng: Hoàng Việt

Theo Viblo Asia

Mở đầu

Trong những tháng gần đây MCP Server nổi lên nhưng một chuẩn chung giúp các mô hình ngôn ngữ lớn (LLM) thực hiện được nhiều công việc thay cho người dùng. Là một Devops Engineer mình cũng băn khoăn về việc AI Agent kết hợp với MCP Servers có thể làm gì để giúp tăng hiệu quả công việc của mình. Trong bài viết này mình đã tổng hợp lại các MCP Servers mình cho rằng rất hữu ích nếu chúng ta có thể tích hợp được vào trong công việc hàng ngày.

Nếu bạn chưa biết về khái niệm MCP Server - MCP Client, hay tham khảo bài viết này của mình Trong bài viết này mình đã có giới thiệu về các khái niệm liên quan đến MCP Server

Vì là một xu hướng mới nên trên Internet có nhiều MCP Servers được phát triển bởi cộng đồng hoặc cá nhân và điều này dẫn tới các MCP Server này có thể chứa các đoạn mã không an toàn. Các bạn nên hướng đến sử dụng MCP Server Official chính thức từ các provider liên quan. Trong bài này mình sẽ đề cập đến các MCP Server có nhiều sao nhất trên Github hoặc Official từ provider.

Cloud provider MCP Server

Đúng vậy! chúng ta hoàn toàn có thể sử dụng MCP Server để tương tác với các tài nguyên có trên Cloud Provider như: AWS, Azure hay GCP. Nếu bạn chưa quen với các cấu hình hay các loại tài nguyên trên một cloud provider mới, không có gì phải lo hết, bạn hoàn toàn có thể sử dụng MCP Server để áp dụng các best practices đang được sử dụng

image.png

Một trong các Cloud provider phổ biến nhất là AWS đã cung cấp MCP Server cho hầu hết các dịch vụ phổ biến nhất của họ, giúp người dùng có thể tương tác với tài nguyên trên Cloud bằng các câu chat với ngôn ngữ tự nhiên.

image.png

Vậy trong công việc thực tế chúng ta có thể áp dụng Cloud provider MCP Server để làm gì?

  1. Tổng hợp thông tin tài nguyên trên nhiều region, project cùng lúc: Bằng khả năng có thể thực hiện query dữ liệu nhiều lần và khả năng tổng hợp dữ liệu. Sử dụng MCP Server có thể lấy thông tin chi tiết cá tài nguyên từ nhiều project và region khác nhau và hiển thị một cách dễ hiểu cho DevOps Engineer.
  2. Truy xuất tài liệu mới nhất nhanh chóng: Các MCP Server được hướng dẫn để luôn truy xuất tài liệu mới nhất của Cloud Provider đó, việc truy xuất thông tin qua MCP Server có thể giúp chúng ta tiết kiệm nhiều giờ đọc tài liệu.
  3. Lấy thông tin, thay đổi cấu hình, tạo mới tài nguyên: Nếu đã chán với việc ClickOps thì giờ bạn có thể thử TalkOps "Hãy triển khai một web server sử dụng virtual machine trong project abc-xyz"
  4. Gợi ý để cải thiện khả năng High Availability và Reliable cho hệ thống: Nhờ có dữ liệu về hệ thống đang chạy và dữ liệu về các best practices, LLM + MCP Server có thể cung cấp cho ta các gợi ý để nâng cấp hệ thống và phát hiện ra các điểm cấu hình không đúng.

Gần đây Azure vừa đã đưa ra dịch vụ SRE AI Agent với khả năng tự động phát hiện lỗi và đẩy nhanh quá trình debug vấn đề, cùng đó là tự động sửa lỗi. https://techcommunity.microsoft.com/blog/azurepaasblog/introducing-azure-sre-agent/4414569

  1. Và còn rất nhiều use case nữa...

Một số MCP Server cho Cloud Provider phổ biến:

Kubernetes / Docker MCP Server

Là một Devops Engineer thì chắc hẳn ai cũng sẽ phải triển khai dịch vụ trên môi trường Kubernetes hoặc Docker. Khi sử dụng các công cụ này có đôi lúc chúng ta cũng sẽ quên các flag trong command cần sử dụng để open port hay mount external volume,... nhưng những điều này thì LLM không bao giờ quên.

Một vài use case mà bạn như một DevOps Engineer có thể áp dụng các MCP Server này:

Triển khai một ứng dụng nhiều thành phần như Wordpress với 1 câu lệnh đơn giản

image.png

Trích xuất logs và phân tích lỗi trong hệ thống

image.png

Sau đây là các tính năng đã được hỗ trợ của Kubernetes MCP Server, như bạn có thể thấy MCP Server này đã hỗ trợ hầu hết các hành động mà một Devops Engineer cần tương tác với Kubernetes.

image.png


Docker MCP Server: https://github.com/QuantGeekDev/docker-mcp (Unoffficial)

Kubernetes MCP Server: https://github.com/Flux159/mcp-server-kubernetes (Unoffficial)

Git MCP Server

image.png

Git - công cụ quản lý phiên bản source code hay các nền tảng như Github, Gitlab, Azure Devops là nhưng công cụ không chỉ Devops mà toàn bộ Developer đều phải sử dụng trong công việc, sử dụng MCP Server để tương tác với Git cũng đem lại nhưng lợi ích bất ngờ:

Tự động viết commit message rồi push lên remote repo: Chắc hẳn không ít lần bạn sẽ khựng lại khi viết commit message, băn khoăn viết sao cho ý nghĩa hay commit với message "update" cho nhanh. Giờ đây với MCP bạn có thể đẩy phần công việc này cho AI

Tự động tạo Pull Request, Review sự thay đổi trong PR: Code pair review không còn quá mệt mỏi nữa khi giờ đây LLM có thể lấy được sự thay đổi trong các PR và giúp bạn review trước, đưa ra các ý tưởng cải thiện ban đầu.

Kích hoạt, chỉnh sửa, lấy thông tin về CI/CD pipeline/workflows: CI/CD pipeline luôn là một phần không thể thiếu trong công việc của một Devops Engineer, giờ đây ta sẽ có nhiều lựa chọn hơn trong việc kích hoạt, thống kê số liệu về số lượng failed pipeline, trạng thái của pipeline đang chạy,..


Github MCP Server: https://github.com/github/github-mcp-server

Gitlab MCP Server: https://github.com/modelcontextprotocol/servers/tree/main/src/gitlab (Unoffficial)

Azure Devops Server: https://github.com/Tiberriver256/mcp-server-azure-devops (Unoffficial)

Database MCP Server

image.png

Dù có dành có nhiều thời gian đến đâu, đối với cá nhân mình database luôn là một lĩnh vực khá khó nhai và am hiểu tường tận bởi số lượng engine đa dạng và các thuật toán hóc búa của từng database. Tuy nhiên với MCP Server, việc tương tác và làm chủ database sẽ trở nên dễ dàng hơn rất nhiều. Tận dụng các mô hình ngôn ngữ lớn cùng context từ MCP Server, ta có thể:

Viết những câu SQL chính xác hơn cho riêng từng database Với khả năng truy xuất được schema của database, LLM có thể gợi ý cho ta những câu query phức tạp.

Phân tích, tối ưu index, queries MCP Server giúp việc tối ưu Index, queries trở nên dễ dàng hơn khi AI Model có đầy đủ các thông tin về thời gian chạy, cấu trúc database và query plan.

Tạo dữ liệu mẫu nhanh chóng Đã bao giờ bạn cần dữ liệu mẫu mà không biết kiếm ở đâu ra chưa? Đây lại chính là điểm mạnh của AI LLM, nó có thể giúp ta gen vài nghìn bản ghi với dữ liệu có độ ngẫu nhiên cao và khá giống thật.


Hiện nay hầu hết các database đều đã có MCP Server, tuy nhiên database là một phần nhạy cảm trong hệ thống, bạn cần cẩn trọng trước khi sử dụng. Bạn có thể dễ dàng tìm kiếm MCP Server phù hợp với database engine với keyword "Database Engine + MCP Server"

PostgreSQL MCP Server: https://github.com/crystaldba/postgres-mcp (Unoffficial) MySQL MCP Server: https://github.com/benborla/mcp-server-mysql (Unoffficial) MongoDB MCP Server: https://github.com/mongodb-js/mongodb-mcp-server

IaC Tool MCP Server

image.png

Giờ đây bất cứ hệ thống nào dù on Cloud hay on Premises đều sử dụng các công cụ IaC như Terraform hay Pulumi để tạo tài nguyên tự động và để quản lý cấu hình. Vậy MCP Server có thể áp dụng vào trong các công cụ IaC này thế nào?

Cho phép lấy thống tin về các packages / provider: Thay vì ngồi đọc document thủ công trên trang web, bằng cách sử dụng MCP Server ta có thể tìm thấy các provider hoặc package một các nhanh chóng cùng phần tài liệu chính xác mà ta cần.

Phân tích private modules: Đã bao giờ bạn phải sử dụng các private module mà không có hướng dẫn sử dụng chưa :v Với các cài đặt sẵn trong MCP Server, nó có thể giúp ta phân tích các private module và đưa ra hướng dẫn sử dụng, thậm chí là viết document.

Tự động apply, review sự thay đổi


Terraform MCP Server: https://github.com/hashicorp/terraform-mcp-server

Pulumi MCP Server: https://github.com/pulumi/mcp-server

Kết

Cám ơn các bạn đã đọc đến tận đây, hy vọng bài viết có đem lại giá trị cho bạn.

Nếu thấy bài viết hay hãy Upvote và Follow mình để theo dõi thêm các bài viết khác nữa nhé 😄

Nếu như bạn đang gặp khó khăn trong vấn đề chuyên môn, cần người hỗ trợ về mặt hệ thống, DevOps tools hay cần định hướng trong công việc thì mình tự tin có thể hỗ trợ được bạn. Liên hệ với mình để trao đổi thêm nhé https://hoangviet.io.vn/

Bình luận

Bài viết tương tự

- vừa được xem lúc

Đề thi interview DevOps ở Châu Âu

Well. Chào mọi người, mình là Rice - một DevOps Engineers ở đâu đó tại Châu Âu.

0 0 99

- vừa được xem lúc

In calculus, love also means zero.

Mình nhớ hồi năm 2 đại học, thầy giáo môn calculus, trong một giây phút ngẫu hứng, đã đưa ra cái definition này. Lúc đấy mình cũng không nghĩ gì nhiều.

0 0 70

- vừa được xem lúc

Chuyện thay đổi

Thay đổi là một thứ gì đó luôn luôn đáng sợ. Cách đây vài tháng mình có duyên đi làm cho một banking solution tên là X.

0 0 55

- vừa được xem lúc

Pet vs Cattle - Thú cưng và gia súc

Khái niệm. Pets vs Cattle là một khái niệm cơ bản của DevOps. Bài viết này sẽ nói về sự phát triển của các mô hình dịch vụ từ cốt lõi Pets and Cattle. 1.

0 0 42

- vừa được xem lúc

Git workflow được Google và Facebook sử dụng có gì hay ho

Với developer thì Git hẳn là công cụ rất quen thuộc và không thể thiếu rồi. Thế nhưng có mấy ai thực sự hiểu được Git.

0 0 94

- vừa được xem lúc

Kubernetes - Học cách sử dụng Kubernetes Namespace cơ bản

Namespace trong Kubernetes là gì. Tại sao nên sử dụng namespace.

0 0 123