Difference between revisions of "Server maintenence"
Line 105: | Line 105: | ||
First you create a bucket at AWS | First you create a bucket at AWS | ||
# Go to | # Go to https://eu-north-1.console.aws.amazon.com/s3/buckets | ||
# Create a new bucket | # Create a new bucket | ||
#* Select Directory if files are mainly media (pictures/video) | #* Select Directory if files are mainly media (pictures/video) | ||
#* Name the bucket: '''s3fs.CUSTOMER''' | #* Name the bucket: '''s3fs.CUSTOMER''' | ||
# Go to https://us-east-1.console.aws.amazon.com/iam/home | |||
# Add a new user | |||
#* Name the user: '''s3user.CUSTOMER''' | |||
#* Create, edit, go to Security credentials | |||
#* Create Access key | |||
#* Choose other | |||
#* Copy '''AWS_ACCESS_KEY_ID''' and '''AWS_SECRET_ACCESS_KEY''' | |||
Next mount as a filesystem on the server | Next mount as a filesystem on the server |
Revision as of 09:48, 25 September 2024
For internal setup instructions please refer to TS hosting instructions
Server monitor page
Each application contains a public page that can be queried for server status.
The page is: http://SERVER/APPLICATION/service?PASSWORD
Password can be set in the configuration: healthMonitorPassword
Reponse will look something like
<serverstatus>
<flag name="Source version">2081</flag>
<flag name="Unused storage">27%</flag>
<flag name="Database motor">OK</flag>
<flag name="Authentication">OK</flag>
<flag name="Daemon running">NO</flag>
<flag name="Server healthy">HEALTHY</flag>
<flag name="Is user online">NO</flag>
<flag name="Session length">30</flag>
<flag name="DB schema LIVE">tslive</flag>
<flag name="DB schema TEST">tstest</flag>
<flag name="Last view data">2013-02-12 16:53:11</flag>
<flag name="Last exception">2013-02-12 12:28:16</flag>
</serverstatus>
If the goodword HEALTY is found the following things are ok
- Server is open for logins
- DB connections are accessible
- Data / log disc is not full
A good option for an online monitoring tool is Site24x7 which we strongly recommend.
Backup and restore
TS has inbuilt manual functions on the solution level, but measures have to taken to back the data IN the solutions.
Backups should optimally be done either by dumping the database. Alternatively the database can be stopped (important) and data folders can be backed up normally.
The following guide contains directions for setting up incremental backups to remote location, using rsync and SSH connections.
Table naming conventions
Every solution has its own table namespace of "data_" followed by the system solution name.
Example for the solution named XXX:
- data_XXX
Other related tables include
- data_XXX_file
- data_XXX_mail
- data_XXX_comment
- data_XXX_contact
- data_XXX_measure
- data_XXX_member
- data_XXX_t_YYY
- data_XXX_accesslog
- data_XXX_statuslog
- data_XXX_revisionlog
Deleted tables are prefixed by a timestamp
Restore multiple files (Linux)
From the backup directory you can execute these commands
find . -name 'tslive_*.sql' -printf 'source %P;\n' > restoreMe.txt mysql tslive -uroot -pPASSWORD -e "source restoreMe.txt"
Just change database (tslive) and password above
Accessing the database (MySQL)
Normally Tempus Serva will maintain the database by itself.
Sometimes direct access is needed, for example
- Partial table data restore
- Sharding large tables (+1M records or many Blobs)
We recommend the following database tool
Other client tools include
URL redirects and rewrites
Tempus Serva (version 2090+) contains server filters for URL rewrite, redirects and forwards.
The filter is deactivated by default, but can be enabled by
- Rename /WEB-INF/web.xml.urlrewrite to web.xml
- Change /WEB-INF/urlrewrite.xml as needed
- Restart the server
Other options include merging web.xml.urlrewrite into the existing web.xml.
Documentation can be found in following pages
Moving files to S3 storage
First you create a bucket at AWS
- Go to https://eu-north-1.console.aws.amazon.com/s3/buckets
- Create a new bucket
- Select Directory if files are mainly media (pictures/video)
- Name the bucket: s3fs.CUSTOMER
- Go to https://us-east-1.console.aws.amazon.com/iam/home
- Add a new user
- Name the user: s3user.CUSTOMER
- Create, edit, go to Security credentials
- Create Access key
- Choose other
- Copy AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY
Next mount as a filesystem on the server
- Get dependencies
- sudo yum update -y
- sudo yum install automake fuse fuse-devel gcc-c++ git libcurl-devel libxml2-devel make openssl-devel -y
- git clone https://github.com/s3fs-fuse/s3fs-fuse.git
- Compile and install
- cd s3fs-fuse
- ./autogen.sh
- ./configure — prefix=/usr — with-openssl
- make
- sudo make install
- Create keys
- echo AWS_ACCESS_KEY_ID:AWS_SECRET_ACCESS_KEY > ~/.passwd-s3fs
- chmod 755 ~/.passwd-s3fs
- Mount the drive
- mkdir /tmp/cache /mnt/s3fs
- s3fs -o use_cache=/tmp/cache s3fs.CUSTOMER /mnt/s3fs
- Add to FS tab
- s3fs.CUSTOMER /mnt/s3fs fuse.s3fs _netdev,allow_other 0 0