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