Required resources¶
This page enumerates resources required for minimal deployment: OpsControl and single environment with both Kubernetes and Cloudfoundry.
Network and containers¶
OpenStack project dan be configured with quotas for the resources. The follwing table lists minimal number of resources required for the Cloudboostr deployment. Deployment of the
Resource | Minimal count | Environment | OpsControl |
---|---|---|---|
Floating IPs | 11 | 6 | 5 |
Networks | 8 | 5 | 3 |
Load Balancers | 7 | 3 | 4 |
Load Balancer pools | 12 | 6 | 6 |
Load Balancer listeners | 12 | 6 | 6 |
Security groups | 11 | 5 | 6 |
Routers | 1 | - | - |
Keypairs | 4 | 2 | 2 |
Private images | 10 | - | - |
Buckets | 6 | 2 | 4 |
Networks example:
Floating IPs¶
Floating IPs can be connected directly to the virtual machine or to the load balancers. Jumpbox machines are accessed directly and exposed via the external IP for the SSH connection. DNS server is connected to the external DNS like Route53.
Load balancers shape traffic for HA available tools like Cloud Founry router, Kubernetes workers, Grafana or Kibana. External IPs in this case are being used for DNS translation.
Connected to compute instances¶
- OpsControl:
- Jumpbox
- DNS master
- Environment:
- Jumpbox
- DNS master
Connected to load balancers¶
- OpsControl:
- UAA
- Concourse
- Kibana
- Grafana
- Environment:
- CF router
- CF SSH
- Kubernetes
Load Balancers¶
Load balancers can have multiple pools and listeners configured. In this case number of pools configured in the default deployment is equal to the number of the listeners.
- OpsControl:
- UAA (1 pool)
- Concourse (1 pool)
- Kibana (3 pools)
- Grafana (1 pool)
- Environment:
- CF router (2 pools)
- CF SSH (1 pool)
- Kubernetes (3 pools)
Load balancers example:
Computational resources¶
Computational resources consist of virtual machines with differenet numbers of vCPU cores, memory size, ephemeral and persistent disks connected. Total number shows sum of resources required for OpsControl and single environment
Total | ||
---|---|---|
CPU | 80 | vCPU |
Mem | 168 | GB |
HDD (persistent) | 319 | GB |
HDD (ephemeral) | 1260 | GB |
OpsControl | ||
---|---|---|
CPU | 25 | vCPU |
Memory | 44 | GB |
HDD (persistent) | 205 | GB |
HDD (ephemeral) | 340 | GB |
Environment | ||
---|---|---|
CPU | 55 | vCPU |
Mem | 124 | GB |
HDD (persistent) | 114 | GB |
HDD (ephemeral) | 920 | GB |
Note
Number of the CPUs, memory and HDD size are calculated for the full deployment, with both Kubernetes and Cloud Foundry. Deployment without Cloud Foundry requires less resources.
Cloud config¶
Cloud config describes types of virtual machines that are being used by Cloudboostr deployment.
Name | vCPU | RAM | HDD |
---|---|---|---|
general_medium | 4 | 16GB | - |
general_medium_50GB | 4 | 16GB | 50GB |
general_medium_100GB | 4 | 16GB | 100GB |
general_small | 2 | 8GB | - |
memory_medium | 4 | 32GB | - |
memory_medium_100GB | 4 | 32GB | 100GB |
memory_small | 2 | 16GB | - |
Breakdown of virtual machines¶
This is the full list of virtual machines in the minimal Cloudboostr deployment.
OpsControl¶
Deployment | VM | Cores | Memory (GB) | HDD Ephemeral (GB) | HDD Persistent (GB) |
---|---|---|---|---|---|
Bosh | opscontrol-bosh | 4 | 4 | 20 | 64 |
Jumpbox | opscontrol-jumpbox | 2 | 4 | 20 | |
Prometheus | opscontrol-prometheus | 2 | 4 | 20 | 10 |
DNS | opscontrol-dns-master | 1 | 1 | 20 | |
opscontrol-dns-slave | 1 | 1 | 20 | ||
ELK | opscontrol-telemetry-elasticsearch_data | 1 | 2 | 20 | 100 |
opscontrol-telemetry-kibana | 2 | 4 | 20 | 5 | |
opscontrol-telemetry-elasticsearch_master | 2 | 4 | 20 | 1 | |
opscontrol-telemetry-ingestor | 1 | 2 | 20 | 5 | |
opscontrol-telemetry-router | 1 | 2 | 20 | ||
Concourse | opscontrol-concourse-web | 2 | 4 | 20 | 10 |
opscontrol-concourse-db | 2 | 4 | 20 | 10 | |
opscontrol-concourse-worker | 4 | 8 | 100 |
Environment¶
Deployment | VM | Cores | Memory (GB) | HDD Ephemeral (GB) | HDD Persistent (GB) |
---|---|---|---|---|---|
Kubernetes | env-k8s-master | 1 | 2 | 20 | 5 |
env-k8s-worker | 2 | 16 | 20 | ||
env-k8s-worker | 2 | 16 | 20 | ||
env-k8s-metrics-forwarder | 1 | 0.5 | 20 | ||
Prometheus | env-prometheus | 2 | 4 | 20 | 10 |
DNS | env-dns-master | 1 | 1 | 20 | |
env-dns-slave | 1 | 1 | 20 | ||
Bosh | env-bosh | 4 | 4 | 20 | 64 |
Jumpbox | env-jumpbox | 2 | 4 | 20 | |
Cloud Foundry | cc-worker | 1 | 2 | 20 | |
consul | 1 | 2 | 20 | 5 | |
router | 1 | 2 | 20 | ||
tcp-router | 1 | 2 | 20 | ||
consul | 1 | 2 | 20 | 5 | |
nats | 1 | 2 | 20 | ||
diego-api | 2 | 4 | 20 | ||
backup-restore | 1 | 2 | 20 | 10 | |
nats | 1 | 2 | 20 | ||
log-api | 1 | 2 | 20 | ||
doppler | 1 | 2 | 20 | ||
singleton-blobstore | 1 | 2 | 20 | ||
api | 1 | 2 | 20 | ||
log-api | 1 | 2 | 20 | ||
scheduler | 1 | 2 | 20 | ||
diego-api | 2 | 4 | 20 | ||
router | 1 | 2 | 20 | ||
doppler | 1 | 2 | 20 | ||
adapter | 1 | 2 | 20 | ||
consul | 1 | 2 | 20 | 5 | |
doppler | 1 | 2 | 20 | ||
diego-cell | 4 | 8 | 100 | ||
cc-worker | 1 | 2 | 20 | ||
api | 1 | 2 | 20 | ||
doppler | 1 | 2 | 20 | ||
tcp-router | 1 | 2 | 20 | ||
database | 2 | 4 | 20 | 10 | |
scheduler | 1 | 2 | 20 | ||
adapter | 1 | 2 | 20 | ||
diego-cell | 1 | 2 | 20 | ||
uaa | 1 | 2 | 20 | ||
uaa | 1 | 2 | 20 | ||
metrics-forwarder | 1 | 0.5 | 20 |