NANON OneFS

Theo cách nói của OneFS, các cụm PowerScale có kết nối front-end một phần được gọi là cụm NANON, từ viết tắt của ‘Not All Nodes On Network’. Ngày nay, mọi nút PowerScale trong danh mục đầu tư đều bao gồm cả giao diện mạng front-end và back-end. Cả hai cổng mạng back-end dự phòng của một nút, Ethernet hoặc InfiniBand, phải luôn hoạt động và được kết nối với các bộ chuyển mạch cụm được cung cấp, vì chúng tạo thành một bus hệ thống phân tán và xử lý mọi giao tiếp trong cụm. Tuy nhiên, trong khi cấu trúc cụm điển hình có tất cả các nút được kết nối với tất cả các mạng máy khách front-end, thì điều này không phải lúc nào cũng khả thi hoặc thậm chí là mong muốn. Trong một số trường hợp nhất định, có những lợi ích riêng biệt khi không kết nối tất cả các nút với mạng front-end.

Nhưng trước tiên, một số thông tin cơ bản. Ví dụ, hãy tưởng tượng một khối lượng công việc lưu trữ đang hoạt động. Các yêu cầu về I/O và dung lượng của thành phần đang hoạt động của khối lượng công việc có thể được đáp ứng bằng một nhóm F710 toàn flash. Ngược lại, dữ liệu lưu trữ không hoạt động được lưu trữ trên một nhóm các nút A3000 được tối ưu hóa dung lượng để lưu trữ dữ liệu không hoạt động. Trong trường hợp này, việc không kết nối các nút lưu trữ A3000 với mạng front-end giúp tiết kiệm chi phí cáp, cổng và đơn giản hóa cấu hình tổng thể, đồng thời tăng cường bảo mật. 

Các cấu hình cụm NANON như vậy đang ngày càng phổ biến, vì khách hàng chọn không kết nối các nút lưu trữ trong các cụm lớn hơn để tiết kiệm chi phí và độ phức tạp, giảm tải trên các nền tảng được tối ưu hóa dung lượng, cũng như tạo ra các giải pháp an toàn về mặt vật lý và có khoảng cách không khí. Việc giới thiệu gần đây các nút tăng tốc PowerScale P100 và B100 cũng làm tăng tính linh hoạt của kết nối đầu cuối của cụm.

Hình ảnh mô tả cấu hình cụm NANON PowerScale.

Cấu hình NANON này là một trong những cấu trúc cụm được kết nối một phần đơn giản nhất. Trong ví dụ này, việc triển khai bao gồm năm nút PowerScale với chỉ ba nút được kết nối với mạng. Mạng được cho là có quyền truy cập đầy đủ vào tất cả các dịch vụ cơ sở hạ tầng cần thiết và quyền truy cập của máy khách.

Các cấu trúc phức tạp hơn thường có thể bao gồm các mạng máy khách và quản lý tách biệt, mạng sao chép chuyên dụng, nhiều đối tượng thuê bao và các giải pháp front-end tách biệt khác, và thường thuộc danh mục NANOAN hoặc Không phải tất cả các nút trên tất cả các mạng. Ví dụ:

Hình ảnh hiển thị cấu trúc cụm NANOAN PowerScale chỉ có một tập hợp con các nút được kết nối với mạng con quản lý.

Mạng quản lý có thể được gán cho Subnet0 trên các nút cụm, với mức ưu tiên cổng là 10 (tức là cổng mặc định) và mạng máy khách sử dụng Subnet1 với mức ưu tiên cổng là 20. Điều này sẽ định tuyến tất cả lưu lượng đi qua mạng quản lý. Các tuyến tĩnh hoặc định tuyến dựa trên nguồn (SBR) có thể được cấu hình để chuyển hướng lưu lượng đến cổng thích hợp nếu phát sinh sự cố với định tuyến lưu lượng máy khách qua mạng quản lý.

Trong cấu trúc sao chép sau, các nút 1 đến 3 trên cụm nguồn được sử dụng cho kết nối máy khách, trong khi các nút 4 và 5 trên cả cụm nguồn và cụm đích được dành riêng cho lưu lượng sao chép SyncIQ.

Hình ảnh minh họa cấu hình NANOAN sao chép SyncIQ.

Các ví dụ phức tạp hơn khác, chẳng hạn như cấu trúc cụm đa thuê bao, có thể được triển khai để hỗ trợ khối lượng công việc yêu cầu kết nối với nhiều mạng vật lý. 

Hình ảnh mô tả cấu hình cụm NANOAN.

Cấu trúc này có thể được cấu hình với Groupnet0 quản lý chứa Subnet0 và các Groupnet bổ sung, mỗi Groupnet có một mạng con, cho các mạng máy khách. Ví dụ:

# danh sách nhóm mạng isi
ID DNS Cache Đã bật Tìm kiếm DNS Máy chủ DNS Mạng con
-------------------------------------------------- ------------------
Client1 1 c1.isilon.com 10.231.253.14 mạng con1
Client2 1 c2.isilon.com 10.231.254.14 mạng con2
Client3 1 c3.isilon.com 10.231.255.14 mạng con3
Quản lý 1 mgt.isilon.com 10.231.252.14 subnet0
-------------------------------------------------- ------------------
Tổng cộng: 4

Hoặc từ WebUI bằng cách chọn Quản lý cụm > Cấu hình mạng > Mạng ngoài .

Ảnh chụp màn hình trang cấu hình mạng ngoài OneFS WebUI.

Chi tiết kết nối của một mạng con và nhóm cụ thể có thể được truy vấn bằng lệnh CLI isi network pools status  groupnet.subnet.pool và sẽ cung cấp chi tiết về kết nối của nút, cũng như tình trạng giao thức và trạng thái chung của nút. Ví dụ, khi truy vấn nhóm quản lý Management.Subnet0.Pool0 cho cụm sáu nút ở trên, chúng ta thấy rằng các nút 1-4 được kết nối bên ngoài, trong khi các nút 5 và 6 thì không:   

# isi network pools status Management.subnet0.pool0
ID nhóm: Management.subnet0.subnet0
 
Tổng quan về SmartConnect DNS:
       Có thể giải quyết: 4/6 nút có thể giải quyết
Cần chú ý: 2/6 nút cần chú ý
        Mạng con SC: Management.subnet0
 
Các nút cần chú ý:
              LNN: 5
SC DNS có thể giải quyết: Sai
       Trạng thái nút: Lên
        Trạng thái IP: Không có IP nào có thể sử dụng được
 Trạng thái giao diện: 0/1 giao diện có thể sử dụng
Giao thức đang chạy: Đúng
        Đã đình chỉ: Sai
-------------------------------------------------- ------------------------------
              LNN: 6
SC DNS có thể giải quyết: Sai
       Trạng thái nút: Lên
        Trạng thái IP: Không có IP nào có thể sử dụng được
 Trạng thái giao diện: 0/1 giao diện có thể sử dụng
Giao thức đang chạy: Đúng
        Đã đình chỉ: Sai

Có hai thành phần OneFS cốt lõi đã được cải tiến trong phiên bản 9.4 trở lên để hỗ trợ tốt hơn các cấu hình NANON trên một cụm. Đó là:

Tên Thành phần Sự miêu tả
Quản lý nhóm DỊCH VỤ GMP

KẾT NỐI NGOÀI

Cho phép GMP (Giao thức quản lý nhóm) báo cáo trạng thái kết nối bên ngoài của các nút cụm.
Quy trình MCP isi_mcp Giám sát mọi thay đổi GMP và khi phát hiện, sẽ cố gắng khởi động hoặc dừng các dịch vụ bị ảnh hưởng nằm trong tầm kiểm soát của mình.
Kết nối thông minh isi_smartconnect_d Dịch vụ quản lý kết nối và cấu hình mạng của cụm. Nếu daemon SmartConnect quyết định một nút là NANON, OneFS sẽ ghi lại trạng thái của cụm bằng GMP.

Sau đây là kiến ​​trúc cơ bản và mối quan hệ giữa các dịch vụ.

Hình ảnh này minh họa kiến ​​trúc OneFS hỗ trợ NANON.

Trạng thái kết nối bên ngoài GMP có thể được biết bằng cách sử dụng đầu ra lệnh CLI sysctl efs.gmp.group .

Ví dụ, hãy lấy một cụm ba nút với tất cả các giao diện phía trước của các nút được kết nối:

Hình ảnh này hiển thị một cụm ba nút với tất cả các giao diện đầu cuối của nút được kết nối.

GMP xác nhận rằng cả ba nút đều khả dụng, như được chỉ ra bởi trường external_connectivity mới :

# sysctl efs.gmp.group
efs.gmp.group: <79c9d1> (3) :{ 1-3:0-5, all_enabled_protocols: 1-3, isi_cbind_d: 1-3, lsass: 1-3, external_connectivity: 1-3 }

Trạng thái kết nối bên ngoài mới này cũng được tích hợp vào cột Ext mới trong đầu ra lệnh CLI trạng thái isi , được biểu thị bằng ‘C’ cho kết nối hoặc ‘N’ cho không kết nối. Ví dụ:

# trạng thái isi -q
                   Sức khỏe Thông lượng mở rộng (bps) Lưu trữ HDD Lưu trữ SSD
ID | Địa chỉ IP | DASR | C/N | Tổng số vào ra | Đã sử dụng / Kích thước | Đã sử dụng / Kích thước
---+--------------+------+---+------+------+------+-- ---------------+----------
  1|10.219.64.11 | được | C |25,9 triệu| 2,1M|28,0M|(10,2T/23,2T(44%)|
  2|10.219.64.12 | Được | C | 840K| 123M| 124M|(10.2T/23.2T(44%)| 
  3|10.219.64.13 | Được | C | 225M| 466M| 691M|(10.2T/23.2T(44%)| 
---+--------------+------+---+------+------+------+-- ---------------+----------
Tổng số cụm: | n/a| n/a| n/a|30,6T/69,6T( 37%)| 
     Các trường sức khỏe: D = Xuống, A = Chú ý, S = Thất bại thông minh, R = Chỉ đọc
           Các trường mạng bên ngoài: C = Đã kết nối, N = Không kết nối

Hãy lấy cụm NANON có ba nút sau:

Hình ảnh này mô tả một cụm ba nút chỉ có nút 1 và nút 3 được kết nối với mạng đầu cuối.

GMP xác nhận rằng chỉ có nút 1 và 3 được kết nối với mạng front-end. Tương tự, việc không có nút 2 trong đầu ra lệnh cho thấy nút này không có kết nối bên ngoài:

# sysctl efs.gmp.group
efs.gmp.group: <79c9d1> (3) :{ 1-3:0-5, all_enabled_protocols: 1,3, isi_cbind_d: 1,3, lsass: 1,3, external_connectivity: 1,3 }

Tương tự như vậy, đầu ra CLI trạng thái isi báo cáo rằng nút 2 không được kết nối, được biểu thị bằng ‘N’, trong cột ‘Ext’:

# trạng thái isi -q
                   Sức khỏe Thông lượng mở rộng (bps) Lưu trữ HDD Lưu trữ SSD
ID | Địa chỉ IP | DASR | C/N | Tổng số vào ra | Đã sử dụng / Kích thước | Đã sử dụng / Kích thước
---+--------------+------+---+------+------+------+- -------+----------
  1|10.219.64.11 | được | C | 9,9 triệu| 12,1M|22,0M|(10,2T/23,2T(44%)|
  2|10.219.64.12 | được | N |   0|   0|   0|(10,2T/23,2T(44%)| 
  3|10.219.64.13 | Được | C | 440M| 221M| 661M|(10.2T/23.2T(44%)| 
---+--------------+------+---+------+------+------+- -------+----------
Tổng số cụm: | n/a| n/a| n/a|30,6T/69,6T( 37%)| 
     Các trường sức khỏe: D = Xuống, A = Chú ý, S = Thất bại thông minh, R = Chỉ đọc
           Các trường mạng bên ngoài: C = Đã kết nối, N = Không kết nối

Bên trong, một mô-đun mạng SmartConnect đánh giá và xác định xem nút có kết nối mạng front-end hay không. Mô-đun này tận dụng dịch vụ GMP_SERVICE_EXT_CONNECTIVITY và thăm dò các thiết lập mạng của nút theo mặc định cứ năm phút một lần. Tiêu chí đánh giá và thẩm định của SmartConnect đối với kết nối mạng như sau:

Mạng LAN ảo Mạng LAN ảo IP Giao diện Giao diện IP NIC Mạng
(bất kì) (bất kì) Hướng lên KHÔNG Hướng lên KHÔNG
(bất kì) (bất kì) Hướng lên Đúng Hướng lên Đúng
Đã bật Đúng (bất kì) (bất kì) Hướng lên Đúng
(bất kì) (bất kì) (bất kì) (bất kì) Xuống KHÔNG

OneFS 9.4 trở lên cũng cung cấp tùy chọn cho MCP, quy trình kiểm soát chính, cho phép ngăn chặn một số dịch vụ nhất định khởi động nếu không có mạng bên ngoài. Do đó, hai dịch vụ nằm trong phạm vi NANON mới của MCP là:

Dịch vụ Quỷ dữ Sự miêu tả
Kiểm toán kiểm toán isi Kiểm tra cấu hình hệ thống và các sự kiện truy cập giao thức trên cụm.
SRS isi_esrs_d Cho phép giám sát và hỗ trợ cụm từ xa thông qua Dịch vụ từ xa an toàn (SRS).

Có hai thẻ cấu hình MCP mới được giới thiệu để kiểm soát việc thực hiện dịch vụ tùy thuộc vào kết nối mạng bên ngoài:

Nhãn Sự miêu tả
yêu cầu-mạng-mở-rộng Hoãn việc bắt đầu dịch vụ nếu không có kết nối mạng bên ngoài.
dừng-trên-mạng-mở-rời Dừng dịch vụ nếu mất kết nối mạng bên ngoài.

Các thẻ này được sử dụng trong các tập lệnh kiểm soát dịch vụ MCP, nằm trong /etc/mcp/sys/services. Ví dụ, trong tập lệnh SRS:

# mèo /etc/mcp/sys/services/isi_esrs_d
<?xml phiên bản="1.0"?>
<service name="isi_esrs_d" enable="0" display="1" ignore="0" options="require-quorum, stop-on-ext-network-loss ">
      <isi-meta-tag id="isi_esrs_d">
            <mod-attribs>bật bỏ qua hiển thị</mod-attribs>
      </isi-meta-tag>
      <description>Dịch vụ ESRS Daemon</description>
      <tên tiến trình="isi_esrs_d" pidfile="/var/run/isi_esrs_d.pid"
               startaction="bắt đầu" stopaction="dừng"
                phụ thuộc="isi_tardis_d/isi_tardis_d"/>
      <actionlist name="bắt đầu">
            <action>/usr/bin/isi_run -z 1 /usr/bin/isi_esrs_d</action>
      </danh sách hành động>
      <actionlist name="dừng">
            <hành động>/bin/pkill -F /var/run/isi_esrs_d.pid</hành động>
      </danh sách hành động>
</dịch vụ>

Bộ điều khiển MCP NANON này sẽ được mở rộng sang các dịch vụ OneFS bổ sung trong các bản phát hành tiếp theo.

Khi nói đến việc khắc phục sự cố cấu hình NANON, MCP, SmartConnect và các tệp nhật ký syslog chung có thể cung cấp các thông báo khắc phục sự cố kết nối và dấu thời gian có giá trị. Các tệp nhật ký có liên quan là:

  • /var/log/tin nhắn
  • /var/log/isi_mcp
  • /var/log/isi_smartconnect

Tác giả : Nick Trimbee