Cách trở thành kỹ sư DevOps trong sáu tháng hoặc thậm chí nhanh hơn. Phần 1. Giới thiệu

Целевая аудитория

Bạn có phải là nhà phát triển đang muốn hướng sự nghiệp của mình sang mô hình DevOps nâng cao hơn không? Bạn có phải là kỹ sư Ops cổ điển và muốn biết DevOps nghĩa là gì không? Hoặc bạn cũng vậy và sau một thời gian làm việc trong lĩnh vực CNTT, bạn muốn thay đổi nghề nghiệp và không biết bắt đầu từ đâu?
Nếu có, hãy đọc tiếp để tìm hiểu cách bạn có thể trở thành kỹ sư DevOps cấp trung trong sáu tháng! Cuối cùng, nếu bạn đã tham gia DevOps trong nhiều năm, bạn vẫn sẽ hiểu được nhiều điều từ loạt bài viết này để tìm hiểu xem ngành tích hợp và tự động hóa hiện đang ở đâu và nó sẽ hướng tới đâu.

Cách trở thành kỹ sư DevOps trong sáu tháng hoặc thậm chí nhanh hơn. Phần 1. Giới thiệu

Dù sao thì đây là gì?

Đầu tiên, DevOps là gì? Bạn có thể tìm trên Google các định nghĩa và xem qua tất cả các chi tiết dài dòng, nhưng hãy biết rằng hầu hết các định nghĩa chỉ là một mớ từ lộn xộn được gói gọn trong một hình thức sắp xếp hợp lý. Do đó, tôi sẽ cung cấp cho bạn bản tóm tắt tất cả các định nghĩa này: DevOps là một phương pháp cung cấp phần mềm trong đó vấn đề đau đầu và trách nhiệm được chia sẻ giữa tất cả những người liên quan. Đó là tất cả.

Được rồi, nhưng chữ viết tắt này có nghĩa là gì? Điều đó có nghĩa là theo truyền thống, Nhà phát triển (những người tạo ra phần mềm) được thúc đẩy thực hiện công việc của họ bằng những khuyến khích khác biệt đáng kể so với những khuyến khích của Bộ phận Vận hành (những người quản lý phần mềm). Ví dụ: với tư cách là một nhà phát triển, tôi muốn tạo ra càng nhiều tính năng mới càng nhanh càng tốt. Suy cho cùng, đây là công việc của tôi và đây là những gì khách hàng yêu cầu! Tuy nhiên, nếu tôi là người Vận hành thì tôi cần càng ít tính năng mới càng tốt, bởi vì mọi tính năng mới đều là một sự thay đổi và bất kỳ thay đổi nào cũng tiềm ẩn nhiều vấn đề. Kết quả của sự khuyến khích không phù hợp này là DevOps đã ra đời.

DevOps cố gắng kết hợp hoạt động phát triển và vận hành (tích hợp và tự động hóa) thành một nhóm. Ý tưởng là giờ đây một nhóm sẽ chia sẻ cả nỗi đau và trách nhiệm (và có thể là phần thưởng) trong việc xây dựng, triển khai và tạo doanh thu từ phần mềm hướng tới khách hàng.

Những người theo chủ nghĩa thuần túy sẽ nói với bạn rằng không có cái gọi là "kỹ sư DevOps". "DevOps là một nền văn hóa, không phải một vai trò," họ sẽ nói với bạn. Tất nhiên, từ quan điểm kỹ thuật thì họ đúng, nhưng, cũng như vậy Thông thường, thuật ngữ này đã vượt quá ý nghĩa ban đầu của nó, kỹ sư DevOps giống như “kỹ sư hệ thống 2.0.” Nói cách khác, anh ta là người hiểu rõ vòng đời phát triển phần mềm và tạo ra các công cụ và quy trình phát triển phần mềm. để giải các bài toán vận hành cổ điển.

Cách trở thành kỹ sư DevOps trong sáu tháng hoặc thậm chí nhanh hơn. Phần 1. Giới thiệu

DevOps cuối cùng có nghĩa là tạo ra các quy trình kỹ thuật số lấy mã từ máy tính xách tay của nhà phát triển và biến nó thành doanh thu từ việc sử dụng sản phẩm cuối cùng, đó chính là nội dung của nó. Lưu ý rằng việc chọn nghề DevOps sẽ được đền bù khá cao bằng các phần thưởng tài chính, hầu hết mọi công ty đều “làm DevOps” hoặc tự nhận mình là một. Bất kể các công ty này tọa lạc ở đâu, cơ hội việc làm nhìn chung của DevOps đều khá cao và mang lại việc làm “vui vẻ” và ý nghĩa trong nhiều năm tới.

Tuy nhiên, hãy cảnh giác với những công ty thuê “nhóm DevOps” hay “bộ phận DevOps”. Nói đúng ra, những thứ như vậy không nên tồn tại, bởi vì suy cho cùng thì DevOps vẫn là một nền văn hóa và một cách cung cấp phần mềm chứ không phải bố trí nhân sự cho một nhóm mới hay tạo ra một bộ phận với một cái tên lạ mắt.

Từ chối trách nhiệm

Bây giờ chúng ta hãy đặt ly Kool-Aid sang một bên và suy nghĩ về những điều sau đây. Bạn đã từng nghe câu ngạn ngữ cũ “không có kỹ sư DevOps cấp dưới nào chưa?” Nếu không thì hãy biết rằng đây là một câu nói phổ biến trên Reddit và StackOverflow. Nhưng nó có nghĩa gì?

Nói một cách đơn giản, cụm từ này có nghĩa là phải mất nhiều năm kinh nghiệm kết hợp với sự hiểu biết vững chắc về các công cụ để cuối cùng trở thành một học viên DevOps cấp cao thực sự hiệu quả. Và thật không may, không có con đường tắt nào để đạt được mục tiêu. Vì vậy, đây không phải là một nỗ lực nhằm đánh lừa hệ thống - tôi không nghĩ thực sự có thể giả vờ là một kỹ sư DevOps cấp cao với một vài tháng kinh nghiệm trong ngành. Để đạt được sự hiểu biết vững chắc về các công cụ và phương pháp đang thay đổi nhanh chóng đòi hỏi nhiều năm kinh nghiệm và không thể tránh khỏi điều đó. Tuy nhiên, có một danh sách các công cụ và khái niệm gần như nhất quán (thời trang, nếu bạn muốn) mà hầu hết các công ty sử dụng và đó là điều chúng ta sẽ nói đến.

Xin nhắc lại, các công cụ khác với các kỹ năng, vì vậy khi học các công cụ này, hãy đảm bảo bạn không bỏ qua các kỹ năng của mình (khảo sát, kết nối mạng, giao tiếp bằng văn bản, khắc phục sự cố, v.v.). Quan trọng nhất, đừng bỏ qua những gì chúng tôi muốn tìm - một cách để tạo ra một quy trình kỹ thuật số hoàn toàn tự động lấy ý tưởng và biến chúng thành những đoạn mã tạo doanh thu. Đây là kết luận quan trọng nhất trong toàn bộ bài viết này!

Nói nhảm đủ rồi, khi nào tôi có thể bắt đầu?

Dưới đây là lộ trình Kiến thức cơ bản của DevOps. Sau khi nắm vững mọi thứ được mô tả ở đó, bạn có thể tự gọi mình là kỹ sư DevOps một cách an toàn và trung thực! Hoặc một kỹ sư đám mây nếu bạn không thích cái tên "DevOps".

Cách trở thành kỹ sư DevOps trong sáu tháng hoặc thậm chí nhanh hơn. Phần 1. Giới thiệu

Bản đồ này thể hiện ý tưởng của tôi (và có lẽ là hầu hết những người làm việc trong lĩnh vực này) về những điều mà một kỹ sư DevOps có năng lực nên biết. Tuy nhiên, đây chỉ là ý kiến ​​và tất nhiên sẽ có những người không đồng tình với quan điểm đó. Điều này ổn! Ở đây, chúng tôi không phấn đấu để đạt được sự hoàn hảo, chúng tôi đang phấn đấu để có một nền tảng vững chắc mà trên đó chúng tôi thực sự có thể xây dựng.

Bạn phải đi qua con đường này dần dần, từng lớp một. Hãy bắt đầu (và tiếp tục!) với các nguyên tắc cơ bản bằng cách tìm hiểu trước về các thành phần màu xanh lam—Linux, Python và AWS. Sau đó, nếu thời gian hoặc nhu cầu thị trường việc làm cho phép, hãy làm những việc màu tím - Golang và Google Cloud.

Thành thật mà nói, lớp cơ bản trên cùng là thứ bạn sẽ phải nghiên cứu mãi mãi. OS Linux rất phức tạp và phải mất nhiều năm để thành thạo. Python yêu cầu thực hành liên tục để luôn cập nhật. AWS đang phát triển nhanh đến mức những gì bạn biết hôm nay sẽ chỉ là một phần trong danh mục kiến ​​thức tổng thể của bạn sau một năm nữa. Khi bạn đã học được những điều cơ bản, hãy chuyển sang bộ kỹ năng thực tế. Xin lưu ý rằng có tổng cộng 6 cột màu xanh lam (Cấu hình, Phiên bản, Đóng gói, Triển khai, Khởi chạy, Giám sát), mỗi cột học một tháng.

Cách trở thành kỹ sư DevOps trong sáu tháng hoặc thậm chí nhanh hơn. Phần 1. Giới thiệu

Tất nhiên, bạn nhận thấy sự thiếu vắng một giai đoạn quan trọng trong quy trình kéo dài sáu tháng của chúng tôi - thử nghiệm. Tôi đã cố tình không đưa nó vào lộ trình vì việc viết một mô-đun, các bài kiểm tra tích hợp và chấp nhận không hề dễ dàng và theo truyền thống, đó là trách nhiệm của các nhà phát triển. Và việc bỏ qua giai đoạn “thử nghiệm” được giải thích là do mục tiêu của lộ trình này là nắm vững các kỹ năng và công cụ cơ bản càng nhanh càng tốt. Theo tác giả, thiếu kinh nghiệm kiểm thử chỉ là một trở ngại nhỏ cho việc sử dụng DevOps đúng cách.

Ngoài ra, hãy nhớ rằng ở đây chúng ta không học toàn bộ những câu lảm nhảm về kỹ thuật không liên quan mà là sự hiểu biết về các công cụ kết hợp với nhau để tạo ra một câu chuyện rõ ràng. Câu chuyện này nói về tự động hóa quy trình từ đầu đến cuối—một dây chuyền lắp ráp kỹ thuật số di chuyển các bit giống như một dây chuyền lắp ráp. Bạn không muốn học một loạt công cụ và tiếp tục dừng lại! Các công cụ DevOps thay đổi nhanh chóng nhưng các khái niệm thay đổi ít thường xuyên hơn. Vì vậy, bạn nên cố gắng sử dụng các công cụ làm phương tiện giảng dạy cho các khái niệm cấp cao hơn.

Được rồi, hãy đào sâu hơn một chút!

Kiến thức cơ bản

Bên dưới bước trên cùng có nội dung Foundation, bạn có thể thấy các kỹ năng mà mọi kỹ sư DevOps nên thành thạo. Những kỹ năng này giúp bạn tự tin xử lý ba trụ cột của ngành: hệ điều hành, ngôn ngữ lập trình và đám mây công cộng. Những điều này không phải là thứ bạn có thể nhanh chóng học hỏi và tiếp tục. Những kỹ năng này cần phải không ngừng được cải thiện và thành thạo để có thể đứng đầu ngành và phù hợp với môi trường chuyên nghiệp xung quanh bạn. Chúng ta hãy đi qua từng cái một.

Linux là nơi mọi thứ hoạt động. Bạn có thể trở thành một người thực hành DevOps xuất sắc trong khi vẫn hoàn toàn ở trong hệ sinh thái Microsoft không? Chắc chắn bạn có thể! Không có luật nào quy định rằng bạn chỉ sử dụng Linux. Tuy nhiên, hãy nhớ rằng mặc dù thực tế là tất cả mọi thứ trên Linux đều có thể được thực hiện trong Windows, nhưng nó diễn ra ở đó khó khăn hơn nhiều và có ít chức năng hơn. Tại thời điểm này, có thể chắc chắn rằng nếu không biết Linux thì không thể trở thành một DevOps chuyên nghiệp thực thụ, vì vậy Linux là thứ mà bạn nên nghiên cứu và học hỏi.

Thành thật mà nói, cách tốt nhất để làm điều này là chỉ cần cài đặt Linux (Fedora hoặc Ubuntu) tại nhà và sử dụng nó nhiều nhất có thể. Tất nhiên, bạn sẽ làm hỏng rất nhiều thứ, bạn sẽ gặp khó khăn trong quá trình làm việc, bạn sẽ phải sửa chữa mọi thứ, nhưng bạn sẽ học Linux!

Cách trở thành kỹ sư DevOps trong sáu tháng hoặc thậm chí nhanh hơn. Phần 1. Giới thiệu

Nhân tiện, các biến thể của RedHat phổ biến hơn ở Bắc Mỹ, vì vậy sẽ hợp lý hơn khi bắt đầu với Fedora hoặc CentOS. Nếu bạn đang phân vân không biết nên mua phiên bản KDE hay Gnome, hãy chọn KDE. Đây là thứ mà chính Linus Torvalds sử dụng.

Python là ngôn ngữ back-end thống trị hiện nay. Thật dễ dàng để bắt đầu và được sử dụng rộng rãi. Python rất phổ biến trong lĩnh vực trí tuệ nhân tạo và học máy, vì vậy nếu muốn chuyển sang một lĩnh vực hấp dẫn khác, bạn sẽ được chuẩn bị đầy đủ.

Cách trở thành kỹ sư DevOps trong sáu tháng hoặc thậm chí nhanh hơn. Phần 1. Giới thiệu

Dịch vụ web của Amazon: Một lần nữa, không thể trở thành một chuyên gia DevOps dày dạn kinh nghiệm nếu không có hiểu biết vững chắc về cách thức hoạt động của đám mây công cộng. Và nếu bạn muốn tìm hiểu thêm về nó, hãy xem Amazon Web Services. Đây là công ty hàng đầu trong lĩnh vực dịch vụ này và cung cấp bộ công cụ làm việc phong phú nhất.

Thay vào đó, có thể bắt đầu với Google Cloud hoặc Azure không? Tất nhiên bạn có thể! Nhưng nhớ lại cuộc khủng hoảng tài chính vừa qua, cần lưu ý rằng AWS là lựa chọn an toàn nhất, ít nhất là trong năm 2018, vì nó cho phép bạn đăng ký tài khoản miễn phí và bắt đầu khám phá các khả năng của dịch vụ đám mây. Ngoài ra, bảng điều khiển AWS còn cung cấp cho người dùng một menu đơn giản và rõ ràng để lựa chọn. Tin vui là bạn không cần phải biết tất cả công nghệ của Amazon để thực hiện việc này.

Cách trở thành kỹ sư DevOps trong sáu tháng hoặc thậm chí nhanh hơn. Phần 1. Giới thiệu

Bắt đầu với các mục sau: VPC, EC2, IAM, S3, CloudWatch, ELB (Cân bằng tải đàn hồi dưới ô EC2) và Nhóm bảo mật. Những điều này là đủ để bắt đầu và mọi doanh nghiệp dựa trên đám mây hiện đại đều sử dụng những công cụ này khá tích cực. Trang web đào tạo riêng của AWS là nơi lý tưởng để bắt đầu.

Tôi khuyên bạn nên dành 20-30 phút mỗi ngày để học và thực hành với ngôn ngữ Python, hệ điều hành Linux và dịch vụ đám mây AWS bên cạnh những thứ khác mà bạn sẽ phải học. Nhìn chung, tôi tin rằng dành một giờ mỗi ngày, năm lần một tuần là đủ để hiểu về ngành DevOps trong 6 tháng hoặc ít hơn. Có tổng cộng 6 thành phần chính, mỗi thành phần tương ứng với một tháng đào tạo. Đó là tất cả những gì bạn cần để có được kiến ​​thức cơ bản.
Trong các bài viết tiếp theo, chúng ta sẽ xem xét mức độ phức tạp tiếp theo: cách tự động hóa hoàn toàn việc cấu hình, tạo phiên bản, đóng gói, triển khai, chạy và giám sát phần mềm.

Sẽ sớm được tiếp tục...

Một số quảng cáo 🙂

Cảm ơn bạn đã ở với chúng tôi. Bạn có thích bài viết của chúng tôi? Bạn muốn xem nội dung thú vị hơn? Hỗ trợ chúng tôi bằng cách đặt hàng hoặc giới thiệu cho bạn bè, VPS đám mây cho nhà phát triển từ $4.99, một dạng tương tự duy nhất của các máy chủ cấp đầu vào do chúng tôi phát minh ra dành cho bạn: Toàn bộ sự thật về VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps từ 19$ hay cách share server? (có sẵn với RAID1 và RAID10, tối đa 24 lõi và tối đa 40GB DDR4).

Dell R730xd rẻ hơn gấp 2 lần tại trung tâm dữ liệu Equinix Tier IV ở Amsterdam? Chỉ ở đây 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV từ $199 ở Hà Lan! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - từ $99! Đọc về Làm thế nào để xây dựng cơ sở hạ tầng corp. đẳng cấp với việc sử dụng máy chủ Dell R730xd E5-2650 v4 trị giá 9000 euro cho một xu?

Nguồn: www.habr.com

Thêm một lời nhận xét