banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành *nix Lỗi trong triển khai MySQL cluster  XML
  [Question]   Lỗi trong triển khai MySQL cluster 03/08/2014 16:12:07 (+0700) | #1 | 281178
explorer88
Member

[Minus]    0    [Plus]
Joined: 06/11/2010 22:32:47
Messages: 75
Offline
[Profile] [PM]
Chào các anh em,

Hiện tại tớ đã dựng thử mô hình MySQL cluster để nghiên cứu nhưng gặp vài lỗi không biết xử lý sao. Mong anh em giúp đỡ.

Mô hình
Code:
Mô hình của tớ gồm 4 máy ảo VirtualBox
Node 1: management node, địa chỉ 192.168.56.205
Node 2: sql node, địa chỉ 192.168.56.206
Node 3: data node 1, địa chỉ 192.168.56.207
Node 4: data node 2, địa chỉ 192.168.56.208


Thông tin chung cho cả 4 máy
Code:
- Sử dụng Centos 6.4, 32 bits
- Linux kernel 2.6.32-358.el6.i686
- Phiên bản MySQL Cluster MySQL-Cluster-gpl-7.3.6-2.el6.i686.rpm-bundle.tar
- RAM 128MB
- Đã tắt firewall iptables trên tất cả 4 máy: service iptables stop
- Đã disable selinux


Thông tin cài đặt
Code:
- Trên cả 4 node, tớ đều cài gói MySQL-Cluster-server-gpl-7.3.6-2.el6.i686.rpm và MySQL-Cluster-shared-compat-gpl-7.3.6-2.el6.i686.rpm
- Riêng trên node 2 - sql node, tớ còn bổ sung thêm gói cài MySQL-Cluster-client-gpl-7.3.6-2.el6.i686.rpm


Thông tin cấu hình
Code:
Trên node 1 - management node
- Tớ tạo thư mục /var/lib/mysql-cluster, gán quyền sở hữu mysql:mysql
- Thiết lập file cấu hình /var/lib/mysql-cluster/config.ini có nội dung:

[ndbd default]
NoOfReplicas=2   
DataMemory=80M   
IndexMemory=18M                

[tcp default]
portnumber=2202  

[ndb_mgmd]
hostname=192.168.56.205        
datadir=/var/lib/mysql-cluster

[ndbd]
hostname=192.168.56.207        
datadir=/usr/local/mysql/data

[ndbd]
hostname=192.168.56.208          
datadir=/usr/local/mysql/data  

[mysqld]
hostname=192.168.56.206

Trên node 2 - sql node
[mysqld]
datadir = /var/lib/mysql
port = 3306
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
ndbcluster

[mysql_cluster]
ndb-connectstring=192.168.56.205

Trên node 3 và node 4 - các data node
- Tạo thư mục /usr/local/mysql/data, gán quyền sở hữu mysql:mysql
- Cấu hình /etc/my.cnf như sau:
[mysqld]
ndbcluster                    

[mysql_cluster]
ndb-connectstring=192.168.56.205

Thứ tự khởi động cluster
Code:
Tại management node, tớ chạy:
    ndb_mgmd -f /var/lib/mysql-cluster/config.ini
Lần lượt trên các data node 1 và 2, tớ chạy
    ndbd
Cuối cùng trên sql node, tớ chạy
    mysqld_safe &


Kết quả
Code:
ndb_mgm> show
Connected to Management Server at: localhost:1186
Cluster Configuration

[ndbd(NDB)]     2 node(s)
id=2 (not connected, accepting connect from 192.168.56.207)
id=3    @192.168.56.208  (mysql-5.6.19 ndb-7.3.6, starting, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)
id=1    @192.168.56.205  (mysql-5.6.19 ndb-7.3.6)

[mysqld(API)]   1 node(s)
id=4 (not connected, accepting connect from any host)


Lỗi gặp phải
Node 2 được thông báo là: Node 2: Forced node shutdown completed. Occured during startphase 0. Initiated by signal 11.
Trong /usr/local/mysql/data của Node 2 có một file ndb_2_error.log
Cả ba node: node 2, node 3 và node 4 đều được cảnh báo:
2014-07-28 09:47:23 [MgmtSrvr] WARNING Failed to allocate nodeid for API at 192.168.56.208. Returned error: No free node id found for mysqld(API).
2014-07-28 09:47:23 [MgmtSrvr] WARNING Failed to allocate nodeid for API at 192.168.56.207. Returned error: No free node id found for mysqld(API).
2014-07-28 09:47:23 [MgmtSrvr] WARNING Failed to allocate nodeid for API at 192.168.56.206. Returned error: No free node id found for mysqld(API).
[Up] [Print Copy]
  [Question]   Lỗi trong triển khai MySQL cluster 03/08/2014 21:07:45 (+0700) | #2 | 281182
explorer88
Member

[Minus]    0    [Plus]
Joined: 06/11/2010 22:32:47
Messages: 75
Offline
[Profile] [PM]
Đã fix ! Lỗi là do data node có tài nguyên quá hạn chế. MySQL cluster là in-memory database nên nó sẽ load khá nhiều memory ngay tại thời điểm khởi động cluster (dù nó không dùng hết tất cả memory đó ngay). Thông báo: "Forced node shutdown completed. Occured during startphase 0. Initiated by signal 11. " cho đầu mối signal 11. Tra bảng signal thì 11 là segment fault signal. Kernel sẽ gửi signal này khi có sự xâm phạm memory từ process.

Tớ đã deploy lại cluster với những data node trên các máy tính khoẻ hơn (từ 4G Ram, 4CPUs) và chạy rất mượt.
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|