Danh sách kiểm tra đơn giản dành cho người mới bắt đầu Apache


Tạ Hiếu Phong
8 tháng trước
Hữu ích 5 Chia sẻ Viết bình luận 0
Đã xem 9788

Nếu bạn đang chạy Apache Ignite lần đầu tiên, bạn có thể gặp một số khó khăn. Bạn vừa tải xuống Apache Ignite, chạy nó vài lần và gặp một số vấn đề. Hầu hết, những vấn đề này được giải quyết theo cách tương tự. Do đó, tôi quyết định tạo một danh sách kiểm tra, cung cấp các khuyến nghị để giúp bạn tránh các vấn đề trong môi trường phát triển.

1. Tập tin cấu hình

Khi Ignite bắt đầu ở chế độ độc lập bằng cách thực thi ignite.sh|bat  tệp, Ignite sử dụng  $IGNITE_HOME/config/default-config.xml tệp cấu hình. Trong tình huống này, để kết nối với nút được chỉ định từ bảng điều khiển dòng lệnh Visor, bạn nên chọn tệp default-config.xml từ danh sách tệp cấu hình. Hầu hết thời gian, tệp default-config.xml là tệp đầu tiên trong danh sách.

Bạn phải chạy lệnh sau để thực thi nút Ignite với tệp cấu hình Spring của riêng bạn:

{IGNITE_HOME}/bin/ignite.{bat|sh} FILE_PATH/my-ignite-example.xml

hoặc sao chép tệp my-ignite-example.xml trong  $IGNITE_HOME/example/config thư mục và thực hiện   ignite.{bat|sh} lệnh như sau:

{IGNITE_HOME}/bin/ignite.{bat|sh} examples/config/my-ignite-example.xml

2. Cổng

Theo mặc định, Ignite sử dụng các cổng cục bộ sau:


TCP / UDP


Số cổng


Sự miêu tả

TCP

10800

Cổng mặc định cho kết nối máy khách mỏng

TCP

11211

Cổng JDBC mặc định

TCP

47100

Cổng giao tiếp cục bộ mặc định

UDP

47400

TCP

47500

Cổng khám phá địa phương mặc định

TCP

8080

Cổng mặc định cho API REST

TCP

49128

Cổng mặc định cho kết nối JMX

TCP

31100 ~ 31200

Cổng máy chủ thời gian mặc định

TCP

48000 ~ 48200

Cổng bộ nhớ chia sẻ mặc định

Nếu bạn đang sử dụng Docker / một máy ảo nhận nút Ignite của bạn và chạy, bạn nên mở các cổng trên để giao tiếp từ máy chủ của mình.


Các phần của bài viết này được lấy từ cuốn sách  The Apache Ignite . Nếu nó khiến bạn quan tâm, hãy xem phần còn lại của cuốn sách để biết thêm thông tin hữu ích. 

3. Nhật ký

Các tệp nhật ký đang theo dõi các sự kiện xảy ra khi chạy Ignite. Một tệp nhật ký rất hữu ích để tìm hiểu những gì đã xảy ra với ứng dụng Ignite. Nếu bạn gặp phải một vấn đề và đặt câu hỏi trong diễn đàn Ignite, trước hết, bạn sẽ được yêu cầu tệp nhật ký. Ghi nhật ký được kích hoạt theo mặc định, nhưng có một vài nhược điểm. Ở chế độ mặc định, Ignite ghi không quá nhiều thông tin đăng nhập trên bảng điều khiển (thiết bị xuất chuẩn). Trong bảng điều khiển, bạn chỉ thấy các lỗi; mọi thứ khác sẽ được chuyển vào tập tin. $IGNITE_HOME/work/logTheo mặc định, các tệp nhật ký được đặt trên thư mục. Không xóa các tệp nhật ký và giữ nhật ký càng lâu càng tốt, vì điều này sẽ thuận tiện cho việc gỡ lỗi bất kỳ lỗi nghiêm trọng nào.

Tuy nhiên, nếu bạn muốn nhanh chóng tìm ra các vấn đề mà không cần đào sâu vào các tệp nhật ký riêng biệt, bạn có thể thực thi Ignite ở chế độ dài.

$ ignite.sh -v

Trong chế độ dài dòng, Ignite ghi tất cả thông tin đăng nhập, cả trên bàn điều khiển và vào các tệp. Lưu ý rằng Ignite chạy chậm trong chế độ dài dòng và không nên sử dụng chế độ này trong môi trường sản xuất.

4. Mạng

Ví dụ: nếu bạn gặp phải lỗi mạng lạ, nếu mạng không thể kết nối hoặc không thể gửi tin nhắn, thì hầu như bạn không may gặp phải sự cố mạng IPv6. Không thể nói rằng Ignite không hỗ trợ giao thức IPv6, nhưng tại thời điểm này, có một vài vấn đề cụ thể. Giải pháp đơn giản nhất là vô hiệu hóa giao thức IPv6. Để vô hiệu hóa giao thức IPv6, bạn có thể chuyển một tùy chọn hoặc thuộc tính Java cho JVM như sau:

-Djava.net.preferIPv4Stack=true

Tùy chọn JVM ở trên buộc Ignite sử dụng các giao thức IPv4 và giải quyết một phần đáng kể các vấn đề liên quan đến mạng.

5. Nút ma

Một trong những vấn đề phổ biến nhất mà nhiều người gặp phải nhiều lần mỗi khi họ khởi chạy nút Ignite mới. Bạn vừa thực hiện một nút duy nhất và gặp phải rằng bạn đã có hai nút máy chủ Bỏ qua các cấu trúc liên kết. Thông thường, điều này có thể xảy ra nếu bạn đang làm việc trên mạng văn phòng tại nhà và một trong những trường đại học của bạn cũng chạy nút máy chủ Ignite cùng một lúc. Thực tế là theo mặc định, Ignite sử dụng giao thức phát đa hướng để khám phá và giao tiếp với các nút khác. Trong quá trình khởi động, Bỏ qua tìm kiếm cho tất cả các nút khác trong cùng một nhóm phát đa hướng và nằm trong cùng một mạng con. Hơn nữa, nếu có, nó cố gắng kết nối với các nút.

Cách dễ nhất để tránh tình huống này là định cấu hình IP tĩnh thay vì  TcpDiscoveryMulti- castIp Downloader . Do đó, sử dụng  TcpDiscoveryVmIp Downloader  và ghi lại tất cả các địa chỉ IP và cổng mà bạn sẽ kết nối. Các cấu hình cụ thể này giúp bạn bảo vệ khỏi các nút ma trong môi trường phát triển.

6. Cấu trúc liên kết cơ bản 

Cấu trúc liên kết cơ bản bỏ qua đã được giới thiệu trong phiên bản 2.4.0 và trở thành một cách thuận tiện để bảo vệ độ bền của dữ liệu thông qua tính bền vững bản địa. Tuy nhiên, có gì sai với cấu trúc liên kết cơ sở Ignite? Để trả lời câu hỏi đó, hãy tưởng tượng kịch bản sau đây:

  • Chúng tôi đã khởi chạy một nút Ignite duy nhất với kích hoạt tính bền vững gốc (dữ liệu sẽ được ghi vào đĩa).
  • Chúng tôi kích hoạt cụm vì chúng tôi kích hoạt tính bền vững cho nút.
  • Chúng tôi đã tạo một bộ đệm REPLICATED và tải một số dữ liệu trên nó.
  • Tiếp theo, chúng tôi đã khởi chạy thêm hai nút và bắt đầu thao tác với dữ liệu, chèn / xóa một số dữ liệu.

Tại thời điểm này, mỗi nút chứa bản sao đầy đủ của dữ liệu và hoạt động tốt. Sau một thời gian, chúng tôi quyết định khởi động lại một trong các nút. Nếu chúng ta dừng nút đầu tiên mà chúng ta bắt đầu, thì mọi thứ sẽ vỡ và dữ liệu sẽ bị mất. Lý do cho hành vi kỳ lạ này là cấu trúc liên kết cơ sở Ignite, một tập hợp các nút máy chủ lưu trữ dữ liệu liên tục. Trong phần còn lại của các nút, dữ liệu sẽ không được duy trì.

Một tập hợp các nút máy chủ được xác định lần đầu tiên tại thời điểm cụm được kích hoạt. Vì vậy, phần còn lại của các nút máy chủ mà bạn đã thêm sau này sẽ không còn được bao gồm trong cấu trúc liên kết cơ sở. Do đó, trong trường hợp của chúng tôi, tập hợp cấu trúc liên kết cơ sở chỉ bao gồm một nút máy chủ và nút này vẫn tồn tại dữ liệu trên đĩa. Bất cứ khi nào bạn dừng nút máy chủ này, mọi thứ sẽ phá vỡ. Do đó, để ngăn chặn sự bất ngờ này, trước tiên hãy bắt đầu tất cả các nút cụm và sau đó chỉ kích hoạt cụm.

Vì vậy, chúng tôi có thể chỉ ra danh sách rút gọn sau đây cho người mới bắt đầu:

N

Kiểm tra nó ra.

1

Sử dụng các tệp cấu hình phù hợp để kết nối thông qua Ignite Visor. 

2

Mở các cổng mà bạn cần để làm việc với nút Ignite.

3

Cấu hình và đọc nhật ký.

4

Tránh IPv6.

5

Sử dụng TcpDiscoveryVmIp Downloader trên mạng văn phòng tại nhà.

6

Theo dõi các cấu trúc liên kết cơ bản.


Hữu ích 5 Chia sẻ Viết bình luận 0
Đã xem 9788