Đề cương khóa học
Chủ quyền DevSecOps với GitLab
- So sánh CE, EE và GitLab.com: đối chiếu tính năng và mức độ kiểm soát.
- Kiến trúc Omnibus và các tùy chọn triển khai Helm trên Kubernetes.
- Rủi ro bị khóa chặt vào dịch vụ SaaS và yêu cầu tuân thủ quyền sở hữu dữ liệu.
Cài đặt và Kiến trúc
- Cài đặt Omnibus trên Ubuntu với PostgreSQL và Redis.
- Triển khai GitLab Helm chart trên Kubernetes kèm theo các vùng lưu trữ bền vững (persistent volumes).
- Các dịch vụ bên ngoài: lưu trữ đối tượng, SMTP, LDAP.
- Nhân bản địa lý (Geo replication) cho khả năng phục hồi sau thảm họa đa vùng.
Quản lý Kho lưu trữ và Dự án
- Nhóm (Groups), nhóm con (subgroups) và cấu trúc phân cấp dự án.
- Quy trình yêu cầu hợp nhất (Merge request), rà soát mã và các quy tắc phê duyệt.
- Bảng công việc (Issue boards), Epic và Milestone cho quy hoạch Agile.
- Wiki, đoạn mã nhanh (snippets) và quản lý bản phát hành.
Kỹ thuật đường dẫn CI/CD
- Cú pháp .gitlab-ci.yml, các giai đoạn (stages) và phụ thuộc giữa các công việc (jobs).
- Các loại Runner: dùng chung, theo nhóm và Runner cụ thể.
- Bộ thực thi Docker, bộ thực thi Kubernetes và khả năng tự động mở rộng.
- Bộ nhớ đệm kết quả trung gian (Artifact caching), xuất bản vào kho lưu trữ và các giai đoạn triển khai.
Quét bảo mật
- Quét SAST, DAST, quét phụ thuộc và quét container.
- Phát hiện bí mật (secrets) và tuân thủ giấy phép.
- Bảng điều khiển lỗ hổng và theo dõi quá trình khắc phục.
Xác thực và Ủy quyền
- Xác thực và đăng nhập một lần (SSO) qua LDAP, SAML và OpenID Connect.
- Xác thực hai yếu tố (2FA) và mã truy cập cá nhân (personal access tokens).
- Danh sách cho phép địa chỉ IP và nhật ký sự kiện kiểm toán.
Kho lưu trữ và Quản lý gói
- Kho lưu trữ container: xác thực, chính sách dọn dẹp và nhân bản.
- Kho lưu trữ gói cho Maven, npm, PyPI và Conan.
- Tải lên các gói tổng quát (generic package) dành cho tài sản nội bộ.
Giám sát và Mở rộng quy mô
- Số liệu từ GitLab Exporter và bảng điều khiển Grafana.
- Tinh chỉnh cơ sở dữ liệu và cấu hình kết nối PgBouncer.
- Mở rộng quy mô ngang cho các nút web, API và sidekiq.
- Chiến lược sao lưu: các tác vụ rake, lưu trữ đối tượng và xác minh khôi phục.
Yêu cầu
- Kỹ năng quản trị hệ thống Linux ở mức nâng cao và kiến thức cơ bản về Ruby/Go.
- Hiểu biết về CI/CD, điều khiển container (container orchestration) và quy trình làm việc với Git.
- Kinh nghiệm vận hành PostgreSQL và Redis ở quy mô lớn.
Đối tượng tham gia
- Các nhóm DevOps trong doanh nghiệp đang chuyển đổi từ GitLab.com hoặc GitHub Enterprise.
- Các tổ chức yêu cầu tự chủ hoàn toàn đối với công cụ DevSecOps.
- Các ngành công nghiệp chịu sự giám sát chặt chẽ, cần giải pháp CI/CD và kho lưu trữ tại chỗ.
Đánh giá (2)
Tôi thích điều đó là tôi đã nhận được câu trả lời ngay lập tức cho các câu hỏi của mình.
Szabolcs Kriston - Ericsson
Khóa học - Advanced GitLab
Dịch thuật bằng máy
Tôi thích cách giao tiếp dễ dàng giữa người hướng dẫn và chúng tôi, sự quan tâm đến các vấn đề của chúng tôi, những hiểu biết sâu sắc và kiến thức bổ sung được cung cấp qua câu trả lời cho các câu hỏi của chúng tôi. Tôi thích tốc độ, không lúc nào cảm thấy vội vàng, thậm chí khi có các vấn đề kỹ thuật. Mỗi chủ đề đều được xử lý một cách chu đáo.
Melania Mieczkowska - IAV Poland
Khóa học - Gitlab and Gitlab CI
Dịch thuật bằng máy