Take control of your document generations within your AWS infrastructure with Carbone On-AWS. This solution mirrors the Carbone Cloud API, offering the following advantages:
For inquiries, contact us via chat or email at contact@carbone.io.
1 - Go to the AWS product sheet.
2 - Click on "Continue to Subscribe"
🎉 It's done
1 - Go to AWS Marketplace > Manage subscriptions console
2 - Click on "Launch new instance
Select Carbone version and region and click on "Continue to launch through EC2"
3 - Click on "Cancel" to keep default settings
4 - Review EC2 options Before launching EC2 Carbone instance, please check following options:
TCP/4000
from API users{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"aws-marketplace:MeterUsage"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
5 - 🎉 Enjoy 🎉
Verify the Carbone instance is running with the following command:
curl http://"EC2_IP"/status
## Expected result : {"success":true,"code":200,"message":"OK","version":"4.14.3"}
Carbone on AWS can be configured in the same way as Carbone on-premise : Learn how to configure server and enable options
The configuration is accessible by connecting to the EC2 instance in the file /var/www/carbone-ee/config/config.json
. We recommand to use carbone user after connection on ec2 instance to modify config.json
After doing modification in config.json file, please restart carbone with following command:
sudo systemctl restart carbone-ee
By default Carbone AMI is configured to export application logs on CloudWatch. To enable it, you only need to attach following policy on EC2 IAM role :
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudwatch:PutMetricData",
"ec2:DescribeVolumes",
"ec2:DescribeTags",
"logs:PutLogEvents",
"logs:DescribeLogStreams",
"logs:DescribeLogGroups",
"logs:CreateLogStream",
"logs:CreateLogGroup"
],
"Resource": ""
},
{
"Effect": "Allow",
"Action": [
"ssm:GetParameter"
],
"Resource": "arn:aws:ssm:::parameter/AmazonCloudWatch-"
}
]
}
You can use create your own JS plugins to customise some part or Carbone : create Carbone Plugins
Sample S3 plugins is included by default to allow you to load and store templates from you S3 bucket.
To use it, you need to configure bucket name and region in file /var/www/carbone-ee/config/config.json with the following options:
"templateS3Bucket" : "test-stockage-template",
"templateS3BucketRegion" : "us-east-1",
"templateS3Folder" : "prod"
Authentification is done using EC2 IAM role so you need to add following policy to grant S3 access to you EC2 instance :
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:GetObjectAttributes",
"s3:ListBucket",
"s3:DeleteObject"
],
"Resource": [
"arn:aws:s3:::test-stockage-template",
"arn:aws:s3:::test-stockage-template/*"
]
}
]
}
To update Carbone on AWS, please follow these steps :
Prerequisites :
Upgrade path :
sudo systemctl stop carbone-ee
sudo systemctl start carbone-ee
To access to Carbone logs, connect to the EC2 instance with SSH or by the System Manager. Logs are accessible with following command:
journalctl -u carbone-ee -r
If you try to connect through ssh, please check:
TCP/22
If the following error message appears on logs, it's mean that IAM MeterUsage Role is not attach to EC2 instance.
$ Carbone need acces to AWS Marketplace API to check subscription and report usage. Please check if you ec2 instance have correct IAM role
Please check following:
Create new IAM role
(or choose an existing one if created earlier)Create role
, select AWS service and EC2, click NextAWSMarketplaceMeteringFullAccess
, click NextTo enable Carbone Studio Light, you need to connect on EC2 instance through SSH, and add "studio": true, option in file /var/www/carbone-ee/config/config.json
and restart Carbone service.