Deploy the Cloud Foundry Application Runtime on Kubernetes.
Assumes:
- You have a cloud account on Azure, AWS, or Google
- You have already provisioned a cluster that meets minimum operating requirements
- You have registered a domain (perhaps via managed DNS)
- You have installed
- You have credentials for
- your container registry
- your cluster (i.e., ~/.kube/config)
Review the experiments directory for help addressing these pre-requisites before getting started.
cp terraform.tfvars.sample terraform.tfvars
Amend the values for
base_domain
registry_domain
repository_prefix
registry_password
kubeconfig_path
Add and (of course) amend values for
email = ...
domain = ...
then depending upon your IaaS, uncomment and amend values for blocks of configuration as follows
dns_zone_id = ...
client_id = ...
client_secret = ...
tenant_id = ...
subscription_id = ...
resource_group_name = ...
project = ...
If you're deploying locally to a kind cluster then you must set the following additional variables
remove_resource_requirements = true
add_metrics_server_components = true
enable_load_balancer = false
enable_automount_service_account_token: true
metrics_server_prefer_internal_kubelet_address: true
use_first_party_jwt_tokens: true
./create-cf4k8s.sh <iaas> <base_domain>
Set
iaas
to be one of [ amazon, azure, gcp ] and setbase_domain
to be the same value as defined interraform.tfvars
./destroy-cf4k8s.sh <iaas>
Set
iaas
to be one of [ amazon, azure, gcp ]