From 639930bed8edb6f60cb0eca260b2024f9fc6ff9a Mon Sep 17 00:00:00 2001 From: Michele Cereda Date: Fri, 13 Jan 2023 22:31:22 +0100 Subject: [PATCH] Added KB about Terraform Enterprise --- .../replicated.settings.json | 11 +++ .../terraform enterprise/tfe.settings.json | 83 +++++++++++++++++++ knowledge base/replicated.md | 16 ++++ knowledge base/replicatedctl.md | 34 ++++++++ knowledge base/terraform enterprise.md | 28 +++++++ 5 files changed, 172 insertions(+) create mode 100644 examples/terraform enterprise/replicated.settings.json create mode 100644 examples/terraform enterprise/tfe.settings.json create mode 100644 knowledge base/replicated.md create mode 100644 knowledge base/replicatedctl.md create mode 100644 knowledge base/terraform enterprise.md diff --git a/examples/terraform enterprise/replicated.settings.json b/examples/terraform enterprise/replicated.settings.json new file mode 100644 index 0000000..20d305b --- /dev/null +++ b/examples/terraform enterprise/replicated.settings.json @@ -0,0 +1,11 @@ +{ + "DaemonAuthenticationType": "password", + "DaemonAuthenticationPassword": "your-password-here", + "TlsBootstrapType": "server-path", + "TlsBootstrapHostname": "server.company.com", + "TlsBootstrapCert": "/etc/server.crt", + "TlsBootstrapKey": "/etc/server.key", + "BypassPreflightChecks": true, + "ImportSettingsFrom": "/path/to/settings.json", + "LicenseFileLocation": "/path/to/license.rli" +} diff --git a/examples/terraform enterprise/tfe.settings.json b/examples/terraform enterprise/tfe.settings.json new file mode 100644 index 0000000..d0eb80c --- /dev/null +++ b/examples/terraform enterprise/tfe.settings.json @@ -0,0 +1,83 @@ +{ + "aws_access_key_id": {}, + "aws_instance_profile": {}, + "aws_secret_access_key": {}, + "azure_account_key": {}, + "azure_account_name": {}, + "azure_client_id": {}, + "azure_container": {}, + "azure_endpoint": {}, + "azure_use_msi": {}, + "backup_token": {}, + "ca_certs": { + "value": "--- X509 CERT ---\naabbccddeeff\n--- X509 CERT ---\n" + }, + "capacity_concurrency": { + "value": "10" + }, + "capacity_cpus": {}, + "capacity_memory": { + "value": "512" + }, + "custom_image_tag": { + "value": "hashicorp/build-worker:now" + }, + "disk_path": { + "value": "/opt/terraform-enterprise" + }, + "enable_active_active": {}, + "enc_password": { + "value": "CHANGEME" + }, + "extern_vault_addr": {}, + "extern_vault_enable": {}, + "extern_vault_namespace": {}, + "extern_vault_path": {}, + "extern_vault_propagate": {}, + "extern_vault_role_id": {}, + "extern_vault_secret_id": {}, + "extern_vault_token_renew": {}, + "extra_no_proxy": {}, + "force_tls": {}, + "gcs_bucket": {}, + "gcs_credentials": {}, + "gcs_project": {}, + "hairpin_addressing": {}, + "hostname": { + "value": "terraform.example.org" + }, + "iact_subnet_list": {}, + "iact_subnet_time_limit": {}, + "log_forwarding_config": {}, + "log_forwarding_enabled": {}, + "metrics_endpoint_enabled": {}, + "metrics_endpoint_port_http": {}, + "metrics_endpoint_port_https": {}, + "pg_dbname": {}, + "pg_extra_params": {}, + "pg_netloc": {}, + "pg_password": {}, + "pg_user": {}, + "placement": {}, + "production_type": { + "value": "disk" + }, + "redis_host": {}, + "redis_pass": {}, + "redis_port": {}, + "redis_use_password_auth": {}, + "redis_use_tls": {}, + "restrict_worker_metadata_access": {}, + "s3_bucket": {}, + "s3_endpoint": {}, + "s3_region": {}, + "s3_sse": {}, + "s3_sse_kms_key_id": {}, + "tbw_image": { + "value": "default_image" + }, + "tls_ciphers": {}, + "tls_vers": { + "value": "tls_1_2_tls_1_3" + } +} diff --git a/knowledge base/replicated.md b/knowledge base/replicated.md new file mode 100644 index 0000000..f135a24 --- /dev/null +++ b/knowledge base/replicated.md @@ -0,0 +1,16 @@ +# Replicated + +## Further readings + +- [replicatedctl] +- [Configuration file example] + +## Sources + + + + +[replicatedctl]: replicatedctl.md +[configuration file example]: ../examples/terraform%20enterprise/replicated.settings.json + + diff --git a/knowledge base/replicatedctl.md b/knowledge base/replicatedctl.md new file mode 100644 index 0000000..a96f204 --- /dev/null +++ b/knowledge base/replicatedctl.md @@ -0,0 +1,34 @@ +# replicatedctl + +## TL;DR + +```sh +# Get the status of the whole system. +replicatedctl system status + +# Get the detailed status of the application. +replicatedctl app status + +# Start the application. +replicatedctl app start + +# Stop the application. +replicatedctl app stop + +# Show detailed information about the application. +replicatedctl app inspect + +# Export the application's settings. +replicatedctl app-config export +replicatedctl app-config export > 'settings.json' + +# Apply changes to the application's settings. +replicatedctl app apply-config +``` + +## Sources + +- [Command reference] + + +[command reference]: https://help.replicated.com/api/replicatedctl/ diff --git a/knowledge base/terraform enterprise.md b/knowledge base/terraform enterprise.md new file mode 100644 index 0000000..27fb385 --- /dev/null +++ b/knowledge base/terraform enterprise.md @@ -0,0 +1,28 @@ +# Terraform Enterprise + +Self-hosted distribution of Terraform Cloud. + +## Basic requirements + +- a license file from HashiCorp +- a TLS certificate with private key; the key and X.509 certificate must be PEM (base64) encoded +- at least 10GB of disk space on the root volume +- at least 40GB of disk space for the Docker data directory (defaults to `/var/lib/docker`) +- at least 8GB of system memory +- at least 4 CPU cores + +## Further readings + +- [Replicated] + +## Sources + +- [Terraform Enterprise documentation] + + +[terraform enterprise documentation]: https://developer.hashicorp.com/terraform/enterprise + + +[replicated]: replicated.md + +