1. 系統要求
至少 3GHz CPU
至少 4GB 內存 (2GB給WSO2,2GB給操作系統)
至少 10GB 磁盤
JDK1.8_x64, 其中JDK1.8.0_151版本存在已知的GZIP decoding問題,不建議使用
內置H2數據庫可以用於開發測試,生成環境建議用企業級數據庫,支持Oracle, PostgreSQL, MySQL, MS SQL, etc
支持LDAP進行用戶管理
生成環境建議使用最新版RedHat Enterprise Linux 或者Ubuntu Server LTS
2. 安裝
下載地址:https://wso2.com/api-management
1. linux
- 下載並解壓apim
- 安裝jdk1.8-x64, 並配置JAVA_HOME環境變量
2.windows安裝
- 下載並解壓apim
- 下載 snappy-java_1.1.1.7.jar放到repository\components\lib目錄下
- 安裝jdk1.8-x64, 並配置JAVA_HOME環境變量
3. 運行
1. 啟動
定位到<PRODUCT_HOME>\bin\目錄
window上運行:wso2server.bat --run
linux前台運行:sh wso2server.sh
linux后台運行:sh wso2server.sh start
linux后台停止:sh wso2server.sh stop
2. 管理控制台
瀏覽器訪問地址:https://localhost:9443/carbon
默認登錄賬號密碼:admin/admin
默認15分鍾超期,可以在<PRODUCT_HOME>/repository/conf/tomcat/carbon/WEB-INF/web.xml修改默認配置
<session-config> <session-timeout>15</session-timeout> </session-config>
3.API Publisher
瀏覽器訪問:https://<Server Host>:9443/publisher
4.API Store
瀏覽器訪問:https://<Server Host>:9443/store
5.訪問IP限制
參考:https://docs.wso2.com/display/AM250/Running+the+Product
6.添加互訪鏈接
默認情況下API Publisher上沒有直接跳轉到API Store的鏈接,可以通過以下方式添加,打開/repository/conf/api-manager.xml配
<APIStore> <DisplayURL>true</DisplayURL> <URL>https://<hostname>:9443/store</URL> </APIStore>
7.修改默認密碼
打開文件<PRODUCT_HOME>/repository/conf/user-mgt.xml,修改如下內容:
<Realm> <Configuration> <AddAdmin>true</AddAdmin> <AdminRole>admin</AdminRole> <AdminUser> <UserName>admin</UserName> <Password>admin</Password> </AdminUser> <EveryOneRoleName>everyone</EveryOneRoleName> <!-- By default users in this role see the registry root --> <Property name=""></Property> ............... </Configuration> ... </Realm>
4. 漢化
1.漢化文件位置:
服務端輸出字符串漢化文件位置:/repository/deployment/server/jaggeryapps/publisher/site/conf/locales/jaggery
客戶端輸出字符串漢化文件位置:/repository/deployment/server/jaggeryapps/publisher/site/conf/locales/js
2.漢化方法
以服務端輸出漢化為例:
- 復制locale_default.json文件並重名為locale_zh.json
- 使用文本編輯器修改文件中每一段,將冒號后面的英文翻譯為對應的中文,保存文件
5. 使用Oracle數據庫
1. 單機Oracle
- 創建一個Oracle數據庫
- 使用下列語句添加Oracle用戶
Create user <USER_NAME> identified by password account unlock; grant connect to <USER_NAME>; grant create session, create table, create sequence, create trigger to <USER_NAME>; alter user <USER_NAME> quota <SPACE_QUOTA_SIZE_IN_MEGABYTES> on '<TABLE_SPACE_NAME>'; commit;
- 把ojdbc驅動(例如ojdbc14.jar)放入<PRODUCT_HOME>/repository/components/lib/目錄下
- 修改DataSource配置,鏈接到Oracle數據庫中,配置文件位置:<PRODUCT_HOME>/repository/conf/datasources/master-datasources.xml,參考下列方式修改
<datasource> <name>WSO2_CARBON_DB</name> <description>The datasource used for registry and user manager</description> <jndiConfig> <name>jdbc/WSO2CarbonDB</name> </jndiConfig> <definition type="RDBMS"> <configuration> <url>jdbc:oracle:thin:@SERVER_NAME:PORT/SID</url> <username>regadmin</username> <password>regadmin</password> <driverClassName>oracle.jdbc.OracleDriver</driverClassName> <maxActive>80</maxActive> <maxWait>60000</maxWait> <minIdle>5</minIdle> <testOnBorrow>true</testOnBorrow> <validationQuery>SELECT 1 FROM DUAL</validationQuery> <validationInterval>30000</validationInterval> <defaultAutoCommit>false</defaultAutoCommit> </configuration> </definition> </datasource>
- 登錄oracle執行sql語句初始化數據庫,sql文件位置<PRODUCT_HOME>/dbscripts/oracle.sql
2. Oracle RAC
- 創建一個Oracle數據庫
- 使用下列語句添加Oracle用戶
Create user <USER_NAME> identified by password account unlock; grant connect to <USER_NAME>; grant create session, create table, create sequence, create trigger to <USER_NAME>; alter user <USER_NAME> quota <SPACE_QUOTA_SIZE_IN_MEGABYTES> on '<TABLE_SPACE_NAME>'; commit;
- 把ojdbc驅動(例如ojdbc14.jar)放入<PRODUCT_HOME>/repository/components/lib/目錄下
- 修改DataSource配置,鏈接到Oracle數據庫中,配置文件位置:<PRODUCT_HOME>/repository/conf/datasources/master-datasources.xml,參考下列方式修改
<datasource> <name>WSO2_CARBON_DB</name> <description>The datasource used for registry and user manager</description> <jndiConfig> <name>jdbc/WSO2CarbonDB</name> </jndiConfig> <definition type="RDBMS"> <configuration> <url>jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=on) (ADDRESS=(PROTOCOL=TCP)(HOST=racnode1) (PORT=1521)) (ADDRESS=(PROTOCOL=TCP)(HOST=racnode2) (PORT=1521)) (CONNECT_DATA=(SERVICE_NAME=rac)))</url> <username>regadmin</username> <password>regadmin</password> <driverClassName>oracle.jdbc.driver.OracleDriver</driverClassName> <maxActive>80</maxActive> <maxWait>60000</maxWait> <minIdle>5</minIdle> <testOnBorrow>true</testOnBorrow> <validationQuery>SELECT 1 FROM DUAL</validationQuery> <validationInterval>30000</validationInterval> <defaultAutoCommit>false</defaultAutoCommit> </configuration> </definition> </datasource>
- 登錄oracle執行sql語句初始化數據庫,sql文件位置<PRODUCT_HOME>/dbscripts/oracle.sql
3. 修改數據庫的完整配置過程
apim涉及以下多個數據源,全部都需要按照上述方式修改
- WSO2AM_DB: For API-M-specific data.
- WSO2MB_DB: For message brokering data.
- WSO2METRICS_DB: For storing data for Metrics monitoring.
- WSO2AM_STATS_DB:For the Analytics database
具體參考: https://docs.wso2.com/display/AM250/Changing+the+Default+API-M+Databases
