记录创建《intra-mart实践入门》#010 用于撰写的intra-mart环境构建

intra-mart环境快速指南

虽然想要说“三分钟就可以做完~”,但实在是不太可能,所以我们用“快捷”这样抽象的词语来搪塞吧。如果熟悉操作,没有迷茫的话大约30分钟就能完成。我们要做的是基于以下三点。虽然在书籍中会包括,但在这里不会描述与安全措施等运营所需功能有关的内容。

    1. CentOS 7 minimal安装完成

IM-Juggling设置完成
具备文件传输功能的SSH客户端设置完成

战争文件准备

创建一个新的PJ

image.png
image.png

在选择应用程序时,您可以选择以下三个选项。

    • IM-formaDesinger for Accel Platform

 

    • IM-BIS for Accel Platform

 

    IM-Workflow アプリケーション汎用アーカイブ
image.png
image.png
image.png

修改WAR文件的设置

image.png

请在resin-web.xml文件中输入数据库连接字符串的数据库名称、用户名和密码。

    <database jndi-name="jdbc/default">
        <driver>
            <type>org.postgresql.Driver</type>
            <url>jdbc:postgresql://localhost:5432/your_db_name</url>
            <user>your_db_user_name</user>
            <password>your_db_user_password</password>
            <init-param>
                <param-name>preparedStatementCacheQueries</param-name>
                <param-value>20</param-value>
            </init-param>
        </driver>
        <max-connections>20</max-connections>
        <prepared-statement-cache-size>8</prepared-statement-cache-size>
    </database>

修改storage-config.xml中的“root-path-name”。

  <storage-info>
    <root-path-name>/your/intra-mart/storage</root-path-name>
    <system-directory-name>system</system-directory-name>
    <public-directory-name>public</public-directory-name>
    <group-directory-name>groups</group-directory-name>
    <configuration-directory-name>conf</configuration-directory-name>
    <conpatible-directory-name>public</conpatible-directory-name>
    <storage-directory-name>storage</storage-directory-name>
    <temporary-directory-name>temp</temporary-directory-name>
  </storage-info>
image.png
image.png
image.png

构建WAR文件

image.png
image.png
image.png
image.png

将生成的文件传输到设置intra-mart的服务器上,可以使用SCP等方式进行传输。这样,WAR文件的准备工作就完成了。

中文翻译:准备中间件

如果安装操作系统已经完成,下一步只需要运行命令。我会像往常一样用类似Shell脚本的方式给出示例。复制粘贴之后,你可以喝杯茶坐下等待。

#!/bin/bash
# SELinuxの無効化
setenforce 0
sed -i.bak -e "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config 

# パスワードなしsudo可能な管理ユーザーの追加
useradd admin_user_name -g wheel -c "管理ユーザー"
sed -i     -e "$ a %wheel ALL=NOPASSWD: ALL" /etc/sudoers
sed -i     -e "$ a Defaults:admin_user_name \!requiretty" /etc/sudoers

# 管理ユーザーでログイン
su admin_user_name -l

# intra-martで使用するポートのFirewall設定変更
sudo firewall-cmd --zone=public --permanent --add-port=80/tcp
sudo firewall-cmd --zone=public --permanent --add-port=443/tcp
sudo firewall-cmd --zone=public --permanent --add-port=6600/tcp
sudo firewall-cmd --zone=public --permanent --add-port=5432/tcp
sudo firewall-cmd --reload

# PostgreSQLのインストール
sudo sed -i -e "$ a export PGDATA='/var/lib/pgsql/10/data'" /etc/profile
sudo rpm -ivh https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm
sudo yum -y install postgresql10-server-10.1 postgresql10-devel-10.1 postgresql10-contrib-10.1
sudo su -l postgres -c "/usr/pgsql-10/bin/initdb -D /var/lib/pgsql/10/data --encoding=UTF8 --locale=ja_JP.utf8"
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10

# PostgreSQLの設定
sudo su -l postgres -c "sed -i.bak -e \"s|^#listen_addresses *= *'localhost'|listen_addresses = '*'|g\" /var/lib/pgsql/10/data/postgresql.conf"
sudo su -l postgres -c "sed -i.bak -e \"$ a host all all 0.0.0.0/0 md5\" /var/lib/pgsql/10/data/pg_hba.conf"

# JDKのインストール
sudo yum -y install wget
sudo wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" -q -O /tmp/jdk.rpm "http://download.oracle.com/otn-pub/java/jdk/8u162-b12/0da788060d494f5095bf8624735fa2f1/jdk-8u162-linux-x64.rpm"
sudo rpm -ivh /tmp/jdk.rpm
sudo rm -f /tmp/jdk.rpm
sudo sed -i -e "$ a export JAVA_HOME='/usr/java/jdk1.8.0_162'" /etc/profile
sudo sed -i     -e "$ a export PATH=\$JAVA_HOME/bin:\$PATH" /etc/profile

# Resinのインストール
sudo yum -y install wget openssl-devel gcc make
mkdir /tmp/resin
sudo wget -q -O - http://caucho.com/download/resin-pro-4.0.55.tar.gz | tar zxv -C /tmp/resin --strip-components=1
cd /tmp/resin
sudo ./configure --prefix=/usr/resin --enable-64bit --enable-ssl
sudo make
sudo make install
cd ~/
sudo rm -r -f /tmp/resin
sudo sed -i -e "$ a export RESIN_HOME='/usr/resin'" /etc/profile

# Resinの設定 
sudo wget -q -P /usr/resin/lib "https://jdbc.postgresql.org/download/postgresql-42.2.1.jre6.jar"
sudo mkdir -p /var/resin-tmp
sudo sed -i.bak -e "s|^app.http *:.*$|app.http : 80|g" /usr/resin/conf/resin.properties
sudo sed -i     -e "s|^# app.https *:.*$|app.https : 443|g" /usr/resin/conf/resin.properties
sudo sed -i     -e "s|^web.http *:.*$|web.http : 80|g" /usr/resin/conf/resin.properties
sudo sed -i     -e "s|^# web.https *:.*$|web.https : 443|g" /usr/resin/conf/resin.properties
sudo sed -i     -e "s|^# log_level *: *.*$|log_level : info|g" /usr/resin/conf/resin.properties
sudo sed -i     -e "s|^dev_mode *: *.*$|dev_mode : false|g" /usr/resin/conf/resin.properties
sudo sed -i     -e "s|^# dependency_check_interval *:.*$|dependency_check_interval : 10s|g" /usr/resin/conf/resin.properties
jvm_args="-Xms2048m -Xmx2048m -Dfile.encoding=UTF-8 -Djava.io.tmpdir=/var/resin-tmp"
sudo sed -i     -e "s|^# jvm_args *: *.*$|jvm_args : ${jvm_args}|g" /usr/resin/conf/resin.properties
sudo sed -i     -e "s|^#JAVA_HOME=.*$|source /etc/profile|g" /etc/init.d/resin
sudo systemctl daemon-reload
sudo systemctl start resin
sudo systemctl enable resin

进行intra-mart系统初始化

如果到这一步了,只剩一步了。让我们轻松部署WAR文件。

#!/bin/bash
# intra-martで使うストレージの初期化
sudo rm -r -f /your/intra-mart/storage
sudo mkdir -p /your/intra-mart/storage

# intra-martで使うDBの作成
sudo su -l postgres -c "psql -c \"CREATE ROLE your_db_user_name WITH LOGIN SUPERUSER CREATEDB PASSWORD 'your_db_user_password';\""
sudo su -l postgres -c "createdb -O your_db_user_name -U postgres your_db_name"

# WARファイルのデプロイ
sudo /usr/resin/bin/resinctl deploy /your/managed/directory/context_root_name.war
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png

终于准备好了。

Intra-mart的设置变得困难,不仅仅是因为AP服务器和DBMS的难度很高,还因为跟随官方提供的设置指南会试图设置Apache Cassandra和Apache Solr导致的。只是在5.1.4.模块选择中写得很简单,更加让人困惑…。→习惯了一段时间后,我会想要直接排除数据库并调查依赖关系,所以如果有不必要的数据会更加混乱。→过去已经建立了100多个租户,但失败的占了3至5成。
广告
将在 10 秒后关闭
bannerAds