2014-07-23 13 views
5

Đối với một nhóm các nhà phát triển, điều quan trọng là mọi người phải thiết lập và cấu hình máy chủ ứng dụng. Trong trường hợp của chúng tôi, chúng tôi đang sử dụng websphere 8.5.Cách phân phối cấu hình máy chủ websphere (datasources, jms, ...) cho nhiều phiên bản?

Tôi đang tìm cách dễ dàng để thực hiện việc này. Thông thường bạn làm điều đó bằng cách sử dụng công cụ quản lý hồ sơ nằm trong WAS_HOME/bin/ProfileManagement và công cụ này hoạt động tốt. Nhưng sau khi cài đặt máy chủ websphere, người dùng vẫn cần cấu hình hồ sơ máy chủ - tạo nguồn dữ liệu, hàng đợi JMS, xe buýt, biến số, v.v. Vì vậy, tôi nghĩ rằng nó sẽ là tốt đẹp nếu có một cách để áp dụng các cấu hình này cho một cấu hình hiện có.

thử đầu tiên của tôi là chỉ cần cấu hình một cấu hình và sau đó đưa ra một bản sao lưu cấu hình sử dụng

%WAS_HOME%/bin/backupConfig.bat 

Nhưng cấu hình chứa ví dụ tên máy chủ lưu trữ và các cấu hình máy chủ phụ thuộc khác. Vì vậy, công cụ backupConfig.bat không phải là những gì tôi đang tìm kiếm.

Ý nghĩ tiếp theo đến trong tâm trí của tôi là tôi có thể tạo một hồ sơ đặc biệtTemplate. Để người khác có thể sử dụng công cụ quản lý tiểu sử và sử dụng mẫu này. Nhưng cấu trúc khuôn mẫu dường như không được thực hiện để tùy chỉnh. Rất nhiều tệp và gần như không có tài liệu nào có thể được tìm thấy về cách tạo mẫu hồ sơ riêng.

Vì vậy, tôi đã xem xét các mẫu bổ sung. Các mẫu này được sử dụng (như tên của nó) để thêm cấu hình cụ thể vào một cấu hình hiện có. Tôi đã tìm thấy rất nhiều tài liệu về cách áp dụng tăng cường cho một cấu hình hiện có nhưng không có tài liệu hướng dẫn về cách tạo một tăng thêm. Cuối cùng tôi nghĩ rằng phải có một số cách để xuất dữ liệu websphere, bus, cấu hình jms vv và áp dụng chúng vào các cấu hình khác, bởi vì trong quá trình cài đặt rất lớn đội ngũ hoạt động phải có khả năng này.

Tôi biết rằng tôi có thể thêm bộ mô tả vùng chứa cụ thể vào EAR. Ví dụ. META-INF/ibmconfig/cells/defaultCell/applications/defaultApp/resources.xml. Nhưng tôi không muốn xây dựng các tệp EAR môi trường cụ thể, vì nó kết hợp các bản dựng của chúng tôi với cơ sở hạ tầng và do đó chúng tôi phải xây dựng và triển khai lại khi các hoạt động bao giờ thay đổi cơ sở hạ tầng, ví dụ: tên máy chủ, IP, mật khẩu.

Có ai biết cách quản lý việc phân phối nguồn dữ liệu, xe buýt, jms, v.v ... cho nhiều cài đặt websphere không?

Trả lời

3

Ngoài các tập lệnh wsadmin - rất tốt cho các loại tác vụ này, tôi đề xuất cấu hình dựa trên Thuộc tính. Nó có thể hữu ích hơn cho bạn, vì nó cho phép xuất nhiều đối tượng cấu hình cùng một lúc và sau đó áp dụng nó cho các môi trường khác nhau. Nó cũng có thể dễ dàng hơn một chút, vì bạn làm việc trên các tệp văn bản thuần túy thay vì các tập lệnh jython.

Thuộc tính tập tin dựa cấu hình cho phép bạn:

  • dữ liệu Extract ra khỏi kho lưu trữ cấu hình để tạo tài sản tập tin.
  • Cập nhật tệp thuộc tính để thao tác cấu hình, theo yêu cầu .
  • Áp dụng dữ liệu đã cập nhật trong tệp thuộc tính vào kho lưu trữ cấu hình đích .

Xem thêm chi tiết tại đây:
Properties-based configuration
Infocenter documentation
Education assistant

+1

Cảm ơn, tôi đã xuất khẩu các cấu hình đầy đủ và bây giờ tôi cố gắng để nhập nó vào một cấu hình khác. Một số cấu hình đã hoạt động nhưng một số lỗi gây ra. Tôi sẽ điều tra điều này trong những ngày tiếp theo. –

0

Tôi vừa mới nhớ công cụ wsadmin và đoán đó là cách tốt nhất để thực hiện các yêu cầu của tôi.

May mắn thay IBM cung cấp sample scripts cho bạn thấy cách tạo nguồn dữ liệu hoặc sửa đổi chúng bằng cách sử dụng tập lệnh jython hoặc jacl.

Một ví dụ về cách tạo datasources có thể tìm thấy ví dụ như trong (ex7.py tập tin trong zip) Administration scripts (1-12) -- Jython version

Hope this helps những người khác có cùng một câu hỏi hoặc similay.

1

Tôi khuyên bạn nên sử dụng wsadmin shell scripting và tạo tập lệnh để tạo tài nguyên. Tiền thưởng là bạn có thể chạy trực tiếp từ RAD (nhấp chuột phải vào Run As-> Administrative Script).

Dưới đây là ví dụ hoàn chỉnh viết bằng Jython để tạo nguồn JDBC cùng với thông tin đăng nhập JAAS (lưu ý: Tôi đang sử dụng cơ sở dữ liệu Oracle, thiết lập của bạn có thể khác nhau tùy thuộc vào cơ sở dữ liệu bạn đang sử dụng):

cell=AdminConfig.showAttribute(AdminConfig.list("Cell"), "name") 
node=AdminConfig.showAttribute(AdminConfig.list("Node"), "name") 

#Add JAAS credentials 
print "Adding JAAS credentials" 
security = AdminConfig.getid('/Cell:'+cell+'/Security:/') 
alias = ['alias', node+'/dbUser'] 
userid = ['userId', 'DBUSER'] 
password = ['password', 'PASSWORD'] 
jaasAttrs = [alias, userid, password] 
AdminConfig.create('JAASAuthData', security, jaasAttrs) 
AdminConfig.save() 

#Add JDBC jar path 
print "Adding JDBC jar path" 
AdminTask.setVariable('[-variableName ORACLE_JDBC_DRIVER_PATH -variableValue ${WAS_INSTALL_ROOT}/lib/ext -scope Cell='+cell+',Node='+node+']') 
AdminConfig.save() 

#JDBC Provider print "Adding JDBC Provider" 
AdminTask.createJDBCProvider('[-scope Node='+node+',Server=server1 -databaseType Oracle -providerType "Oracle JDBC Driver" -implementationType "Connection pool data source" -name "Oracle JDBC Driver" -description "Oracle JDBC Driver-compliant Provider." -classpath ${ORACLE_JDBC_DRIVER_PATH}/ojdbc6.jar]') 
AdminConfig.save() 

#JDBC Datasources print "Creating Datasource" 
AdminJDBC.createDataSourceAtScope("Node="+node+",Server=server1", "Oracle JDBC Driver", "test", "jdbc/test", "com.ibm.websphere.rsadapter.Oracle11gDataStoreHelper", "jdbc:oracle:thin:@10.0.0.1:1521:TEST", [['componentManagedAuthenticationAlias', node+'/test'], ['containerManagedPersistence', 'true']]) 
AdminConfig.save() 
Các vấn đề liên quan