Phương pháp tiếp cận container mang lại lợi thế cho việc vận hành và bảo trì hệ thống trên các tài nguyên máy tính vật lý. Trong thế giới CNTT doanh nghiệp, các container được tận dụng để tách khối lượng công việc tính toán khỏi nền máy tính mà chúng chạy trên đó. Điều này cho phép, ví dụ, phần cứng máy tính được coi như một tiện ích, cho phép triển khai nhiều khối lượng công việc trên các giá đỡ, mở rộng tài nguyên phần cứng, chẳng hạn như bộ xử lý, bộ nhớ và bộ nhớ, nếu cần, để xử lý khối lượng công việc.
Phần mềm ghép kênh tải trên các tài nguyên phần cứng cố định cho phép sử dụng hiệu quả hơn việc đầu tư phần cứng và chống lại các lỗi phần cứng mạnh mẽ hơn. Nó cũng cho phép bảo trì và phát triển khối lượng công việc phần mềm dễ dàng hơn bằng cách cho phép các chương trình trong đó cấu hình hoặc cung cấp vùng chứa tập trung có thể được cập nhật và sau đó được đẩy ra môi trường thực thi. Các công nghệ container, như được áp dụng cho CNTT doanh nghiệp truyền thống, là một yếu tố quan trọng của cloud hiện đại.
Máy ảo
Thông thường nhất, một container có thể được coi là một máy ảo nhẹ. Một máy ảo đầy đủ có khả năng mô phỏng hoàn chỉnh lớp phần cứng đích trên máy chủ, bao gồm bộ lệnh CPU, bộ ngoại vi, v.v. Máy ảo có khả năng cung cấp tính di động cao nhưng phải chịu chi phí đáng kể do mô phỏng mọi khía cạnh của mục tiêu máy trong máy chủ. Điều này thực tế yêu cầu máy chủ phải được chỉ định quá mức so với máy đích đang được mô phỏng. Trong nhiều trường hợp, mức độ thi đua như vậy là không cần thiết.
Ảo hóa dựa trên Hypervisor yêu cầu ít tài nguyên máy chủ hơn so với một máy ảo đầy đủ. Một siêu giám sát cung cấp cho mỗi môi trường thực thi một chế độ xem riêng về phần cứng bên dưới nhưng thường bị ràng buộc với kiến trúc máy chủ bên dưới, do đó, nó đạt được một số hiệu quả bổ sung bằng cách hạn chế kiến trúc phần cứng với kiến trúc của máy chủ. Trong các ứng dụng IIoT, mức độ trừu tượng và cô lập được cung cấp bởi các máy ảo hoặc trình siêu giám sát đầy đủ thường không cần thiết.
Các vùng chứa không phải là máy ảo đầy đủ mà thay vào đó hoạt động dưới các ràng buộc và kiến trúc của máy chủ. Do đó, các container có thể giao tiếp với kiến trúc CPU và hệ điều hành cấp thấp (nhân) của máy chủ, chia sẻ trực tiếp tài nguyên phần cứng và nhân của máy chủ.
Vùng chứa phụ thuộc vào hệ điều hành cấp thấp của máy chủ nhưng có thể đóng gói và cung cấp các phần của hệ điều hành lớp cao hơn (không gian người dùng). Điều này cho phép một ứng dụng trong vùng chứa được xây dựng và chạy trên một tập hợp tài nguyên hệ điều hành đã được phiên bản riêng, cố định.
Phân vùng
Hầu hết các quản trị viên hệ thống hoặc các nhà phát triển ứng dụng UNIX có lẽ đã quen thuộc với khái niệm “địa ngục phụ thuộc”, cung cấp tất cả các tài nguyên hệ thống để một ứng dụng có thể chạy và sau đó phối hợp giống như các ứng dụng khác nhau được cập nhật trên máy chủ. Thường có thể là một bài tập phức tạp và tẻ nhạt để duy trì nhiều phụ thuộc ứng dụng trên tất cả các ứng dụng được cấp phép chạy trên cùng một máy chủ. Vùng chứa cho phép mỗi ứng dụng đóng gói một tập hợp phụ thuộc được kiểm soát với ứng dụng để các ứng dụng này có thể độc lập có môi trường thực thi ổn định được phân vùng và cách ly với các ứng dụng được chứa khác trên cùng một máy chủ. Ngay cả các bản cập nhật ứng dụng cũng thường được đóng gói và triển khai dưới dạng các bản cập nhật vùng chứa để thuận tiện. Vì vậy,
Bảo mật nâng cao
Vì các vùng chứa thực thi trong ngữ cảnh của một công cụ chứa, nó cho phép các chính sách bảo mật nâng cao và các ràng buộc được áp dụng cho một ứng dụng bằng cách hạn chế chính công cụ chứa đó. Ví dụ: trong môi trường được lưu trữ trên máy chủ Linux, sử dụng các cơ chế như “nhóm”, cách ly không gian quy trình, điều khiển hệ thống tệp và điều khiển truy cập bắt buộc cấp hạt nhân, công cụ chứa có thể bị ràng buộc buộc phải hoạt động theo các điều khiển đó – ví dụ: để hạn chế việc sử dụng bộ nhớ , Sử dụng CPU, truy cập vào các phần cụ thể của hệ thống tệp, truy cập vào tài nguyên mạng hoặc chỉ cho phép một số tập hợp con nhất định được phê duyệt trước của các hoạt động hạt nhân.
Bằng cách áp dụng các ràng buộc đó thông qua cơ chế của công cụ chứa, các biện pháp kiểm soát an ninh đó được áp đặt, ngay cả khi ứng dụng kèm theo không biết hoặc bất hợp tác tham gia vào các kiểm soát đó. Điều này phù hợp với các phương pháp hay nhất về bảo mật CNTT hiện đại.
Các vùng chứa, tương tự như các ứng dụng, có thể được ký và xác thực sao cho nội dung được phân phối đến một nút máy tính có thể được xác thực và xác thực dưới mật mã mạnh mẽ bởi công cụ chứa.
Hệ thống điều phối container
Các hệ thống container hiện đại cũng bao gồm hoặc tương tác với các hệ thống điều phối. Hệ thống điều phối cung cấp các phương tiện để gửi các container đến máy chủ và xác định container nào sẽ được gửi đến máy chủ nào. Ngoài ra, hầu hết các hệ thống điều phối cho phép áp dụng các cấu hình để tham số hóa vùng chứa và hỗ trợ các chỉ số / trang tổng quan quản lý để giám sát hệ thống. Khi nói đến việc điều phối việc triển khai, cung cấp và vận hành các container trên quy mô lớn, các khả năng được cung cấp bởi các hệ thống điều phối là cần thiết.
Các phương pháp tiếp cận và lợi ích của việc dùng container
Về cấu tạo và bảo trì các container , một số hệ thống có nhiều khả năng và tính năng hơn những hệ thống khác. Một container luôn có thể được xây dựng “bằng tay”, nhưng thường có các công cụ và vật liệu trong hệ sinh thái mã nguồn mở có thể hỗ trợ nỗ lực này. Một hệ thống hiện đại thường sẽ cho phép một vùng chứa có nguồn gốc từ một thành phần / thư viện của các vùng chứa tham chiếu. Các thư viện này thúc đẩy việc tái sử dụng, tận dụng hệ sinh thái và cho phép phát triển và triển khai nhanh chóng một vùng chứa.
Nói chung, các kế hoạch container hóa giải quyết thách thức trong việc cung cấp một ứng dụng và môi trường thực thi của nó theo cách được kiểm soát để sử dụng hiệu quả các tài nguyên tính toán phần cứng bên dưới. Các container mang lại lợi ích về phân vùng, bảo mật và điều phối. Phương pháp này rẻ hơn so với các máy ảo đầy đủ nhưng vẫn có thể dẫn đến trùng lặp các thành phần của hệ điều hành / không gian người dùng và phát sinh chi phí liên quan của không gian đĩa bổ sung, bộ nhớ và ở mức độ thấp hơn là CPU. Một số kế hoạch container hóa nổi tiếng được sử dụng trong CNTT doanh nghiệp bao gồm Containerd, Docker và Snaps. Các hệ thống điều phối nổi tiếng bao gồm Docker Swarm và Kubernetes.
Tận dụng các phương pháp tiếp cận container cho IIoT
Mặc dù các công nghệ container hóa chủ yếu được phát triển cho CNTT doanh nghiệp truyền thống, có những điểm tương đồng và lợi thế rõ ràng để áp dụng các chương trình tương tự cho IIoT. Có một số khác biệt duy nhất để IIoT xem xét.
Cân nhắc đầu tiên là loại máy chủ IIoT mà vùng chứa sẽ được triển khai, điều này thường đòi hỏi phải xem xét trường hợp sử dụng, khả năng kiểm soát trong tương lai và ROI. Trong một số trường hợp, đây có thể là một cài đặt giá trị cao đảm bảo tài nguyên máy tính có khả năng cao ở nút biên, tương tự như các máy chủ được triển khai trong trung tâm dữ liệu doanh nghiệp. Trong các trường hợp khác, các yêu cầu có thể biện minh cho một máy chi phí thấp hơn và có khả năng thấp hơn sẽ được phân bổ tại nút biên đó.
Trong triển khai IIoT được công cụ đầy đủ, có thể sẽ có các cấp tài sản khác nhau được liên kết với các lớp phần cứng cạnh khác nhau. Làm thế nào để kích hoạt kinh tế từng loại tài sản ở quy mô liên quan có thể nhanh chóng trở thành động lực quan trọng trong việc lựa chọn kiến trúc và phần cứng nút biên.
Cân nhắc thứ hai là tận dụng các thuộc tính phân vùng của một vùng chứa, tức là hộp cát. Có một vùng chứa nguyên khối duy nhất được triển khai ở rìa chứa tất cả các chức năng của ứng dụng không? Hay ưu tiên hơn để có được một tư thế tốt hơn và chắc chắn hơn bằng cách cô lập các thành phần ứng dụng thành các không gian riêng biệt / vùng chứa riêng biệt?
Ví dụ: bằng cách phân vùng các chức năng cạnh giữa các vùng chứa khác nhau, một vùng chứa có thể được cấp các đặc quyền lớn hơn và khác nhau theo chức năng của nó. Thành phần ứng dụng có nhiệm vụ đọc, đánh giá và báo cáo định kỳ các cảnh báo có thể được cấp đặc quyền chỉ đọc để tương tác với một nội dung cạnh. Ví dụ: một ứng dụng khác có khả năng tải bản nâng cấp phần mềm trên phần tử cạnh, sẽ cần nhiều đặc quyền hơn – nhưng có thể áp dụng bảo mật dựa trên vai trò khác nhau để tương tác với ứng dụng đó.
Kiến trúc này có thể ánh xạ thành một cách tiếp cận bảo mật phân lớp trong đó việc thực thi mạnh mẽ các quyền và ánh xạ tới các vai trò có thể bị ràng buộc trực giao xung quanh các ứng dụng riêng biệt được lưu trữ trên cùng một nút cạnh. Hơn nữa, việc có thể tách các thành phần ứng dụng có thể dẫn đến việc triển khai mạnh mẽ hơn trong đó hành vi (hoặc hành vi sai) của một ứng dụng không ảnh hưởng trực tiếp đến ứng dụng khác. Cách tiếp cận này cũng cho phép dễ dàng thêm các cải tiến gia tăng cho thiết bị cạnh.
Tương tác của các thành phần ứng dụng với nhau là một yếu tố cần xem xét bổ sung. Vì các ứng dụng được tách biệt, nên một lược đồ giao tiếp liên quá trình (IPC) / lược đồ gọi thủ tục từ xa (RPC) sẽ cần được triển khai cho các ứng dụng riêng biệt để tương tác trong nút biên. Các lược đồ IPC / RPC như vậy cũng phải được xác thực và kiểm soát để chỉ cho phép các tương tác đã được phê duyệt. Lưu ý rằng các kế hoạch chứa đựng điển hình không cung cấp các cơ chế này.
Các tính năng bảo mật của các kế hoạch container phù hợp với các thiết kế hệ điều hành hiện đại và các phương pháp hay nhất về bảo mật hiện đại. Có thể áp đặt các chính sách và kiểm soát cấp hệ điều hành cung cấp khả năng hạn chế tốt hơn bằng cách thiết kế tác động tiềm ẩn của các vi phạm bảo mật đối với hệ thống. Các cơ chế xác thực và xác thực các thành phần ứng dụng chạy ở rìa cũng phù hợp với cách tiếp cận theo yêu cầu của tư thế bảo mật hiện đại.
Các lược đồ điều phối có giá trị rõ ràng trong IIoT. Hoàn toàn cần thiết phải sử dụng một kế hoạch để quản lý một nhóm các nút biên IIoT một cách có kiểm soát và tập trung để quản lý, phiên bản, duy trì và đẩy các thành phần ứng dụng được chứa trong vùng ra rìa.
Không giống như trong môi trường CNTT truyền thống, một thách thức ở đây là nhóm và điều phối các vùng chứa được nhắm mục tiêu đến các thiết bị cạnh cụ thể. Khối lượng công việc container phải được ánh xạ đến các triển khai cụ thể, vật lý của các thiết bị biên, vì các thiết bị đó được liên kết trực tiếp với các tài sản hiện trường. Hệ thống điều phối không thể chọn phần cứng “bất kỳ” nào để chạy một vùng chứa nhưng cần đủ linh hoạt để nhắm mục tiêu các nút cạnh cụ thể một cách dễ dàng.
Các lược đồ điều phối cũng có thể không hoàn toàn đủ để quản lý hệ thống IIoT, vì có những cân nhắc bổ sung về hệ thống máy chủ cần được quản lý và / hoặc cung cấp (giao diện mạng, VPN, thông tin xác thực bảo mật, modem di động, v.v.). Các tài nguyên này thường được quản lý trực tiếp bởi hệ điều hành máy chủ và chỉ đơn giản là có sẵn để vùng chứa sử dụng. Các cách tiếp cận truyền thống đối với nền tảng IIoT gói gọn chức năng này trong “quản lý thiết bị”, trong đó việc quản lý các vùng chứa / ứng dụng được lưu trữ trong thiết bị có thể là một tập con của quản lý thiết bị thống nhất.
Việc lựa chọn động cơ chứa mã nguồn mở hoặc mã nguồn đóng cũng cần được xem xét vì có thể có sự phụ thuộc vào các bên thứ ba để duy trì nó. Hỗ trợ liên tục cho các công nghệ của bên thứ ba, khả năng tùy chỉnh các ứng dụng trong một vùng chứa, sự phát triển của các khả năng và tính linh hoạt để tích hợp với các cloud và ngăn xếp giao thức khác nhau là một số yếu tố khác cần xem xét.
Gateway ứng dụng IIoT mới Sử dụng các lợi ích của công nghệ Container
IIoT đang tạo ra các phương pháp luận mới để thu thập, xử lý và đẩy dữ liệu từ biên mạng tới các máy chủ phụ trợ bằng cách sử dụng các hệ thống dựa trên cloud. Một hệ thống giúp đơn giản hóa bối cảnh phức tạp của IIoT và kết nối liền mạch các tài sản có giá trị với các giải pháp cloud mới là nền tảng IIoT Smart Industry Gateway®, được phát triển bởi Smart Industry , một nhà cung cấp các giải pháp kết nối dựa trên cloud cho các ứng dụng công nghiệp.
Gateway Smart Industry cung cấp kết nối an toàn với bộ điều khiển công nghiệp, tự động hóa quy trình và tài sản lưới thông minh trong lĩnh vực này bằng cách sử dụng các giao thức cũ và hiện đại mà không làm gián đoạn các nền tảng SCADA kế thừa hiện có. Nó cho phép một loạt các chức năng cạnh, thu thập dữ liệu bằng cách tự động thăm dò cơ sở hạ tầng quan trọng và các cảm biến ứng dụng công nghiệp ở rìa, đánh giá trạng thái hệ thống mỗi giây.
Tận dụng Android
Gateway Edge IIoT của Smart Industry tận dụng nhiều lợi ích khác nhau của công nghệ container thông qua một Gateway tùy chỉnh của hệ điều hành Android. Hệ điều hành Android đã được phát triển trong hơn một thập kỷ và chủ yếu dựa trên nền tảng mã nguồn mở do Google quản lý. Ngày nay, nó được ước tính chạy trên hơn 2,5 tỷ thiết bị trên nhiều kiến trúc phần cứng và hệ số hình thức khác nhau. Android cung cấp một bộ API đầy đủ và ổn định cho phép thực hiện và triển khai các ứng dụng tùy chỉnh.
Android chạy không gian người dùng tùy chỉnh trên nhân Linux và có thể áp dụng các điều khiển tương tự bằng cách sử dụng cùng một công nghệ cơ bản mà các giải pháp container truyền thống sử dụng. Nhưng thay vì một bộ chứa dẫn động đến giao diện hạt nhân, Android đưa bộ chứa đến một tập hợp các API nền tảng nhất quán và do đó cung cấp một bộ chứa ứng dụng nhẹ. Điều này làm giảm sự cần thiết và chi phí của mỗi vùng chứa cần bao gồm các thành phần hệ điều hành.
Android cũng cung cấp các lớp quyền / điều khiển bổ sung trên các dịch vụ do hệ điều hành cung cấp chạy ở lớp phía trên hạt nhân – ví dụ: truy cập vị trí GPS hoặc tham gia vào các hoạt động mật mã bằng cách sử dụng thông tin đăng nhập an toàn. Đã có một phương pháp an toàn cho các ứng dụng cung cấp và gọi các API để tương tác với các ứng dụng khác, bao gồm các ràng buộc về bảo mật và kiểm soát truy cập. Điều này cho phép một cấp độ phân vùng khác ngoài những gì được cung cấp bởi một sơ đồ container điển hình. Các cơ chế cơ bản cần thiết được tích hợp sẵn trong kiến trúc Android, cho phép các nhà phát triển ứng dụng tập trung vào việc phát triển và tùy chỉnh logic nghiệp vụ của riêng họ. Các ứng dụng này hoạt động theo các kiểm soát phân vùng và bảo mật tương tự mà các chiến lược chứa đựng truyền thống cung cấp. Tương tự như các kế hoạch chứa đựng khác, các cơ chế mật mã mạnh cũng được sử dụng ở đây. Các giải pháp này không chỉ bao gồm việc điều phối / triển khai các thành phần chứa ứng dụng nhẹ mà còn tích hợp việc cung cấp và quản lý hệ thống chủ.
Gateway Smart Industry cho phép một số ứng dụng phù hợp với các ngành dọc khác nhau. Các ứng dụng này có thể được triển khai và định cấu hình để hoạt động hiệu quả mà không cần bất kỳ tùy chỉnh phần mềm nào khác. Smart Industry cũng cung cấp một bộ công cụ phát triển phần mềm để sử dụng với các môi trường phát triển Android chuẩn. Người dùng cuối có thể dễ dàng phát triển các ứng dụng tùy chỉnh; truy cập các ngăn xếp giao thức kế thừa được chuẩn hóa, chẳng hạn như Modbus hoặc DNP3, thông qua các API ổn định; và tập trung vào việc tận dụng kiến thức chuyên môn về miền và sở hữu trí tuệ của họ để nhắm mục tiêu ứng dụng tiên tiến của họ bằng cách sử dụng bộ công cụ.
Bằng cách tận dụng các phương pháp tiếp cận vùng chứa ứng dụng nhẹ như được triển khai bởi hệ điều hành Android, Smart Industry Gateway có hiệu quả về chi phí để áp dụng cho các giải pháp máy tính biên công suất thấp, chi phí thấp. Phương pháp chứa tập trung vào ứng dụng mang lại lợi thế để cho phép tốt hơn việc phát triển và triển khai logic ứng dụng an toàn, mạnh mẽ và linh hoạt.