service-capacity-modeling 0.3.48__tar.gz → 0.3.49__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/PKG-INFO +1 -1
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/common.py +6 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/kafka.py +2 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling.egg-info/PKG-INFO +1 -1
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/LICENSE +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/README.md +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/__init__.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/capacity_planner.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/__init__.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/__init__.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/pricing/aws/3yr-reserved_ec2.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/pricing/aws/3yr-reserved_zz-overrides.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/profiles.txt +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c5.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c5a.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c5d.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c5n.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c6a.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c6i.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c6id.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c7a.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c7i.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m4.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m5.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m5n.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m6a.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m6i.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m6id.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m6idn.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m6in.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m7a.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m7i.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r4.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r5.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r5n.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r6a.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r6i.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r6id.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r6idn.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r6in.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r7a.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r7i.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/manual_drives.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/manual_instances.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/hardware/profiles/shapes/aws/manual_services.json +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/interface.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/__init__.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/headroom_strategy.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/__init__.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/__init__.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/aurora.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/cassandra.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/counter.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/crdb.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/ddb.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/elasticsearch.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/entity.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/evcache.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/graphkv.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/iso_date_math.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/key_value.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/postgres.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/rds.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/stateless_java.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/time_series.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/time_series_config.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/wal.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/org/netflix/zookeeper.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/models/utils.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/stats.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/tools/__init__.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/tools/auto_shape.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/tools/fetch_pricing.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/tools/generate_missing.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling/tools/instance_families.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling.egg-info/SOURCES.txt +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling.egg-info/dependency_links.txt +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling.egg-info/entry_points.txt +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling.egg-info/requires.txt +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/service_capacity_modeling.egg-info/top_level.txt +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/setup.cfg +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/setup.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_arguments.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_buffers.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_common.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_desire_merge.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_generate_scenarios.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_hardware.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_hardware_shapes.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_headroom_strategy.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_io2.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_model_dump.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_reproducible.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_simulation.py +0 -0
- {service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_working_set.py +0 -0
|
@@ -374,6 +374,9 @@ def compute_stateful_zone( # pylint: disable=too-many-positional-arguments
|
|
|
374
374
|
min_count: int = 0,
|
|
375
375
|
adjusted_disk_io_needed: float = 0.0,
|
|
376
376
|
read_write_ratio: float = 0.0,
|
|
377
|
+
# Max attached EBS volume size per node. Higher value here could allow
|
|
378
|
+
# for a lower instance count (allows more vertical scaling vs forcing horizontal)
|
|
379
|
+
max_attached_disk_gib: Optional[float] = None,
|
|
377
380
|
) -> ZoneClusterCapacity:
|
|
378
381
|
# Datastores often require disk headroom for e.g. compaction and such
|
|
379
382
|
if instance.drive is not None:
|
|
@@ -461,6 +464,9 @@ def compute_stateful_zone( # pylint: disable=too-many-positional-arguments
|
|
|
461
464
|
# 1/3 the maximum volume size in one node (preferring more nodes
|
|
462
465
|
# with smaller volumes)
|
|
463
466
|
max_size = drive.max_size_gib / 3
|
|
467
|
+
if max_attached_disk_gib is not None:
|
|
468
|
+
max_size = max_attached_disk_gib
|
|
469
|
+
|
|
464
470
|
if ebs_gib > max_size > 0:
|
|
465
471
|
ratio = ebs_gib / max_size
|
|
466
472
|
count = max(cluster_size(math.ceil(count * ratio)), min_count)
|
|
@@ -337,6 +337,8 @@ def _estimate_kafka_cluster_zonal( # pylint: disable=too-many-positional-argume
|
|
|
337
337
|
# Sidecars and Variable OS Memory
|
|
338
338
|
# Kafka currently uses 8GiB fixed, might want to change to min(30, x // 2)
|
|
339
339
|
reserve_memory=lambda instance_mem_gib: base_mem + 8,
|
|
340
|
+
# allow up to 8TiB of attached EBS
|
|
341
|
+
max_attached_disk_gib=8 * 1024,
|
|
340
342
|
)
|
|
341
343
|
|
|
342
344
|
# Communicate to the actual provision that if we want reduced RF
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_arguments.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_desire_merge.py
RENAMED
|
File without changes
|
|
File without changes
|
{service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_hardware.py
RENAMED
|
File without changes
|
{service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_hardware_shapes.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_model_dump.py
RENAMED
|
File without changes
|
{service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_reproducible.py
RENAMED
|
File without changes
|
{service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_simulation.py
RENAMED
|
File without changes
|
{service_capacity_modeling-0.3.48 → service_capacity_modeling-0.3.49}/tests/test_working_set.py
RENAMED
|
File without changes
|