Khóa học On-premise DevOps có gì đặc biệt mà bạn nên học?

DevOps là gì?

DevOps là từ viết tắt của Development (nhà phát triển) và Operation(vận hành). Nói chung, một người làm công việc DevOps phải biết cả về lập trình, CI/CD cũng như kiến thức triển khai vận hành quản trị hệ thống máy chủ, hạ tầng mạng.

Với sự thay đổi chóng mặt của ngành công nghệ, những Developer không có kiến thức về quản trị hệ thống và những quản trị hệ thống mà không biết phát triển sản phẩm sẽ trở nên kém quan trọng và nhanh chóng bị đào thải. Do vậy, kỹ năng sản xuất và vận hành phần mềm dựa trên DevOps là yêu cầu bắt buộc của các nhà phát triển trong tương lai.

DevOps sẽ biến đổi một người có một kỹ năng duy nhất thành một người đa năng bao gồm lập trình, xây dựng hạ tầng và cấu hình, thử nghiệm, xây dựng và phát hành. Vì nó không chỉ giới hạn cho bất kỳ công nghệ cụ thể nào, những người làm việc trong môi trường DevOps liên tục làm việc với tích hợp và tự động hoá trong các công nghệ khác nhau.

Để giải quyết câu hỏi “Học DevOps ở đâu?” , PNH tự hào là trung tâm đầu tiên cho ra khóa học toàn diện về các kiến thức cần có của một DevOps. Trong đó  Khóa học On-premise DevOps là khóa học tập trung vào việc triển khai DevOps trên hạ tầng tại chỗ (on-premise).

Đối tượng khóa học

Khóa học này dành cho những người làm trong ngành CNTT như Coder, IT support, IT help desk, sinh viên, freelancer…chưa có kiến thức về hệ thống nhưng có định hướng phát triển bản thân theo Devops.

Yêu cầu đầu vào: Là sinh viên, người đi làm theo ngành CNTT.

Mục tiêu khóa học

Mục tiêu khóa học này là đào tạo các chuyên gia có thể  xây dựng quy trình DevOps sản xuất và vận hành phần mềm hoàn chỉnh sử dụng các công nghệ mới nhất trên hạ tầng máy chủ tại chỗ (on-premises).

Tại sao bạn nên tham gia khóa học này?

Những người làm công việc DevOps thường được trả lương cao nhất trong giới chuyên gia về CNTT hiện nay, và nhu cầu thị trường cho công việc này phát triển nhanh chóng vì các tổ chức sử dụng DevOps ngày càng tăng cao.

Theo một báo cáo gần đây được công bố bởi Puppetlabs, các tổ chức sử dụng hướng tiếp cận DevOps triển khai code với tần suất nhiều hơn 30 lần so với các đối thủ cạnh tranh của họ, và số lần triển khai thất bại của họ ít hơn đến 50%.

Chỉ trong 2 năm, danh sách các công việc DevOps trên trang tuyển dụng uy tín Indeed.com đã tăng đến 75%. Trên LinkedIn.com, số lượng đề cập đến kỹ năng DevOps đã tăng 50%. Trong một cuộc khảo sát gần đây của Puppetlabs, một nửa số người được hỏi trong tổng số 4.000 người tham gia (ở hơn 90 quốc gia) cho biết công ty của họ có quan tâm nhiều đến kỹ năng DevOps khi tuyển dụng.

Đối với các Công ty phần mềm, nhóm phát triển, khởi nghiệp hoặc thậm chí là cá nhân muốn tự triển khai dự án startup của riêng mình thì đều cần xây dựng một hệ thống CI/CD để có quy trình sản xuất phần mềm tự động và chuyên nghiệp. Nắm vững kiến thức DevOps giúp bạn nâng cao năng suất lao động, gia tăng thêm thu nhập và nâng cao trình độ của bản thân.

Kết quả đạt được

Khóa học cung cấp cho bạn kiến thức toàn diện về cả phần DevOps trên môi trường On-premise. Các kiến thức bạn nhận được trong khóa học bao gồm:

Networking → Hardware System → Linux OS → Application Load Balancing → GIT → Ansible → Docker → Kubernetes → Jenkin → Monitoring with Elastic Stack → Xây dựng quy trình CI/CD hoàn chỉnh

Bạn có thể tự xây dựng một quy trình CI/CD hoàn chỉnh triển khai trên hạ tầng máy chủ tại chỗ, máy chủ ảo tại chỗ hoặc các máy chủ ảo thuê của các nền tảng đám mây như AWS, Azure…. Bạn hoàn toàn có thể sử dụng các kiến thức trong khóa học để làm việc trong cả môi trường Cloud.

Nội dung khóa học

Module 1: Networking

  • IP address, subnetting, private IP
  • Internet protocol: HTTPS, DNS, TCP, UDP, FTP, SMTP, POP3
  • Routing protocol: static route, RIP, OSPF
  • VLAN routing
  • NAT
  • Access-list
  • DHCP, DNS

Module 2: Hardware system

  • RAID: 0,1,10,5
  • Server hardware component: CPU Core, RAM, Network, HBA, Management
  • NAS storage: SMB, NFS
  • SAN storage: iSCSI

Module 3: Linux OS

  • Linux distro
  • Disk management, Ram disk, File Hierarchy Structure, inode, file link
  • User/Group/Permissions
  • File management and transfer
  • SSH, key authentication
  • Process, crontab
  • Firewall
  • Shell script
  • Backup and restore

Module 4: Application Load Balancing

  • Web server, Web API
  • Nginx Load Balancing
  • Application Load Balancing Hardware

Module 5: GitLab

  • Git local repository
  • Git command
  • Git branch
  • Git remote repository
  • Using Github, GitLab
  • Gitlab repository
  • Gitlab registry
  • Gitlab Runner
  • Gitlab CI/CD pipeline

Module 6: Ansible

  • YAML
  • Inventory
  • Playbook
  • Vars
  • Modules
  • Roles
  • Ansible-galaxy

Module 7: Docker

  • Docker images
  • Docker network
  • Docker Volume
  • Docker Container
  • Docker compose
  • Docker Desktop
  • Docker registry
  • Database cluster

Module 8: Kubernetes

  • Install K8S Cluster: master node, worker node
  • K8S deployment
  • K8S network
  • Services
  • Namespace
  • Storage (PV, PVC)
  • ConfigMap, secret
  • Services Accounts and RBAC
  • NetworkPolicy
  • Security Context
  • Autoscale
  • Kubernetes Dashboard
  • Helm – Kubernetes Package Manager

Module 9: Jenkins

  • Install Jenkins
  • Jenkins build tools
  • Create Users & Manage Permissions in Jenkins
  • Create Job in Jenkins
  • Create Jenkins File
  • Jenkins CI/CD Pipeline
  • Blue Ocean Pipeline Editor

Module 10: Monitoring with Elastic Stack

  • Install ELK Stack
  • Elasticsearch
  • Logstash
  • Kibana
  • Logs and Metrics
  • Alert
  • Use case

Module 11: Xây dựng quy trình sản xuất vận hành phần mềm với CI/CD hoàn chỉnh

  • Xây dựng mô hình vận hành cho môi trường Production on-premise
  • Xây dựng GIT repository gồm 02 nhánh: Main và Develop (và các nhánh chức năng khác)
  • Leader merge code nhánh chức năng trong quá trình phát triển vào nhánh Develop
  • Hệ thống sẽ build và test source code nhánh Develop
  • Nếu không có lỗi, hệ thống sẽ tự deploy lên môi trường máy chủ Staging
  • QA, Tester sẽ truy cập và test trên môi trường Staging
  • Nếu pass, code trong nhánh Develop sẽ được Quản lý dự án merge sang nhánh Main
  • Nếu code nhánh main đạt được tiêu chí để release version, sẽ tiến hành xuất bản Tag version cho nhánh main
  • Hệ thống sẽ tự động test code tag version và build code, đẩy image version lên kho lưu trữ, sẵn sàng tính năng Deploy lên máy chủ production.
  • Quản lý dự án sẽ quyết định thời điểm và kích hoạt tự động deploy lên môi trường production.
  • QA, tester sẽ truy cập hệ thống và kiểm thử trên máy chủ Production, nếu không vượt qua được yêu cầu kiểm thử, quản lý dự án sẽ kích hoạt tự động rollback về phiên bản ổn định trước.
  • Coder sẽ được thông báo các vấn đề lỗi mỗi lần build, test để tiến hành fix lỗi và upload lại code lên GIT repository., quay lại chu trình từ ban đầu
  • Monitor hệ thống

Lợi ích khi tham gia học tập tại PNH

  • Được hỗ trợ các vấn đề liên quan đến bài học trước và sau quá trình học tại PNH;
  • Được hỗ trợ các thủ tục đăng ký thi chứng chỉ quốc tế tại trung tâm PNH;
  • Quan trọng hơn, bạn được cấp chứng nhận On-premise DevOps của PNH sau khi hoàn thành khóa học;
  • Được ưu đãi khi bạn đã từng tham gia các khóa học khác tại PNH;
  • Lịch khai giảng và học phí: TẠI ĐÂY

Thông tin liên hệ

HỌC VIỆN PNH – 19 NĂM ĐÀO TẠO & THI CHỨNG CHỈ CNTT QUỐC TẾ TẠI HÀ NỘI

⏩ Fanpage: Học viện đào tạo quản trị mạng PNH TẠI ĐÂY

☎️ Hotline 1 & Zalo: 0906 289 618 (Ms. Linh)

📞 Hotline 2 & Zalo: 0904 508 838 (Ms.Thủy)

📮 Điạ chỉ: P301, tầng 03 tòa nhà DETECH, số 8A Tôn Thất Thuyết, Hà Nội

⏩Tiktok: hocvien_pnh

⏩Youtube: Học viện đào tạo quản trị mạng PNH

Các câu hỏi thường gặp

1. Tôi đã làm lập trình được một thời gian, có nên học khoá này không?

Để làm được DevOps chắc chắn bạn phải biết về lập trình. Chính vì thế khóa học này rất phù hợp với những bạn là lập trình viên.

Rất nhiều lập trình viên đi làm nhiều năm cảm thấy khó khăn trong định hướng phát triển công việc. Lý do trong hầu hết các tình huống là họ quá bận vì đa số các lập trình viên ngoài việc làm trên công ty thì họ vẫn phải làm việc kể cả lúc ở nhà. Họ tập trung vào nâng cao năng suất lao động theo chiều sâu, đào sâu thêm các kỹ năng hiện có và mức lương cải thiện không đáng kể.

Thay vào đó bạn nên nâng cao năng suất lao động theo chiều ngang, mở rộng tư duy chấp nhận cái mới, ra khỏi vùng quen thuộc và hướng tới đạt kiến thức tổng hợp hơn.

Hãy nghĩ về việc bạn sẽ trả lương cho người thợ xây dựng: Bạn sẽ trả lương cao cho người chỉ biết xây, người biết xây và biết trát, hay là người biết xây, trát và lát nền ?

“Nếu không có kiến thức mới bạn sẽ không có thêm thu nhập mới”.

2. Tại sao làm DevOps lại cần kiến thức về Networking?

DevOps cần cả kiến thức về lập trình và networking để làm việc. Trước đây các ứng dụng lớn được triển khai trên Cluster vật lý, ngày nay các ứng này triển khai trên Cluster được quản lý bởi Kubernetes hay một hệ thống khác, tất cả đều cần am hiểu về Networking.  Hãy xem bức hình sau về kết nối mạng của các Pods bên trong trong Kubernetes Cluster. Nếu không có kiến thức về Networking, các bạn rất khó nắm được nguyên tắc hoạt động của hệ thống quản lý Cluster lớn nhất thế giới do Google phát triển này:

 

3. Tại sao khóa học lại kéo dài đến 120 giờ? Có kiến thức nào không cần thiết để có thể lược qua được không?

Không nên đánh đồng DevOps chỉ là quy trình CI/CD. Để thực sự trở thành chuyên gia DevOps, bạn cần chuẩn bị rất nhiều kiến thức: Programing, Testing, Networking, System, Storage, Database, Clustering, Monitoring, Security, quy trình CI/CD…. Kiến thức mà kỹ sư Devops cần tổng hợp từ cả SysAdmin và Coder cộng thêm quy trình CI/CD.

Để trang bị tất cả các kiến thức đấy, bạn có thể phải mất nhiều năm để tích lũy. Tuy nhiên, thực tế sử dụng có thể không cần đào sâu chi tiết về tất các các kiến thức từng phần như vậy. Khóa học On-Premise DevOps cố gắng cân bằng mục tiêu trang bị đầy đủ kiến thức cần thiết nhất của một kỹ sư DevOps và thời gian tối thiểu nhất để đạt được kiến thức đó.

Để rõ hơn, ví dụ các bạn triển khai quy trình CI/CD cho một phần mềm, trong thời gian chạy phần mềm, các bạn cần monitor về lưu lượng truy cập, khả năng đáp ứng của hệ thống, dữ liệu nhiều lên được lưu trữ ở đâu, làm thế nào để an toàn dữ liệu khi có sự cố, làm thế nào phục hồi dữ liệu khi phục hồi lại hệ thống gặp lỗi… rất nhiều kiến thức mà quy trình CI/CD chỉ là một phần trong đó.

4. Tôi làm Quản trị mạng, System có học được khóa này không?

Đối với những bạn đang làm về quản trị mạng, hệ thống có thể học ngay từ module số 2 hoặc module số 5 nếu đã có các kiến thức phần đầu. Tuy nhiên các bạn cần trang bị kiến thức về lập trình, có thể là tự học hoặc tham gia khóa học Lập trình Nodejs/Python cơ bản tại PNH trước khi bắt đầu.

Với những xu hướng mới, việc cài đặt và quản trị các phần mềm theo kiểu truyền thống sẽ bị thay thế dần bằng việc triển khai phần mềm trên những công nghệ mới hơn. Nếu không trang bị kiến thức DevOps, các bạn sẽ không thể bắt kịp với các yêu cầu quản trị hệ thống trong tương lai. Cơ hội nghề nghiệp cũng sẽ được mở rộng khi các bạn có những kiến thức mới về DevOps.

5. Em là sinh viên có học được khóa học này không?

Đối với sinh viên đa số các bạn đã được dạy lập trình trong trường. Vì vậy bạn đã có đủ kiến thức để tham gia ngay khóa học. Việc trang bị sớm kiến thức DevOps sẽ giúp bạn có thể nắm bắt được những cơ hội việc làm tốt ngay sau khi ra trường.

Không chỉ có sinh viên mà các lập trình viên đi làm nhiều năm vẫn cần học thêm DevOps. Do vậy, các bạn nên định hướng cho bản thân học càng sớm càng tốt.

Có nhiều bạn cho rằng nên chọn thời điểm học sao cho khi kết thúc khóa học cũng là lúc ra trường. Đây là một tính toán khá rủi ro. Khác với kiến thức quản trị mạng (system), nếu không có môi trường để thực hành, kiến thức của các bạn có thể bị mai một dần. Kiến thức DevOps sẽ được sử dụng trong suốt thời gian các bạn làm lập trình, do vậy, càng biết sớm, các bạn càng có nhiều kinh nghiệm khi phỏng vấn những công việc tốt.

6. Tại sao tôi nên tham gia khóa học này? Tôi tự học có được không?

Bạn hoàn toàn có thể tự học bất kỳ kiến thức nào hiện nay nhờ lượng thông tin khổng lồ trên Internet. Tuy nhiên, việc tham gia các khóa học bài bản sẽ giúp bạn hiểu sâu, đầy đủ và tiếp thu kiến thức một cách có hệ thống. Ngay cả khi tham gia đầy đủ khóa học này, nếu bạn không nghiêm túc trong việc học, bạn cũng rất khó nắm bắt và theo kịp tất cả kiến thức. Chính vì thế việc tự học còn khó khăn hơn gấp nhiều lần, đòi hỏi bạn phải có kinh nghiệm, kiến thức và dành nhiều thời gian để nghiên cứu.

Nếu bạn tham gia khóa học này cơ hội nghề nghiệp với mức thu nhập tốt hơn chắc chắn mở ra ngay trước mắt. Bạn nên suy nghĩ về việc tham gia khóa học như một khoản đầu tư vào bản thân, nâng cao năng suất lao động để có được các cơ hội tốt với mức thu nhập tốt trong tương lai.

7. Tôi là quản lý của một công ty làm phần mềm, tôi có nên cử nhân viên theo học lớp này không?

Nếu công ty bạn cần có nhân lực DevOps, dưới góc độ kinh doanh thì việc cử nhân viên theo học là một lựa chọn kinh tế.

Các công ty phần mềm luôn là các công ty đầy sáng tạo với nhân viên có khả năng học tập nhanh và tự học tốt. Tuy nhiên, bài toán về chi phí và thu hồi mới là bài toán cốt lõi của mọi doanh nghiệp. Ngay cả khi bạn đang sở hữu những nhân viên xuất sắc, bạn giao cho họ nghiên cứu và hệ thống kiến thức để có thể áp dụng vào trong công việc cũng mất vài tháng hoặc lâu hơn. Trong vài tháng đó đơn vị của bạn vẫn phải trả lương cho nhân viên đầy đủ. So với việc cử đi học thì chi phí lương cho nhân viên là rất lớn chưa kể đến các chi phí cơ hội khác. Hơn nữa việc tự nghiên cứu thường mất nhiều thời gian, khó hệ thống kiến thức một cách hợp lý bằng việc cử đi học.

PNH cũng có các chương trình đào tạo dành riêng cho doanh nghiệp với thời lượng ngắn: 15 ngày, 01 tháng hoặc 02 tháng để đáp ứng thời gian của các đơn vị doanh nghiệp có nhu cầu.

Chúc các bạn thành công trong công việc !

0 Phản hồi

Để lại bình luận của bạn

Hãy để lại bình luận của bạn để cùng trao đổi với chúng tôi !

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Website này sử dụng Akismet để hạn chế spam. Tìm hiểu bình luận của bạn được duyệt như thế nào.