Hive Kho dữ liệu Trong Hadoop Hệ thống sinh thái. Nó có thể hoạt động như một công cụ ETL trên Hadoop. Kích hoạt tính khả dụng cao (HA) trên Hive không tương tự như chúng tôi làm trong các Dịch vụ chính như Namenode và Trình quản lý tài nguyên.

Tự động chuyển đổi dự phòng sẽ không xảy ra trong Hive (Hiveserver2 ). Nếu có Hiveserver2 (HS2) không thành công, chạy các công việc trên HS2 bị lỗi đó sẽ không thành công. Chúng tôi cần gửi lại công việc để công việc có thể chạy trên HiveServer2. Vì vậy, bật HA trên HS2 không có gì khác ngoài việc tăng số lượng các thành phần HS2 trong Cụm.

Trong bài viết này, chúng ta sẽ thấy các bước để cài đặt và kích hoạt Tính khả dụng cao của Hive.

Yêu cầu

Cài đặt và cấu hình Hive

1. Đăng nhập vào Quản lý Cloudera tại URL bên dưới và điều hướng đến Cloudera Manager –> Add Service.

http://13.233.129.39:7180/cmf/home
Thêm dịch vụ trong Trình quản lý Cloudera

2. Chọn dịch vụ ‘Hive‘.

Chọn dịch vụ Hive

3. Gán các dịch vụ trên các nút.

  • Cổng vào – Đây là dịch vụ khách hàng nơi người dùng có thể truy cập Hive. Thông thường, dịch vụ này sẽ được đặt trong Bờ rìa các nút dành riêng cho người dùng.
  • Hive Metastore – Nó là một kho lưu trữ trung tâm để lưu trữ Siêu dữ liệu Hive.
  • Máy chủ WebHCat – Nó là một API Web cho HCatalog và các Dịch vụ Hadoop khác.
  • Hiveserver2 – Nó là một giao diện của các máy khách để thực thi truy vấn trên Hive.

Sau khi chọn các máy chủ, hãy nhấp vào ‘Continue‘ tiến hành với.

Chỉ định dịch vụ làm nút

4. Hive Metastore cần một Cơ sở dữ liệu cơ bản để lưu trữ Siêu dữ liệu. Ở đây chúng tôi đang sử dụng mặc định PostgreSQL cơ sở dữ liệu được tạo sẵn với CDH.

Chi tiết cơ sở dữ liệu được đề cập bên dưới sẽ được nhập tự động, và ‘ Kiểm tra kết nối’ sẽ bị bỏ qua vì cơ sở dữ liệu được đề cập sẽ được tạo nhanh chóng. Trong thời gian thực, chúng ta cần tạo Cơ sở dữ liệu trong cơ sở dữ liệu bên ngoài và kiểm tra kết nối để tiến hành thêm. Sau khi hoàn tất, vui lòng nhấp vào ‘Continue‘.

Thiết lập cơ sở dữ liệu

5. Cấu hình Nhà kho Hive , / user / hive / kho là đường dẫn thư mục mặc định để lưu trữ các bảng Hive. Nhấp chuột ‘Continue‘.

Chọn Thư mục kho hàng của Hive

6. Cài đặt Hive được bắt đầu.

Tiến trình cài đặt Hive

7. Sau khi cài đặt hoàn tất, bạn có thể nhận được ‘Finished‘. Nhấp chuột ‘Continue‘.

Cài đặt Hive đã hoàn tất

8. Cài đặt và cấu hình Hive hoàn tất thành công. Nhấp chuột ‘Finish‘để hoàn tất thủ tục cài đặt.

Kết thúc cài đặt Hive

9. Bạn có thể thấy Hive thêm vào Cluster xuyên qua Trang tổng quan trình quản lý Cloudera.

Đã thêm dịch vụ Hive

10. Bạn có thể xem Hiveserver2 Trong Phiên bản của Hive. Chúng tôi đã thêm Hiveserver2 Trong chủ1.

Cloudera Manager -> Hive -> Instances -> Hiveserver2.

Xem các phiên bản Hiveserver2

Kích hoạt tính khả dụng cao trên Hive

11. Tiếp theo, thêm vai trò Hive bằng cách đi tới Cloudera Manager -> Hive -> Actions -> Add Role Instances.

Thêm phiên bản vai trò Hive

12. Chọn máy chủ mà bạn muốn đặt extr Hiveserver2. Bạn có thể thêm nhiều hơn hai, không có giới hạn. Ở đây chúng tôi đang bổ sung thêm một Hiveserver2 Trong chủ2.

Chọn máy chủ cho Hive
Chọn máy chủ lưu trữ

13. Sau khi chọn máy chủ, hãy nhấp vào ‘Continue‘.

Máy chủ đã được thêm vào

14. Hiverserver2 sẽ được thêm vào Phiên bản Hive bạn cần bắt đầu nó bằng cách đi tới Cloudera Manager -> Hive -> Instances -> (Chọn Hiveserver2 mới được thêm) -> Action for Selected -> Start.

Chọn máy chủ Hive
Chọn Hive Server
Khởi động máy chủ Hive
Bắt đầu Máy chủ Hive
Khởi động máy chủ Hive

15. Một lần Hiveserver2 Bắt đầu vào master2, bạn sẽ có được trạng thái ‘Finished‘. Nhấp chuột Close.

Tình trạng: Hoàn tất
Trạng thái Finished

16. Bạn có thể xem, cả hai Hiveserver2s đang chạy.

Xác minh trạng thái máy chủ Hive

Đang xác minh Tính khả dụng của Hive

Chúng ta có thể kết nối Hiveserver2 thông qua beeline là một máy khách mỏng và dòng lệnh. Nó sử dụng trình điều khiển JDBC để thiết lập kết nối.

17. Đăng nhập vào Máy chủ ở đâu Cổng Hive đang chạy.

 [[email protected] ~]$ beeline
Kết nối với Hiveserver2

18. Nhập JDBC chuỗi kết nối để kết nối Hiveserver2. Trong kết nối này, sợi dây chúng tôi đang đề cập Hiverserver2 (master2) với số cổng mặc định 10000. Chuỗi kết nối này sẽ chỉ kết nối với Hiveserver2 đang chạy trên chủ2.

 beeline> !connect "jdbc:hive2://master1.2error.net:10000"
Chuỗi kết nối JDBC

19. Chạy một truy vấn mẫu.

 0: jdbc:hive2://master1.2error.net:10000> show databases;
Chạy truy vấn mẫu

Đây là cơ sở dữ liệu mặc định có sẵn.

20. Sử dụng lệnh dưới đây để kết thúc phiên Hive.

 0: jdbc:hive2://master1.2error.net:10000> !quit
Thoát phiên Hive

21. Bạn có thể sử dụng cách tương tự để kết nối Hiveserver2 đang chạy trên chủ2.

 beeline> !connect "jdbc:hive2://master2.2error.net:10000"
Kết nối với Hiveserver

23. Chúng ta có thể kết nối Hiveserver2 Trong Khám phá Zookeeper. Trong phương pháp này, chúng ta không cần đề cập đến Hiveserver2 trong chuỗi kết nối thay vào đó chúng tôi đang sử dụng Người giữ vườn thú để khám phá những thứ có sẵn Hiveserver2.

Ở đây, chúng tôi có thể sử dụng bộ cân bằng tải của bên thứ ba để cân bằng tải giữa các Hiverserver2. Cấu hình dưới đây là cần thiết để kích hoạt Zookeeper Discovery Mode bằng cách đi đến Cloudera Manager -> Hive -> Configuration.

Bật chế độ khám phá Zookeeper

24. Tiếp theo, tìm kiếm tài sản Đoạn mã cấu hình nâng cao HiveServer2 và bấm vào + biểu tượng để thêm thuộc tính bên dưới.

 Name : hive.server2.support.dynamic.service.discovery
Value : true
Description : <any description>
Đoạn mã cấu hình nâng cao HiveServer2

25. Sau khi nhập thuộc tính, hãy nhấp vào ‘Save Changes‘.

Thêm thuộc tính

26. Khi chúng tôi thực hiện các thay đổi đối với Cấu hình, cần khởi động lại các dịch vụ bị ảnh hưởng bằng cách nhấp vào Biểu tượng màu cam để khởi động lại các dịch vụ.

Khởi động lại dịch vụ

27. Nhấp vào ‘Restart Stale‘ dịch vụ.

Khởi động lại các dịch vụ cũ

28. Có hai lựa chọn có sẵn. Nếu cụm đang được sản xuất trực tiếp, chúng tôi cần ưu tiên khởi động lại theo chu kỳ để giảm thiểu tình trạng ngừng hoạt động. Vì chúng tôi mới cài đặt, chúng tôi có thể chọn tùy chọn thứ hai ‘Re-deploy Client Configuration‘, và nhấp vào’Restart Now‘.

Triển khai lại cấu hình máy khách

29. Sau khi khởi động lại thành công, bạn sẽ nhận được trạng thái ‘Finished‘. Nhấp chuột ‘Finish‘để hoàn tất quá trình.

Kết thúc quá trình

30. Bây giờ chúng ta sẽ kết nối Hiveserver2 sử dụng Người giữ vườn thú Khám phá . Trong JDBC kết nối, chuỗi chúng ta cần sử dụng Người giữ vườn thú máy chủ có số cổng là 2081. Thu thập các máy chủ Zookeeper bằng cách truy cập Cloudera Manager -> Zookeeper -> Instances -> (Ghi lại tên máy chủ).

Máy chủ Zookeeper

Đây là ba máy chủ có Zookeeper, 2181 là số cổng.

 master1.2error.net:2181
master2.2error.net:2181
worker1.2error.net:2181

31. Bây giờ nhận được vào beeline.

 [[email protected] ~]$ beeline
Kết nối với Beeline

32. Nhập JDBC chuỗi kết nối như được đề cập bên dưới. Chúng tôi phải đề cập đến Chế độ khám phá dịch vụ Không gian tên Zookeeper . ‘hiveserver2’ là không gian tên mặc định của Hiveserver2.

beeline>!connect "jdbc:hive2://master1.2error.net:2181,master2.2error.net:2181,worker1.2error.net:2181/;serviceDiscoveryMode=zookeeper;zookeeperNamespace=hiveserver2"
Nhập chuỗi kết nối JDBC

33. Bây giờ phiên được kết nối với Hiveserver2 đang chạy trên chủ1. Chạy một truy vấn mẫu để xác thực. Sử dụng lệnh dưới đây để tạo cơ sở dữ liệu.

 0: jdbc:hive2://master1.2error.net:2181,mast> create database 2error;
Tạo nên cơ sở dữ liệu

34. Sử dụng lệnh dưới đây để liệt kê cơ sở dữ liệu.

 0: jdbc:hive2://master1.2error.net:2181,mast> show databases;
Cơ sở dữ liệu danh sách

35. Bây giờ chúng tôi sẽ xác nhận Cao khả dụng Trong Chế độ khám phá Zookeeper. Đi đến Quản lý Cloudera và dừng lại Hiveserver2 trên master1 chúng tôi đã thử nghiệm ở trên.

Cloudera Manager -> Hive -> Instances -> (chọn Hiveserver2 trên master1) -> Action for selected -> Stop.

Chọn máy chủ Hive
Dừng máy chủ Hive

36. Nhấp vào ‘Stop‘. Sau khi dừng lại, bạn sẽ nhận được trạng thái ‘Finished‘. Kiểm chứng Hiveserver2 trên master1 bằng cách điều hướng vào Hive -> Instances.

Dừng Hiveserver
Xác minh máy chủ Hive

37. Hãy bắt đầu và kết nối Hiveserver2 sử dụng giống nhau JDBC chuỗi kết nối với Zookeeper Discovery Cách thức như chúng ta đã làm trong các bước trên.

[[email protected] ~]$ beeline

beeline>!connect "jdbc:hive2://master1.2error.net:2181,master2.2error.net:2181,worker1.2error.net:2181/;serviceDiscoveryMode=zookeeper;zookeeperNamespace=hiveserver2"
Kết nối Hiveserver2

Bây giờ bạn sẽ được kết nối với Hiveserver2 đang chạy trên chủ2.

38. Xác thực bằng một truy vấn mẫu.

 0: jdbc:hive2://master1.2error.net:2181,mast> show databases;
Xác thực truy vấn mẫu

Sự kết luận

Trong bài viết này, chúng tôi đã đi qua các bước chi tiết để có Kho dữ liệu Hive trong của chúng tôi Tính khả dụng cao của cụm . Trong môi trường sản xuất thời gian thực, hơn ba Hiveserver2 sẽ được đặt với Chế độ khám phá Zookeeper được kích hoạt.

Đây, tất cả Hiveserver2’s đang đăng ký với Người giữ vườn thú dưới một điểm chung Không gian tên. Zookeeper Dynamics khám phá ra những thứ có sẵn Hiveserver2 và thiết lập phiên Hive.
Chúng tôi hy vọng rằng bài viết này bao gồm tất cả các phương pháp Cách cài đặt và cấu hình Hive với tính khả dụng cao – Phần 7. Nếu bạn thấy bài viết này thực sự hữu ích với bạn, hãy chia sẻ thông tin này với bạn bè, người thân, gia đình và những người khác của bạn. Hẹn gặp lại các bạn trong những bài viết tiếp theo với 2error.net!