Infrastructure engineering for East Africa's operators, platforms and regulators See the work →
CloudSpinx · Cloud Consulting

Cloud Consulting and Infrastructure Design in Kenya

CloudSpinx does cloud infrastructure design, migration and managed cloud on AWS, Azure and Google Cloud for businesses in Kenya and across East Africa, with everything provisioned as code so you can read, audit and take over what we built. Design work is quoted as a fixed piece, migration per engagement, and running it afterwards as a monthly figure. Where the honest answer is that a workload should stay on your own hardware, we say so before you sign.

Free 30-min consultation No lock-in contracts Local on-site engineers

Who we build for

  • 14organizations, from ISPs and payment platforms to a national regulator
  • 6flagship engagements published in full, with the numbers counted
  • 4thof all contributors to the open-source payment switch national systems run on
See the engineering record →
Certified engineers 24/7 support
0 Resources created by hand
99.9% Uptime SLA
Free Cloud readiness assessment
What's Included

Everything in Our Cloud Consulting Service

Every engagement covers the full scope: no hidden extras, no upselling.

Cloud infrastructure design

The architecture before the build: account and network topology, identity, availability targets, storage and backup shape, and a costed target you can take to a board. Sold as a fixed piece of work whether or not we build it.

Landing zone and account structure

Separate accounts, subscriptions or projects for production, non-production and shared services, with a network hub, centralized logging and guardrails set before the first workload lands rather than untangled after.

Cloud migration

Assessment, target architecture, dependency mapping and a staged cutover with a rollback point at every wave. Lift-and-shift, re-platform or refactor, chosen per workload rather than as a policy.

Infrastructure as code

Every resource provisioned with Terraform or OpenTofu, in your repository, peer-reviewed and reproducible. No click-ops, and no environment that exists only in one engineer's memory.

Cost engineering

Right-sizing against measured utilization, committed-use and reserved purchases where the term fits, idle and orphaned resource cleanup, storage tiering, and budget alerts before the invoice.

Kubernetes and containers

EKS, AKS and GKE, or self-managed where that fits better. Node sizing, autoscaling, ingress, secrets management and the honest advice on whether you need Kubernetes at all.

GitOps delivery

Argo CD pipelines with drift detection, Helm chart management, and deployments that are auditable and revertible rather than a person with production credentials.

Cloud security and IAM

Least-privilege roles, no long-lived keys, encryption at rest and in transit, network segmentation, and logging that satisfies an auditor rather than a dashboard.

Hybrid and multi-cloud

Site-to-site connectivity, consistent identity, and unified monitoring where workloads genuinely have to span your building and a provider. Built only when there is a real reason.

Monitoring and on-call

Prometheus and Grafana or the provider's native stack, alerts that route to a person, and dashboards showing capacity and spend rather than decoration.

Backup and recovery

Cross-region or cross-account copies, retention matched to what the business can actually lose, and a restore rehearsal on the calendar. Snapshots in the same account are not a backup.

Disaster recovery design

A recovery target agreed with the business first, then the cheapest shape that meets it: backup and restore, pilot light, or a warm standby in a second region. Written up as a runbook a tired person can follow at 03:00.

Technologies we use

AWSMicrosoft AzureGoogle CloudTerraformOpenTofuKubernetesDockerHelmArgo CDAnsibleGitHub ActionsGitLab CIPrometheusGrafanaVaultOpenStack
Reference Architectures

What a cloud design actually looks like

Three of the drawings that come out of a design engagement: the landing zone every workload lands in, the shape of a migration that can be reversed, and the three lawful places your data can sit when the provider has no region in this country. Account naming, address plan and sizing come out of your workloads.

01

The landing zone: account structure, identity and network hub

The part almost nobody builds first, and the part that is expensive to retrofit. Separate accounts give you a blast radius, a readable bill and somewhere to put a guardrail. Doing this after two years of production means moving live workloads between accounts, which is a project rather than an afternoon.

Cloud landing zone account structure An organization root holding billing and policy, with identity, central logging and guardrails set once beneath it, a network hub carrying egress and DNS, a site link back to the Nairobi office, and three separate workload accounts for production, non-production and sandboxes. one organization, many accounts policy set before the first workload Organization root billing, policy and the account factory Identity and single sign-on Entra ID, Okta or the provider's own no long-lived access keys anywhere one leaver process, minutes not memory Logging and audit trail its own account, write-once storage every API call, every region readable by an auditor, not a dashboard Guardrails and budgets policy denies what must not happen budget alerts before the invoice tags that make the bill readable Set once at the root. Every account below inherits it, including the ones nobody has created yet. Nairobi office and kit that stays site VPN or a circuit Network hub central egress, DNS, inspection and the route table everything else hangs off one place to see traffic leaving, which is also where the egress bill is decided Production account edge app data no standing human access changes arrive through the pipeline Non-production account dev test staging same code, smaller shapes off outside office hours Sandbox accounts per team capped expiring a budget ceiling and an end date nothing production depends on
  • Inherited policy and billing
  • Routed network paths
  • Link back to your own premises
02

A cloud migration you can reverse, wave by wave

Nothing gets deleted while the way back is still needed. The old environment stays standing through every wave and past the last one, which costs you a few weeks of double running and buys you the only rollback that actually works. The shape below is an example: your wave count comes out of the dependency map, not out of a template.

Wave-based cloud migration timeline An example eight-week migration: assessment, then design and landing zone, then three waves moving pilot workloads, business applications and finally databases. The old environment runs underneath the whole timeline so each wave has a rollback point, and three classes of workload are called out as needing an agreed outage window. Example eight-week shape Wave count comes out of the dependency map Assessment and inventory Design and landing zone Wave 1: pilot low-risk workloads first Wave 2: business apps files, print, line of business Wave 3: databases and ERP the ones that need a window w0 w2 w4 w6 w8 Old environment still running, still authoritative until the wave above it is verified Rollback point at every boundary. It stops being available the day the old estate is switched off, and not before. These do not move in a quiet window, and we name yours during assessment rather than on the night: A large transactional database the final sync is the outage A license pinned to hardware the vendor has to re-issue it A supervised cutover a payment or KRA integration
03

Where Kenyan data is allowed to live, and what each shape costs

The honest figure. There is no AWS, Azure or Google Cloud region in this country, so every public cloud design here is a cross-border transfer with a paper trail attached. That is usually fine. When it is not, the alternatives are real rather than a consolation, and each one hands you a different problem to own.

Three lawful places Kenyan workloads can run Three side-by-side options for a Kenyan workload: everything in a public cloud region outside the country, a hybrid keeping regulated data on hardware in Nairobi while the rest runs in the cloud, and a private cloud entirely in a Nairobi facility. Each panel states what the shape costs the business, from documented transfer bases to owning capacity planning. No AWS, Azure or Google Cloud region in Kenya. Nearest are Cape Town and Johannesburg, then Europe and the Middle East. OPTION A All in public cloud Users and offices in Kenya Region outside Kenya application database backups personal data one platform, one bill, full elasticity Costs you every transfer needs a documented lawful basis, and egress is the line nobody models until it arrives. OPTION B Hybrid, split by what is regulated Users and offices in Kenya In Nairobi personal and regulated data the system of record never crosses In the cloud web and app tiers analytics and bursty jobs elastic Costs you two platforms, two sets of skills, and a link between them that is now on the critical path. OPTION C Private cloud in a Nairobi facility Users and offices in Kenya Your hardware, your racks compute storage identity second site nothing leaves the country Costs you capacity planning becomes somebody's job, and your elasticity is whatever you bought last year.

Which of these do you actually need?

No card is marked as the recommended one, because there is no answer that survives contact with your workloads. What the design phase does is work out which row you are in, and it is worth saying that a meaningful number of the businesses who call us belong in the last one.

Public cloud

One provider, everything on it

Right when your load varies, when you are building something new, or when the team you have is small and would rather write software than replace disks.

Costs you: a documented transfer basis for personal data, and an egress bill that only shows up at production volume.

Hybrid

Regulated data stays, the rest moves

The usual answer in financial services, health and public sector work, where one dataset carries conditions and the other ninety percent of the estate carries none.

Costs you: two platforms to run and a link between them that has just become production infrastructure.

Private cloud

Your own hardware, run properly

For a hard residency requirement, or a steady workload big enough that renting it costs more than owning it. Built on OpenStack or Proxmox rather than a pile of servers.

Costs you: capital up front, capacity planning as a real job, and someone who answers the phone at 02:00.

None of these

Stay where you are for now

If the estate is stable, the workload never scales and the actual problem is that backups are untested, moving it to rented compute solves nothing and costs more.

Costs you: nothing, which is the point. Fix the backups, then have this conversation again in a year.

These are shapes, not build sheets. Instance families, address plans, storage classes and the recovery targets that drive all three come out of your workloads during design, and that is the first piece of work rather than a free extra attached to a migration.

What cloud actually costs, and where the money goes

Cloud pricing is public, which makes this the one area where you can check the arithmetic yourself. That is also why so many Kenyan cloud bills are wrong: the list price is transparent, and the waste is not. What we find on almost every account we inherit is the same handful of items, and none of them are exotic.

What we quote on

Migration is priced per engagement: workload count, how tangled the dependencies are, data volume against the bandwidth you have, and how much refactoring you want against a straight move. Ongoing management is a monthly figure driven by the number of environments, whether you need out-of-hours cover, and whether we run the platform or support your team running it. We do not take a percentage of your cloud spend, because a provider paid more when your bill grows should not be the one advising you on cost.

  • Instances sized from a guess. Someone picked a shape at launch and nothing has been measured since. Right-sizing against real utilization is the largest single line, every time.
  • Non-production running at night and at weekends. Development and staging environments left on for the two thirds of the week nobody is using them.
  • Orphaned storage. Unattached volumes, old snapshots with no lifecycle policy, and load balancers pointing at nothing.
  • On-demand where the workload never stops. A steady baseline running at on-demand rates while committed-use and reserved pricing sits unused.
  • Egress nobody modeled. Data transfer out is the charge that surprises Kenyan businesses most, because it does not show up in a pilot and does show up at production volume.

Cloud infrastructure design, before anything gets built

Most of the cloud estates we are asked to fix were never designed. Someone needed a server, opened a console, and a year later everything lives in one account, several people hold administrative keys, and nobody can explain the bill by line. Design is the cheapest hour in an engagement because it is the only point where changing your mind is free. We sell it as a fixed piece of work on its own, and you are welcome to have somebody else do the building.

Design without the build

Plenty of clients take the design and hand it to their own team, or to whoever already holds the contract. We price it that way on purpose. A design that only works if we are the ones building it is a sales document, and you can usually tell which one you have been given by page ten. Everything we produce is written to be executed by any competent engineer, the same reason our advisory work ends in artifacts rather than in a retainer.

The design is where we tell you not to buy

Design is also the stage where a workload gets sent back. A steady database that has run at the same size for years, a system whose vendor will not support it off-premises, an application whose egress would cost more than its hosting: these surface when someone models the target properly, and they are much cheaper to find on paper than in a cutover window. Roughly the ones listed further down under when we tell clients not to move, and we would rather lose the migration than sell you one that makes your position worse.

  • Account and network topology. How production is separated from everything else, what the address plan is, where the boundary sits, and how your office and any remaining on-premises kit reach it.
  • Identity and access. Who can do what, through which roles, with no long-lived keys, and a leaver process that takes minutes instead of somebody remembering every system that person touched.
  • Recovery targets agreed with the business, in numbers. How long you can be down and how much data you can lose, signed off before an architecture is picked rather than discovered during the first outage.
  • The costed target. A modeled monthly run rate at your real volumes, with the assumptions written next to it so your finance team can argue with them.
  • The build plan. What gets created in what order, expressed as Terraform or OpenTofu module boundaries rather than as a slide.

Migration without pretending there is no risk

We plan a staged cutover with a rollback point at every wave, and the old environment stays standing until the new one has been through a full business cycle. Most workloads move in a short window while the final data sync completes. Some do not: a large transactional database, a system with a license pinned to hardware, or an application whose vendor will not support it off-premises will need a planned window agreed with the business, and we tell you which of your systems those are during assessment rather than on the night.

The dependency nobody documented

Migrations slip on discovery, not on engineering. The scheduled task on someone's desktop that produces the month-end file. The hard-coded IP address in an integration. The certificate that expires during the cutover weekend. The vendor who needs six weeks' notice to re-point a payment integration. We spend real time on this before quoting because a migration plan built on an incomplete inventory is a plan to discover things at 02:00.

Bandwidth is the Kenyan constraint

Moving several terabytes over a shared office link is measured in weeks and will make the office unusable while it happens. The fix is normally incremental sync over a period, a dedicated circuit for the transfer, or physical media, and the choice depends on how much data you have and how much of it changes daily. This gets modeled during assessment, because it is the item most likely to move the timeline. Where the link itself is the constraint, the connectivity work comes first.

Where your data is allowed to live

None of the three major providers runs a region in Kenya. The nearest are Cape Town and Johannesburg, then Europe and the Middle East (AWS and Google both publish the current list), so a workload serving Nairobi users answers from one of those. For most businesses that is fine and the latency is unremarkable. Build for the regions that exist rather than the one that was announced: the Microsoft and G42 campus at Olkaria was to carry an Azure East Africa region and has stalled over grid capacity and government offtake guarantees. It stops being fine when a regulator, a client contract or the Data Protection Act attaches conditions to where personal data sits and how it crosses a border. Financial services, health data and public-sector work are the usual cases. When that applies, the honest architecture is often a private cloud on hardware in a Nairobi facility, or a hybrid where the regulated data stays local and everything else does not. We build both, and a private cloud on OpenStack is a genuine option rather than a consolation prize.

Everything as code, and why it matters to you commercially

Every resource we provision is defined in Terraform or OpenTofu, held in your repository, and reviewed before it applies. The technical arguments are the usual ones: reproducible environments, no configuration drift, a diff before every change. The commercial argument is the one that should matter more to you. Infrastructure defined in code is infrastructure another firm can take over. If we disappear tomorrow, you hand the repository to anyone competent and they can read exactly what exists and why. A cloud estate that was clicked together by hand is a hostage situation with an invoice attached, and it is the single most common form of lock-in we are asked to unpick.

When we tell clients not to move to the cloud

Cloud is a good default and it is not a universal answer. These are the cases where we have advised against it and would again.

  • A steady, predictable workload that never scales. A database that runs at the same size every day for five years is cheaper on hardware you own, often substantially. Cloud pricing rewards elasticity, and if you have none you are paying for an option you never exercise.
  • Heavy egress. If your product pushes large volumes of data out to users, data transfer charges can dominate everything else. Model it honestly at production volume before committing.
  • A hard residency requirement with no local region. If the data legally cannot leave Kenya, the answer is local hardware or a local facility, not a creative reading of the rules.
  • A lift-and-shift with no other change. Moving an unmodified estate to rented compute usually costs more per month than the servers did, and it buys you nothing except somebody else's hardware failures. Either re-platform enough to use what the cloud is good at, or stay where you are.
  • No one to own it. Cloud shifts work from racking to engineering. If nobody will own cost governance and access management, the bill and the attack surface both grow quietly. Either resource it, or let someone manage it for you.

What you own at handover

The Terraform or OpenTofu repository with its state, in your source control. The architecture diagrams, the runbooks, the monitoring and alerting configuration, and the cost baseline with the assumptions written down. Accounts, subscriptions and projects are created under your organization with your billing relationship, never resold through ours, so you keep the direct provider relationship and any credits or discounts attached to it. Whether we then manage it or your team does is a decision you get to make again every year.

Scope Your Cloud

Tell us what you are running today

Enough for a readiness view and a real figure rather than a range. Every field has an escape hatch, so answer what you know and leave the rest to the assessment.

Free, and it commits you to nothing. If the honest answer is that a workload should stay on your own hardware, that is what you will get told.

Next step

Ready to discuss Cloud Consulting?

A 30-minute scoping call, free, and it commits you to nothing.

Our Process

How Every Cloud Consulting Engagement Starts

01

Readiness assessment

Workload inventory, dependency mapping, data volumes against your actual bandwidth, residency constraints and a cost model for the target. This is the free part, and it frequently changes the plan.

02

Design and cost it

Target architecture, network and identity design, the migration wave plan with rollback points, and one figure for the work plus a modeled monthly run rate.

03

Build and migrate

Landing zone built as code, workloads moved in waves, each wave verified before the next, and the old environment kept standing until a full business cycle has passed.

04

Optimize and hand over

Right-sizing against real post-migration data, commitment purchases once usage is proven, documentation and training, then either your team runs it or we do.

FAQ

Common Questions

How much does cloud migration cost in Kenya?
It is quoted per engagement, driven by workload count, dependency complexity, data volume against your available bandwidth, and how much re-platforming you want against a straight move. Ongoing management is a separate monthly figure based on environment count and cover hours. We start with a free readiness assessment so the quote is built on an inventory rather than a guess, and we do not bill a percentage of your cloud spend.
How long does a cloud migration take?
Most land in four to eight weeks. The variables that actually move it are data volume against your link speed, how many undocumented dependencies turn up in discovery, and how much vendor coordination a payment or line-of-business integration needs. The assessment gives you a timeline with the risks named before you commit to anything.
Will there be downtime?
We plan staged cutovers with a rollback point at each wave, and most workloads move in a short window while the final data sync completes. Some genuinely need a planned window: a large transactional database, an application with a hardware-locked license, or a system whose vendor requires supervised cutover. We identify which of your systems those are during assessment and agree the windows in advance rather than discovering them on the night.
AWS, Azure or Google Cloud?
For most Kenyan businesses it matters less than the effort spent choosing suggests. Azure usually wins where the estate is already Microsoft-heavy with Entra ID and Microsoft 365, because identity and licensing carry over. AWS has the broadest service catalog and the deepest local skills pool. Google Cloud is strong on data and Kubernetes. We will recommend one, and if you already have an account somewhere we will generally tell you to stay rather than bill you for a move that changes nothing.
Is there a cloud region in Kenya?
Not from AWS, Azure or Google Cloud. The nearest regions are Cape Town and Johannesburg, then Europe and the Middle East, and for most applications the latency from Nairobi is unremarkable. The Microsoft and G42 campus at Olkaria was announced to carry an Azure East Africa region, and it has stalled over grid capacity and the offtake guarantees the government would not give, so we design against the regions that exist today. Where it matters is compliance rather than performance: if a regulator or the Data Protection Act constrains where personal data sits, the answer is a private cloud on hardware in a Nairobi facility, or a hybrid keeping the regulated data local.
Can we buy the cloud architecture design on its own?
Yes, and a fair number of clients do. Cloud infrastructure design is quoted as a fixed piece of work and delivers the account and network topology, the identity model, agreed recovery targets, a costed monthly run rate at your real volumes, and a build plan expressed as Terraform or OpenTofu module boundaries. You can then hand that to your own team or to whoever holds your contract. We price it to stand alone deliberately, because a design that only works if we build it is a sales document.
Can you reduce our existing cloud bill?
Usually, and we will tell you roughly how much before you engage us rather than after. The findings are consistently the same: instances sized from a guess and never measured, non-production running around the clock, unattached volumes and old snapshots with no lifecycle policy, steady workloads on on-demand pricing, and unmodeled egress. We do not take a percentage of the savings or of your spend, because that incentive points the wrong way.
What is Infrastructure as Code and do we need it?
It means your environment is defined in files (Terraform or OpenTofu) rather than clicked together in a console. The technical benefit is reproducibility and no configuration drift. The commercial benefit is bigger: infrastructure defined in code can be handed to any competent firm, so you are not locked into whoever built it. An estate assembled by hand is the most common lock-in we get asked to unpick.
Do we need Kubernetes?
Probably not, and we say that as people who run it for clients who do. Kubernetes earns its complexity when you have many services, several teams deploying independently, and real elasticity. For a handful of applications with steady traffic, managed container services or plain virtual machines will be cheaper to run and far cheaper to staff. We would rather build you the boring thing that works than the impressive thing you cannot operate.
Who owns the cloud accounts?
You do. Accounts, subscriptions and projects are created under your own organization with your billing relationship, never resold through us, so you keep any credits, discounts and support entitlements directly. The Terraform state and repository are in your source control. If you leave, nothing has to be untangled from our tenancy, because none of it was ever in it.
Can you manage the cloud after migration?
Yes, and plenty of clients take it: monitoring with on-call, patching, cost reviews, security and access management, and Kubernetes operations if that is in the estate. Plenty of others take documentation and training instead and run it themselves, which we design for from the start. The handover is the same either way.
WhatsApp