Câu hỏi: Jenkins là gì?

Jenkins là một công cụ tích hợp liên tục mã nguồn mở được viết bằng Java. Jenkins cung cấp các dịch vụ tích hợp tùy chỉnh để phát triển phần mềm. Jenkins là một hệ thống dựa trên máy chủ, được sử dụng bởi nhiều nhóm phát triển.

Câu hỏi: Tại sao tôi nên sử dụng Jenkins?

Bạn nên sử dụng Jenkins nếu muốn tăng tốc Vòng đời phát triển phần mềm (SDLC). Jenkins cho phép bạn tích hợp xây dựng, triển khai và thử nghiệm trên nhiều môi trường khác nhau, đồng thời giảm thời gian chờ đợi cho các nhóm phát triển của bạn. Cuối cùng, vì cho phép bạn liên tục tích hợp, nên Jenkins rất phù hợp với phương pháp DevOps và phương pháp Agile sử dụng các chu kỳ lặp nhanh.

Câu hỏi: Tại sao tôi nên chạy Jenkins trên AWS?

AWS cung cấp tài nguyên cơ sở hạ tầng đáng tin cậy, có thể mở rộng và an toàn, lý tưởng để chạy các ứng dụng như Jenkins. Bằng cách chạy Jenkins trên môi trường điện toán AWS, bạn chỉ trả tiền cho những gì mình sử dụng và bạn có thể tăng hoặc giảm dung lượng sao cho phù hợp với nhu cầu cụ thể của mình.

Câu hỏi: Tôi sẽ sở hữu môi trường Jenkins của mình chứ?

Đúng vậy - tất cả các tài nguyên được tạo khi thực hiện hướng dẫn Bắt đầu này vẫn là của bạn và sẽ nằm trong tài khoản của bạn. Chúng sẽ tồn tại cho đến khi bạn quyết định chấm dứt phiên bản Amazon EC2.

Câu hỏi: Chi phí của Jenkins là bao nhiêu?

Jenkins là phần mềm mã nguồn mở miễn phí. Chi phí duy nhất của bạn là cơ sở hạ tầng cơ bản mà Jenkins chạy. Để biết thêm thông tin về chi phí, vui lòng xem mục Dịch vụ được sử dụng và chi phí.

Câu hỏi: Làm thế nào tôi có thể bảo mật Jenkins trên AWS?

Bạn nên sử dụng Nhóm bảo mật và sử dụng mật khẩu mạnh. Bạn cũng nên đảm bảo rằng bản cài đặt EC2 và Jenkins của bạn được cập nhật với các bản vá bảo mật mới nhất. Nhóm bảo mật hoạt động như tường lửa ảo, trạng thái kiểm soát lưu lượng cho một hoặc nhiều trường hợp. Nếu có thể, hãy thu hẹp phạm vi IP để chỉ còn các địa chỉ IP nguồn có liên quan. Không mở bất kỳ cổng TCP hoặc UDP bên ngoài nào (TCP 80 và 8080 là đủ). Khi thiết lập mật khẩu cho Jenkins, hãy thực hiện theo các biện pháp thực hành tốt nhất về mật khẩu thông thường và sử dụng các ký tự chữ-chữ số viết thường và viết hoa ngoài các ký hiệu (ví dụ: /, ., !, *…). Bạn có thể đảm bảo rằng phiên bản Amazon Linux của bạn đã cài đặt các gói mới nhất bằng cách chạy cập nhật yum. Thao tác này cũng sẽ cập nhật Jenkins nếu bạn đã cài đặt bằng Yum, theo hướng dẫn trong mục này.

Câu hỏi: Tôi có thể chạy Jenkins trong một mạng con riêng không?

Bạn có thể cài đặt Jenkins trên phiên bản EC2 là một phần của mạng con công cộng hoặc riêng. Nếu muốn đặt phiên bản vào một mạng con riêng, bạn sẽ cần đảm bảo rằng bạn có thể truy cập vào giao diện người dùng của Jenkins. Nếu đang kết nối qua Internet, bạn có thể chọn tạo nhóm mục tiêu Jenkins và sử dụng Application Load Balancer để tạo điểm cuối công khai cho phiên bản được lưu trữ riêng tư của bạn. Nếu bạn đang kết nối từ trung tâm dữ liệu của riêng mình, bạn sẽ muốn thiết lập VPN hoặc kết nối với Jenkins thông qua Direct Connect.

Câu hỏi: Làm thế nào tôi có thể thay đổi quy mô Jenkins?

Có một số cách bạn có thể đảm bảo rằng Jenkins sẽ theo kịp nhu cầu CI/CD của bạn. Một cách đơn giản là chia tỷ lệ theo chiều dọc của phiên bản EC2 bằng cách thay đổi kích thước phiên bản. Một cách khác là định cấu hình Jenkins Amazon EC2 Container Service Plugin để triển khai các tác vụ cho các nhiệm vụ phụ của Jenkins trên cụm ECS.