Câu chuyện đằng sau máy tính để bàn Linux nội bộ của Google

Mặc dù Chrome OS là hệ điều hành nổi tiếng nhất của Google, Google cũng sử dụng bản phân phối máy tính để bàn Linux của riêng mình có tên là gLinux trong nội bộ

  • Câu chuyện đằng sau máy tính để bàn Linux nội bộ của Google
    Bởi Steven J. Vaughan-Nichols

    Thế giới máy tính.

    linux logothông minh

    Nếu bạn nhìn xung quanh các văn phòng của Google ở ​​Mountain View, CA, bạn sẽ thấy các máy Windows, Chromebook, Mac — và máy tính để bàn gLinux. G gì, bạn hỏi?

    Bạn không thể có được nó - chết tiệt nó. — nhưng trong hơn một thập kỷ, Google đã nướng và ăn bản phân phối máy tính để bàn Linux tự làm của riêng mình. Phiên bản đầu tiên là Goobuntu. (Như bạn đoán từ cái tên, nó dựa trên Ubuntu. )

    Vào năm 2018, Google đã chuyển máy tính để bàn Linux nội bộ của mình từ Goobuntu sang một bản phân phối Linux mới, gLinux dựa trên Debian. Tại sao? . "

    Đó là một nỗi đau. Thêm vào nhu cầu tốn thời gian để tùy chỉnh hoàn toàn PC của các kỹ sư và Google đã quyết định rằng chi phí quá cao. Bên cạnh đó, "nỗ lực nâng cấp nhóm Goobuntu của chúng tôi thường mất hơn một năm. Với thời hạn hỗ trợ hai năm, chỉ còn một năm nữa là chúng tôi phải thực hiện lại quy trình tương tự cho LTS tiếp theo. Toàn bộ quá trình này là một yếu tố gây căng thẳng rất lớn cho nhóm của chúng tôi, vì chúng tôi nhận được hàng trăm lỗi yêu cầu trợ giúp cho các trường hợp góc. "

    Vì vậy, khi Google đã có đủ điều đó, nó đã chuyển sang Debian Linux (mặc dù không chỉ là Debian thuần túy). Công ty đã tạo ra một bản phân phối Debian cuốn chiếu. GLinux Cán thử nghiệm Debian (Rodete). Ý tưởng là người dùng và nhà phát triển được phục vụ tốt nhất bằng cách cung cấp cho họ các bản cập nhật và bản vá mới nhất khi chúng được tạo và sẵn sàng đưa vào sản xuất. Các bản phân phối như vậy bao gồm Arch Linux, Debian Testing và openSUSE Tumbleweed

    Đối với Google, mục tiêu trước mắt là thoát khỏi chu kỳ nâng cấp hai năm. Khi chuyển sang Tích hợp liên tục/Triển khai liên tục (CI/CD) đã cho thấy, những thay đổi gia tăng này hoạt động tốt. Chúng cũng dễ kiểm soát và khôi phục hơn nếu có sự cố xảy ra

    Để thực hiện tất cả những công việc này mà không tốn nhiều máu, mồ hôi và nước mắt, Google đã tạo ra một hệ thống quy trình làm việc mới, Sàng. Bất cứ khi nào Sàng phát hiện một phiên bản mới của gói Debian, nó sẽ bắt đầu một bản dựng mới. Các gói này được xây dựng trong các nhóm gói vì các gói riêng biệt thường phải được nâng cấp cùng nhau. Khi toàn bộ nhóm đã được xây dựng, Google sẽ chạy bộ thử nghiệm ảo hóa để đảm bảo không có thành phần cốt lõi nào và quy trình làm việc của nhà phát triển bị hỏng. Tiếp theo, mỗi nhóm được kiểm tra riêng với cài đặt hệ thống đầy đủ, khởi động và chạy bộ kiểm tra cục bộ. Quá trình xây dựng gói hoàn tất trong vòng vài phút nhưng quá trình thử nghiệm có thể mất tới một giờ

    Khi đã xong, tất cả các gói mới được hợp nhất với nhóm gói gLinux mới nhất. Sau đó, khi Google quyết định đã đến lúc đưa nó vào sản xuất, nhóm sẽ chụp nhanh nhóm đó. Cuối cùng, nó tung ra bản phát hành mới cho hạm đội. Tất nhiên, nó sẽ không chỉ đổ cho người dùng. Thay vào đó, nó sử dụng các nguyên tắc kỹ thuật độ tin cậy của Trang web (SRE) chẳng hạn như phân bổ gia tăng để đảm bảo không có gì sai sót

    Trong những năm qua, Google đã trở nên tốt hơn trong việc này. Ngày nay, nhờ có Sàng, toàn bộ nhóm phát triển gLinux bao gồm một vị trí kỹ sư phát hành trực duy nhất luân phiên giữa các thành viên trong nhóm. Không có cú hích lớn nào để nâng cấp hạm đội. Không có bản phát hành alpha, beta nhiều giai đoạn và tính khả dụng chung (GA)

    Tốt hơn nữa, nhờ lịch phát hành cuốn chiếu, Google có thể vá các lỗ hổng bảo mật trên toàn bộ nhóm một cách nhanh chóng mà không ảnh hưởng đến tính ổn định. Trước đây, các kỹ sư bảo mật phải xem xét cẩn thận từng Tư vấn Bảo mật Debian (DSA) để đảm bảo rằng bản sửa lỗi đã sẵn sàng.

    Ngoài ra, "bộ thử nghiệm cải tiến và các thử nghiệm tích hợp với các nhóm đối tác chính chạy các hệ thống quan trọng dành cho nhà phát triển cũng mang lại trải nghiệm ổn định hơn khi sử dụng bản phân phối Linux cung cấp các phiên bản Nhân Linux mới nhất. Mong muốn mạnh mẽ của chúng tôi về việc tự động hóa mọi thứ trong quy trình đã làm giảm đáng kể sự vất vả và căng thẳng trong nhóm. Giờ đây, chúng tôi cũng có thể báo cáo lỗi và sự không tương thích với các phiên bản thư viện khác trong khi vẫn đảm bảo rằng các công cụ của Google hoạt động tốt hơn trong hệ sinh thái Linux. "

    Sắp tới, nhóm của Google đã tuyên bố rằng nó sẽ hoạt động "chặt chẽ hơn với Debian thượng nguồn và đóng góp thêm các bản vá nội bộ của chúng tôi để duy trì hệ sinh thái gói Debian. "

    Đó là tất cả âm thanh tuyệt vời. Nhưng tôi có hai suy nghĩ để chia sẻ

    Đầu tiên, đối với một số tổ chức, việc phát hành LTS vẫn có ý nghĩa. Nếu bạn không cần các chương trình mới nhất, đẹp nhất cho doanh nghiệp của mình, Ubuntu hoặc Red Hat LTS Linux vẫn có ý nghĩa

    Thứ hai, và đây là điều quan trọng. Sàng nghe như tiếng mèo kêu. Một chương trình có thể tự động hóa quy trình sản xuất bản phân phối cuốn chiếu đến mức chỉ cần một kỹ sư duy trì máy tính để bàn được sử dụng bởi hơn 100.000 người dùng?

    Tốt hơn nữa, hãy phát hành mã của Sàng để tất cả chúng ta có thể bắt đầu sản xuất các bản phát hành Linux dành cho máy tính để bàn. Làm thế nào về nó, Google?

    Tại sao Google sử dụng Linux?

    Để mỗi nhân viên của Google làm việc trong môi trường mà họ làm việc hiệu quả nhất , chúng tôi vận hành nhiều nền tảng hệ điều hành bao gồm cả hệ thống Linux. Trong một thời gian dài, bản phân phối Linux nội bộ của chúng tôi, Goobuntu, dựa trên các bản phát hành Ubuntu LTS. Vào năm 2018, chúng tôi đã hoàn thành việc chuyển sang mô hình phát hành cuốn chiếu dựa trên Debian.

    Google có được xây dựng trên Linux không?

    Hệ điều hành nổi tiếng nhất của Google là Chrome OS, nhưng bên trong chính Google, công ty cũng sử dụng bản phân phối máy tính để bàn Linux của riêng mình — gLinux .

    Hệ điều hành nào là Linux thuộc sở hữu của Google?

    Android , dựa trên nhân Linux, đã trở thành hệ điều hành thống trị cho điện thoại thông minh. Vào tháng 7 năm 2022, 71. 9% điện thoại thông minh truy cập internet trên toàn thế giới đã sử dụng Android.

    Chrome OS có dựa trên Gnome không?

    Chrome OS dựa trên Gentoo .