{"id":904,"date":"2026-04-16T15:26:13","date_gmt":"2026-04-16T15:26:13","guid":{"rendered":"https:\/\/www.devopsschool.com\/tutorials\/oracle-cloud-roving-edge-classic-tutorial-architecture-pricing-use-cases-and-hands-on-guide-for-edge-cloud\/"},"modified":"2026-04-16T15:26:13","modified_gmt":"2026-04-16T15:26:13","slug":"oracle-cloud-roving-edge-classic-tutorial-architecture-pricing-use-cases-and-hands-on-guide-for-edge-cloud","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/tutorials\/oracle-cloud-roving-edge-classic-tutorial-architecture-pricing-use-cases-and-hands-on-guide-for-edge-cloud\/","title":{"rendered":"Oracle Cloud Roving Edge Classic Tutorial: Architecture, Pricing, Use Cases, and Hands-On Guide for Edge Cloud"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Category<\/h2>\n\n\n\n<p>Edge Cloud<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Introduction<\/h2>\n\n\n\n<p>Oracle Cloud <strong>Roving Edge Classic<\/strong> is an <strong>Edge Cloud<\/strong> service that brings a small, self-contained \u201cOCI-like\u201d cloud environment to locations where you <strong>can\u2019t rely on steady connectivity<\/strong>, have <strong>strict data locality<\/strong>, or need <strong>low-latency processing close to where data is produced<\/strong>.<\/p>\n\n\n\n<p><strong>Simple explanation:<\/strong> Roving Edge Classic is a <strong>portable, Oracle-managed edge appliance<\/strong> (delivered as hardware) that lets you run compute and storage workloads locally at the edge, then <strong>move data and results back to Oracle Cloud (OCI)<\/strong> when a connection is available.<\/p>\n\n\n\n<p><strong>Technical explanation:<\/strong> Roving Edge Classic provides a ruggedized or portable edge system that can run a subset of OCI-style infrastructure capabilities (for example: virtual machines, networking constructs, and local storage services depending on the Classic offering). It is designed for <strong>intermittently connected, bandwidth-constrained, or disconnected<\/strong> environments. You typically manage the fleet and lifecycle from the OCI tenancy, and operate workloads locally on the device while on-site.<\/p>\n\n\n\n<p><strong>What problem it solves:<\/strong> Many real-world environments (ships, mines, field operations, factories, remote labs, secure sites) cannot depend on a constant link to a public cloud region. Roving Edge Classic addresses this by enabling <strong>local compute + local data processing<\/strong> with <strong>controlled synchronization<\/strong> back to Oracle Cloud when feasible\u2014reducing latency, improving resilience, and helping meet data residency or sovereignty constraints.<\/p>\n\n\n\n<blockquote>\n<p>Naming\/status note (important): Oracle\u2019s edge portfolio has included \u201cRoving Edge\u201d offerings over time (for example, \u201cRoving Edge Infrastructure\u201d \/ \u201cRoving Edge Device\u201d terminology in some documentation and console experiences). If your OCI console shows <strong>Roving Edge Classic<\/strong> specifically, treat it as the <strong>Classic\/legacy generation<\/strong> for your tenancy. Capabilities and workflows can vary by device model and service generation. <strong>Verify the exact \u201cClassic\u201d feature set and supported services in the official Oracle documentation for your tenancy<\/strong> before committing to a production design.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">2. What is Roving Edge Classic?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Official purpose<\/h3>\n\n\n\n<p>Roving Edge Classic is intended to deliver <strong>Oracle Cloud capabilities at the edge<\/strong>\u2014in environments that are <strong>remote, mobile, intermittently connected, or disconnected<\/strong>\u2014while keeping management aligned with Oracle Cloud\u2019s operational model.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Core capabilities (high-level)<\/h3>\n\n\n\n<p>Roving Edge Classic typically focuses on these categories:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Local compute<\/strong>: Run workloads close to data sources (often VM-based; confirm container\/Kubernetes availability for Classic in official docs).<\/li>\n<li><strong>Local storage and data handling<\/strong>: Store and process data on the device; synchronize or transfer to OCI later.<\/li>\n<li><strong>Local networking<\/strong>: Define local networks\/subnets and connect on-prem\/edge clients.<\/li>\n<li><strong>Lifecycle management<\/strong>: Order\/provision device(s), ship, activate, operate, update, and decommission.<\/li>\n<\/ul>\n\n\n\n<p>Because \u201cClassic\u201d can mean a specific generation, <strong>confirm exactly which OCI services are supported on your Classic devices<\/strong> (for example, Compute, Object Storage-style capabilities, block storage, etc.).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Major components<\/h3>\n\n\n\n<p>A typical Roving Edge Classic solution includes:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\n<p><strong>The edge device\/appliance<\/strong>\n   &#8211; Hardware delivered to your site.\n   &#8211; Provides on-device compute, storage, and networking.<\/p>\n<\/li>\n<li>\n<p><strong>OCI tenancy integration<\/strong>\n   &#8211; You use your Oracle Cloud tenancy (compartments, IAM, governance) to manage the service.\n   &#8211; Ordering and fleet management generally happen in the OCI Console.<\/p>\n<\/li>\n<li>\n<p><strong>Local management endpoint<\/strong>\n   &#8211; A local UI\/API endpoint to manage the device and deploy workloads.\n   &#8211; Authentication and authorization are integrated with your OCI identity model in a service-specific way (verify for Classic).<\/p>\n<\/li>\n<li>\n<p><strong>Data movement mechanisms<\/strong>\n   &#8211; Synchronization\/transfer methods for moving data between edge and OCI.\n   &#8211; May include online sync when connected and offline transfer methods (verify supported tooling for Classic).<\/p>\n<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Service type<\/h3>\n\n\n\n<p>Roving Edge Classic is best understood as:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>A managed edge infrastructure service<\/strong> delivered as <strong>hardware<\/strong> (appliance model).<\/li>\n<li>Not purely a regional cloud service; it extends OCI concepts to an <strong>on-site edge environment<\/strong>.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Scope model (how it\u2019s \u201cscoped\u201d)<\/h3>\n\n\n\n<p>In OCI terms, Roving Edge Classic is typically:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Tenancy-scoped<\/strong> for billing and access control.<\/li>\n<li><strong>Compartment-scoped<\/strong> for resource organization and IAM policies.<\/li>\n<li><strong>Device\/fleet-scoped<\/strong> operationally (you manage one or many devices).<\/li>\n<\/ul>\n\n\n\n<p>Exact scoping (for example, whether edge resources appear as separate \u201ctargets\u201d in console navigation) can vary\u2014<strong>verify in official docs for Roving Edge Classic<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How it fits into the Oracle Cloud ecosystem<\/h3>\n\n\n\n<p>Roving Edge Classic fits into Oracle Cloud as an <strong>Edge Cloud extension<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>It complements OCI regions by enabling <strong>local processing<\/strong> when \u201cregion-first\u201d isn\u2019t viable.<\/li>\n<li>It can support hybrid patterns:<\/li>\n<li><strong>Edge-first<\/strong> processing (filter\/aggregate locally \u2192 sync results)<\/li>\n<li><strong>Cloud-first<\/strong> training\/model building (OCI region) \u2192 <strong>edge inference<\/strong> (Roving Edge Classic)<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">3. Why use Roving Edge Classic?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Business reasons<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Operate in remote\/offline locations<\/strong> without building a full on-prem data center.<\/li>\n<li><strong>Reduce operational downtime<\/strong> when WAN connectivity is unreliable.<\/li>\n<li><strong>Faster time-to-value<\/strong> for field deployments compared to designing custom rugged infrastructure.<\/li>\n<li><strong>Data sovereignty\/data locality<\/strong>: keep sensitive raw data on-site; send only derived insights to the cloud.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Technical reasons<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Low-latency compute<\/strong> next to sensors, cameras, industrial control systems, or local apps.<\/li>\n<li><strong>Bandwidth optimization<\/strong>: pre-process and compress data at the edge to reduce WAN transfer.<\/li>\n<li><strong>Portable cloud-like environment<\/strong>: run consistent infrastructure patterns at multiple sites.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Operational reasons<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Repeatable edge deployments<\/strong> using a standardized Oracle-managed platform.<\/li>\n<li><strong>Centralized governance<\/strong> through OCI IAM, compartments, and audit patterns (with Classic-specific caveats).<\/li>\n<li><strong>Fleet operations<\/strong>: scale out deployments by ordering multiple devices.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Security\/compliance reasons<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Constrain data movement<\/strong>: keep raw datasets within a site boundary.<\/li>\n<li><strong>Better control over exposure<\/strong>: edge network can be isolated; outbound sync can be scheduled\/controlled.<\/li>\n<li><strong>Compliance<\/strong>: supports architectures where regulatory boundaries prevent uploading raw data to public cloud.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Scalability\/performance reasons<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Scale by adding devices<\/strong> to new sites (horizontal scaling at the edge).<\/li>\n<li><strong>Performance predictability<\/strong>: local processing is not dependent on WAN latency.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">When teams should choose it<\/h3>\n\n\n\n<p>Choose Roving Edge Classic when you need one or more of:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Disconnected or intermittently connected operations<\/li>\n<li>Mobile or temporary installations<\/li>\n<li>Strict locality requirements for raw data<\/li>\n<li>On-site compute for low-latency or resilience<\/li>\n<li>A managed edge platform aligned with OCI operations<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">When teams should not choose it<\/h3>\n\n\n\n<p>Avoid (or reconsider) if:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You have <strong>reliable low-latency connectivity<\/strong> to an OCI region and can run everything in-region.<\/li>\n<li>You need <strong>very large-scale compute<\/strong> that exceeds device constraints.<\/li>\n<li>Your workloads require <strong>services not supported on Classic<\/strong> (for example, specific managed databases, advanced orchestration, or GPU\u2014verify device SKUs and Classic capabilities).<\/li>\n<li>Your operational model cannot handle physical device logistics (shipping, custody, secure storage, on-site support).<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">4. Where is Roving Edge Classic used?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Industries<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Oil &amp; gas, mining, utilities<\/li>\n<li>Manufacturing and industrial IoT<\/li>\n<li>Logistics and transportation<\/li>\n<li>Maritime and aviation<\/li>\n<li>Defense\/public sector (where permitted)<\/li>\n<li>Media and entertainment (on-location ingest)<\/li>\n<li>Research fieldwork (environmental, medical, remote labs)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Team types<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Platform engineering teams standardizing edge deployments<\/li>\n<li>DevOps\/SRE teams supporting remote operations<\/li>\n<li>OT\/IT convergence teams (industrial environments)<\/li>\n<li>Security and compliance teams enforcing locality<\/li>\n<li>Data engineering and ML engineering teams running edge pipelines<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Workloads<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Data capture + pre-processing (ETL at the edge)<\/li>\n<li>Video analytics and sensor fusion<\/li>\n<li>Local web apps and APIs for field operations<\/li>\n<li>Edge inference (ML model scoring)<\/li>\n<li>Local caching, buffering, and store-and-forward pipelines<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Architectures<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Edge + cloud synchronization<\/strong><\/li>\n<li><strong>Hub-and-spoke<\/strong>: multiple edge devices \u2192 one OCI region<\/li>\n<li><strong>Edge islands<\/strong>: many disconnected sites with periodic sync windows<\/li>\n<li><strong>Secure enclave edge<\/strong>: air-gapped or tightly controlled boundary with staged transfers (where supported)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Real-world deployment contexts<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Remote sites with satellite internet<\/li>\n<li>Temporary event sites with unreliable connectivity<\/li>\n<li>Secure labs with limited egress<\/li>\n<li>Vehicles\/vessels where connectivity is intermittent<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Production vs dev\/test usage<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Production<\/strong>: mission-critical processing, on-site operations, local dashboards, controlled sync<\/li>\n<li><strong>Dev\/test<\/strong>: validate offline workflows, edge packaging, and data transfer patterns before scaling out<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">5. Top Use Cases and Scenarios<\/h2>\n\n\n\n<p>Below are realistic use cases aligned with Edge Cloud constraints. Exact feasibility depends on what <strong>Roving Edge Classic<\/strong> supports in your tenancy\/device SKU\u2014<strong>verify in official docs<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1) Offline data acquisition and local validation<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> Raw data is generated in a remote site with no reliable WAN.<\/li>\n<li><strong>Why it fits:<\/strong> Local storage + compute enables validation and cleaning immediately.<\/li>\n<li><strong>Example:<\/strong> A remote research team collects sensor datasets daily; Roving Edge Classic runs scripts to validate schema, remove corrupt files, and produce a daily summary report.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2) Store-and-forward IoT ingestion<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> Devices produce telemetry continuously; WAN is intermittent.<\/li>\n<li><strong>Why it fits:<\/strong> Edge buffering prevents data loss; later sync forwards results to OCI.<\/li>\n<li><strong>Example:<\/strong> A wind farm buffers turbine telemetry on-site, aggregates hourly metrics, and syncs only aggregates to OCI when the link is available.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">3) Edge video analytics (bandwidth reduction)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> Uploading raw video to cloud is too expensive or impossible.<\/li>\n<li><strong>Why it fits:<\/strong> Edge inference extracts events\/metadata; upload only clips or metadata.<\/li>\n<li><strong>Example:<\/strong> A construction site processes camera streams locally, flags safety incidents, and uploads only incident clips to OCI for review.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">4) Shipboard workloads (maritime)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> A vessel needs on-board analytics and local applications.<\/li>\n<li><strong>Why it fits:<\/strong> Local compute works at sea; sync happens at port or via satellite windows.<\/li>\n<li><strong>Example:<\/strong> A shipping company runs local container tracking and engine telemetry analysis on the ship, syncing summaries to OCI when bandwidth allows.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">5) Remote healthcare or mobile clinics (where permitted)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> Patient data must remain local; connectivity is poor.<\/li>\n<li><strong>Why it fits:<\/strong> Local processing and data residency; controlled upload of anonymized results.<\/li>\n<li><strong>Example:<\/strong> A mobile clinic processes imaging locally and uploads only anonymized findings.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">6) Industrial site \u201clocal API\u201d for operations<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> Operators need reliable apps even when WAN is down.<\/li>\n<li><strong>Why it fits:<\/strong> Host local web apps and APIs on the device.<\/li>\n<li><strong>Example:<\/strong> A factory hosts a local maintenance dashboard that integrates with on-prem PLC data.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">7) Edge ML inference with periodic model updates<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> Inference must run locally; model training occurs in cloud.<\/li>\n<li><strong>Why it fits:<\/strong> Push model artifacts to edge; run inference offline.<\/li>\n<li><strong>Example:<\/strong> An agriculture company trains a crop disease model in OCI and deploys the model to Roving Edge Classic for field scoring.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">8) Compliance-driven local processing (raw data stays on-site)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> Regulations prohibit moving raw data off-site.<\/li>\n<li><strong>Why it fits:<\/strong> Process raw data locally; export only permitted outputs.<\/li>\n<li><strong>Example:<\/strong> A regulated lab runs analysis locally and exports only aggregated statistics.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">9) Disaster recovery \/ continuity at remote sites<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> Regional connectivity failures disrupt operations.<\/li>\n<li><strong>Why it fits:<\/strong> Edge device keeps minimal services running during outages.<\/li>\n<li><strong>Example:<\/strong> A remote depot continues running local inventory and dispatch apps during an ISP outage.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">10) Content ingest and pre-processing for media production<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> On-location footage is huge; upload time is too long.<\/li>\n<li><strong>Why it fits:<\/strong> Transcode\/proxy generation locally; upload proxies first.<\/li>\n<li><strong>Example:<\/strong> A film crew generates proxies locally for editing; uploads proxies daily and full-resolution later.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">11) Secure staging for data transfers<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> Data must be staged, scanned, and approved before entering OCI.<\/li>\n<li><strong>Why it fits:<\/strong> Local processing allows scanning, hashing, and DLP checks prior to upload.<\/li>\n<li><strong>Example:<\/strong> A security team runs malware scanning and integrity hashing on-site and uploads signed manifests to OCI.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">12) Multi-site replication of a \u201cfield kit\u201d environment<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> Need repeatable edge stacks across multiple sites.<\/li>\n<li><strong>Why it fits:<\/strong> Standardized device-based deployments.<\/li>\n<li><strong>Example:<\/strong> A telecom provider deploys identical edge services to multiple remote base stations.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">6. Core Features<\/h2>\n\n\n\n<p>Because \u201cClassic\u201d can differ from newer generations, treat this list as the <strong>core, commonly expected feature areas<\/strong> for Roving Edge Classic and <strong>confirm exact support in official docs<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Feature 1: Portable edge appliance delivered to your site<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>What it does:<\/strong> Provides physical compute and storage resources locally.<\/li>\n<li><strong>Why it matters:<\/strong> Enables cloud-like workloads without a full data center build-out.<\/li>\n<li><strong>Practical benefit:<\/strong> You can deploy quickly at remote sites.<\/li>\n<li><strong>Limitations\/caveats:<\/strong> Physical logistics, lead time, custody, and on-site power\/networking are required.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Feature 2: Local compute for edge workloads<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>What it does:<\/strong> Runs applications close to where data is produced.<\/li>\n<li><strong>Why it matters:<\/strong> Reduces latency and dependency on WAN connectivity.<\/li>\n<li><strong>Practical benefit:<\/strong> Supports offline operations and local APIs.<\/li>\n<li><strong>Limitations\/caveats:<\/strong> Hardware capacity is finite; supported OS\/images and virtualization features may be constrained on Classic.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Feature 3: Local storage for buffering and processing<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>What it does:<\/strong> Stores raw and processed data on-device.<\/li>\n<li><strong>Why it matters:<\/strong> Avoids WAN transfer bottlenecks; supports disconnected workflows.<\/li>\n<li><strong>Practical benefit:<\/strong> You can retain raw datasets locally and export only derived results.<\/li>\n<li><strong>Limitations\/caveats:<\/strong> Storage is limited to device capacity; implement retention policies.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Feature 4: Edge networking constructs<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>What it does:<\/strong> Enables local segmentation (subnets) and controlled connectivity.<\/li>\n<li><strong>Why it matters:<\/strong> Separates workloads, limits blast radius, and supports secure access.<\/li>\n<li><strong>Practical benefit:<\/strong> You can expose only what is necessary to local clients.<\/li>\n<li><strong>Limitations\/caveats:<\/strong> Advanced networking (BGP, complex routing, service gateways) may differ from OCI regions; verify Classic networking features.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Feature 5: Fleet lifecycle management via OCI<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>What it does:<\/strong> Supports ordering\/provisioning, association to compartments, and management.<\/li>\n<li><strong>Why it matters:<\/strong> Central governance and repeatability across many sites.<\/li>\n<li><strong>Practical benefit:<\/strong> Helps platform teams manage multiple devices consistently.<\/li>\n<li><strong>Limitations\/caveats:<\/strong> Offline periods may limit telemetry\/control; plan operational processes.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Feature 6: Data transfer\/synchronization patterns<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>What it does:<\/strong> Moves data between edge and OCI when connectivity exists.<\/li>\n<li><strong>Why it matters:<\/strong> Edge is rarely the final destination; OCI region is typically where durable storage, analytics, and long-term retention live.<\/li>\n<li><strong>Practical benefit:<\/strong> Enables \u201cprocess local, retain central\u201d workflows.<\/li>\n<li><strong>Limitations\/caveats:<\/strong> Sync bandwidth windows can be small; implement incremental transfer, compression, and batching.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Feature 7: Security aligned to OCI concepts (IAM, compartments)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>What it does:<\/strong> Uses Oracle Cloud identity governance patterns for access and separation.<\/li>\n<li><strong>Why it matters:<\/strong> Consistency with existing OCI security operations.<\/li>\n<li><strong>Practical benefit:<\/strong> Easier to operationalize than bespoke edge stacks.<\/li>\n<li><strong>Limitations\/caveats:<\/strong> Exact IAM integration model for Classic (local accounts vs OCI IAM federation) should be verified.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Feature 8: Observability hooks (logs\/metrics\/events)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>What it does:<\/strong> Enables monitoring of device and workloads.<\/li>\n<li><strong>Why it matters:<\/strong> Edge operations fail without visibility.<\/li>\n<li><strong>Practical benefit:<\/strong> Faster troubleshooting and better reliability.<\/li>\n<li><strong>Limitations\/caveats:<\/strong> Offline operation may require local log retention and later export to OCI Logging\/Monitoring; verify Classic support.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">7. Architecture and How It Works<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">High-level service architecture<\/h3>\n\n\n\n<p>Roving Edge Classic extends Oracle Cloud into the field:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Control plane (OCI tenancy):<\/strong> where you request\/provision devices and define governance.<\/li>\n<li><strong>Edge plane (device):<\/strong> where workloads run and data is stored locally.<\/li>\n<li><strong>Sync\/transfer plane:<\/strong> mechanisms to move selected data to\/from OCI regions.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Request\/data\/control flow (typical)<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>An admin provisions Roving Edge Classic in OCI (compartment, policies, order).<\/li>\n<li>Device is shipped and activated on-site.<\/li>\n<li>Workloads are deployed to the device and serve local users\/systems.<\/li>\n<li>Data is collected and processed locally.<\/li>\n<li>During connectivity windows, data is synchronized to OCI Object Storage or other OCI services, and results are consumed centrally.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Integrations with related services (common patterns)<\/h3>\n\n\n\n<p>Even if Classic has a narrower on-device service set, edge solutions usually integrate with these OCI services in the region:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Object Storage<\/strong> for durable central storage and replication targets<\/li>\n<li><strong>Logging<\/strong> \/ <strong>Monitoring<\/strong> for centralized observability (export logs when connected)<\/li>\n<li><strong>Vault<\/strong> for secrets and key management (store centrally; deploy secrets carefully to edge)<\/li>\n<li><strong>IAM<\/strong> for access governance<\/li>\n<li><strong>Events \/ Notifications<\/strong> for alerting pipelines (when connected)<\/li>\n<li><strong>Data Flow \/ Analytics \/ AI<\/strong> services in the region for heavy processing (post-sync)<\/li>\n<\/ul>\n\n\n\n<p>Verify which integrations are explicitly supported for <strong>Roving Edge Classic<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Dependency services<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>OCI IAM (users, groups, policies)<\/li>\n<li>Networking (VCNs\/subnets\/security rules) in the local edge environment (and possibly in region for centralized services)<\/li>\n<li>Optional: OCI Object Storage \/ Vault \/ Logging in the region<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Security\/authentication model (conceptual)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Administrative access is governed by OCI IAM policies.<\/li>\n<li>On-device access typically uses:<\/li>\n<li>SSH keys for VM access<\/li>\n<li>Local network controls (firewalls\/security lists)<\/li>\n<li>Device management authentication tied to OCI identity (verify Classic)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Networking model (conceptual)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A local edge network connects:<\/li>\n<li>Device management interface<\/li>\n<li>Workload interface(s)<\/li>\n<li>On-site clients and systems<\/li>\n<li>Optional uplink to the internet\/OCI for synchronization.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Monitoring\/logging\/governance considerations<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Logging:<\/strong> store locally during offline periods; export to OCI Logging when connected (or to Object Storage for later ingestion).<\/li>\n<li><strong>Monitoring:<\/strong> collect local metrics; forward when possible.<\/li>\n<li><strong>Governance:<\/strong> use compartments, tags, naming standards; document physical location and custody.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Simple architecture diagram (Mermaid)<\/h3>\n\n\n\n<pre><code class=\"language-mermaid\">flowchart LR\n  subgraph Site[\"Remote Site \/ Edge Location\"]\n    Users[\"Local users\/systems\"]\n    RE[\"Roving Edge Classic device\"]\n    App[\"Edge workloads (VMs\/apps)\"]\n    Users --&gt; App\n    App --&gt; RE\n  end\n\n  subgraph OCI[\"Oracle Cloud (OCI Region)\"]\n    OS[\"Object Storage\"]\n    Mon[\"Monitoring\/Logging (optional)\"]\n  end\n\n  RE &lt;-. intermittent sync .-&gt; OS\n  RE &lt;-. telemetry when connected .-&gt; Mon\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Production-style architecture diagram (Mermaid)<\/h3>\n\n\n\n<pre><code class=\"language-mermaid\">flowchart TB\n  subgraph EdgeSite[\"Edge Site\"]\n    Sensors[\"Sensors\/Cameras\/OT systems\"]\n    LAN[\"Site LAN\"]\n    subgraph REC[\"Roving Edge Classic\"]\n      VCN[\"Local network segmentation\\n(subnets\/security rules)\"]\n      VM1[\"Ingest VM\"]\n      VM2[\"Processing VM\"]\n      VM3[\"API\/UI VM\"]\n      Store[\"Local storage\\n(raw + processed)\"]\n      VM1 --&gt; Store\n      VM2 --&gt; Store\n      VM3 --&gt; VM2\n    end\n    Sensors --&gt; LAN --&gt; VM1\n    LAN --&gt; VM3\n  end\n\n  subgraph OCIRegion[\"OCI Region\"]\n    Bucket[\"Object Storage bucket\\n(raw archives \/ results)\"]\n    Vault[\"OCI Vault\\n(keys\/secrets)\"]\n    Log[\"Logging\/Monitoring\\n(central visibility)\"]\n    Pipeline[\"Downstream analytics\\n(ETL\/AI\/BI)\"]\n  end\n\n  Store &lt;-. scheduled exports .-&gt; Bucket\n  VM2 &lt;-. model artifacts .-&gt; Bucket\n  REC &lt;-. logs\/metrics when connected .-&gt; Log\n  Vault &lt;-. secrets distribution process .-&gt; REC\n  Bucket --&gt; Pipeline\n<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">8. Prerequisites<\/h2>\n\n\n\n<p>Because Roving Edge Classic includes physical device provisioning, prerequisites include both cloud and on-site requirements.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Oracle Cloud tenancy requirements<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>An active <strong>Oracle Cloud (OCI) tenancy<\/strong> with billing enabled.<\/li>\n<li>Access to the <strong>Roving Edge Classic<\/strong> service in your tenancy (service availability varies).<\/li>\n<li>A compartment strategy to isolate edge resources.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Permissions \/ IAM roles<\/h3>\n\n\n\n<p>You typically need permissions to:\n&#8211; Manage the Roving Edge Classic service (device\/fleet resources)\n&#8211; Manage networking resources used by edge workloads\n&#8211; Manage compute instances\/images if supported on Classic\n&#8211; Manage Object Storage buckets (for synchronization patterns)<\/p>\n\n\n\n<p>In OCI, permissions are granted via policies. Exact policy verbs and resource types for <strong>Roving Edge Classic<\/strong> should be taken from official docs. If unsure:\n&#8211; Use the OCI Console policy builder where available, or\n&#8211; <strong>Verify in official docs<\/strong> for \u201cRoving Edge\u201d policy examples.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Billing requirements<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A paid tenancy (Roving Edge offerings are generally not Free Tier).<\/li>\n<li>Purchase\/rental and shipping costs may apply (model-dependent).<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Tools you may need<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>OCI Console access<\/li>\n<li>SSH client (OpenSSH)<\/li>\n<li>Optional: OCI CLI for transferring logs\/results to Object Storage<br\/>\n  OCI CLI docs: https:\/\/docs.oracle.com\/en-us\/iaas\/Content\/API\/Concepts\/cliconcepts.htm<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Region availability<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Device ordering and backend management availability vary by country\/region.<\/li>\n<li>Data sync target regions must be selected based on your compliance and latency needs.<\/li>\n<li><strong>Verify Roving Edge Classic availability<\/strong> in the OCI Console and official docs.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Quotas\/limits<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Limits may exist on number of devices per tenancy, storage per device, or compute resources.<\/li>\n<li><strong>Verify limits<\/strong> in the service limits section of the OCI Console and the Roving Edge documentation.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">On-site prerequisites (often overlooked)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Physical space, power, environmental requirements (temperature, dust, vibration)<\/li>\n<li>Secure storage and custody process<\/li>\n<li>Network connectivity (LAN configuration, IP plan, optional internet uplink)<\/li>\n<li>Personnel to receive shipment and perform on-site activation steps<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">9. Pricing \/ Cost<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Pricing model (what to expect)<\/h3>\n\n\n\n<p>Oracle pricing for edge appliances is usually driven by a combination of:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Device rental \/ subscription fee<\/strong> (time-based)<\/li>\n<li><strong>Device model\/SKU<\/strong> (capacity: CPU\/RAM\/storage; sometimes ruggedization)<\/li>\n<li><strong>Shipping\/handling<\/strong> and potentially return shipping<\/li>\n<li><strong>Support level<\/strong> (if offered)<\/li>\n<li><strong>Data transfer costs<\/strong> in OCI when you upload to an OCI region (Object Storage ingress is often free in many clouds, but egress, inter-region transfer, and internet egress can be chargeable\u2014verify for OCI)<\/li>\n<li><strong>Regional OCI service costs<\/strong> for anything you store\/process in the region (Object Storage, Logging, AI services, etc.)<\/li>\n<\/ul>\n\n\n\n<p>Because edge appliance pricing and availability can be contract-specific, <strong>do not assume a universal public hourly rate<\/strong>. Use official pricing pages and your Oracle sales agreement if applicable.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Official pricing references<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Oracle Cloud Pricing: https:\/\/www.oracle.com\/cloud\/pricing\/<\/li>\n<li>OCI Cost Estimator (calculator): https:\/\/www.oracle.com\/cloud\/costestimator.html<\/li>\n<li>OCI Price List (service-specific): https:\/\/www.oracle.com\/cloud\/price-list\/<\/li>\n<\/ul>\n\n\n\n<p>For Roving Edge Classic specifically, search within the official price list for \u201cRoving Edge\u201d offerings. If you can\u2019t find a public SKU, it may be quoted\/contracted\u2014<strong>verify in official pricing<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Pricing dimensions (typical)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Per-device per-month<\/strong> (or per-day) pricing<\/li>\n<li><strong>Optional add-ons<\/strong> (support, extra storage, accessories)<\/li>\n<li><strong>OCI region consumption<\/strong> for centralized services you use alongside the device<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Free tier<\/h3>\n\n\n\n<p>Roving Edge Classic is generally not positioned as Free Tier. Treat it as <strong>paid<\/strong> unless Oracle explicitly offers a promotion\u2014<strong>verify in official docs<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Primary cost drivers<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Number of devices (fleet size)<\/li>\n<li>Device capacity class (CPU\/RAM\/storage)<\/li>\n<li>Duration (how long you keep devices deployed)<\/li>\n<li>Logistics (shipping frequency, returns, spares)<\/li>\n<li>Data volumes moved to OCI region (storage + egress patterns)<\/li>\n<li>On-site operational overhead (hands-on staff, secure storage)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Hidden or indirect costs<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>On-site network equipment (switches, firewalls)<\/li>\n<li>Physical security controls (locks, cages, tamper evidence)<\/li>\n<li>Field support travel<\/li>\n<li>Replacement\/insurance (if your agreement places responsibility on you)<\/li>\n<li>Building robust sync pipelines and data governance<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Network\/data transfer implications<\/h3>\n\n\n\n<p>Common cost pitfalls:\n&#8211; Uploading \u201ceverything\u201d to the region instead of pre-processing at the edge\n&#8211; Repeatedly transferring large artifacts (images, datasets) without delta\/incremental sync\n&#8211; Internet egress from OCI to external consumers (dashboards, partners)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How to optimize cost<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Reduce data volume: filter, compress, aggregate locally.<\/li>\n<li>Export only \u201chigh value\u201d data: metadata, anomalies, and summaries.<\/li>\n<li>Plan transfer windows and batch operations.<\/li>\n<li>Use lifecycle policies in OCI Object Storage (e.g., archive tiers) for long retention.<\/li>\n<li>Standardize device images and automation to reduce operational effort per site.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Example low-cost starter estimate (model-based, no fabricated numbers)<\/h3>\n\n\n\n<p>A realistic starter approach is:\n&#8211; 1 device for 1\u20133 months for a pilot\n&#8211; Minimal OCI region usage: one Object Storage bucket + basic logs upload\n&#8211; Limited data transfer: export only daily summaries<\/p>\n\n\n\n<p>Because device pricing and shipping vary by geography and SKU, <strong>get the device monthly fee from the official price list or your Oracle quote<\/strong>, then add:\n&#8211; Object Storage GB-month (region)\n&#8211; Requests (typically small)\n&#8211; Internet egress (if any)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Example production cost considerations<\/h3>\n\n\n\n<p>In production, budgets often include:\n&#8211; Primary + spare devices (for high-availability at the operational level)\n&#8211; Central OCI analytics pipeline costs\n&#8211; Monitoring\/log retention costs\n&#8211; Security tooling and audits\n&#8211; Periodic device refresh cycle<\/p>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">10. Step-by-Step Hands-On Tutorial<\/h2>\n\n\n\n<p>This lab is designed to be <strong>realistic and executable<\/strong> for teams that have access to <strong>Roving Edge Classic<\/strong> hardware. Where a step depends on device-specific UI\/endpoints, the lab tells you exactly what to verify in official docs rather than inventing values.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Objective<\/h3>\n\n\n\n<p>Deploy a simple <strong>edge web service<\/strong> on <strong>Roving Edge Classic<\/strong> that:\n1. Serves a local webpage to on-site users (works offline).\n2. Periodically exports access logs to <strong>OCI Object Storage<\/strong> when connectivity exists.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Lab Overview<\/h3>\n\n\n\n<p>You will:\n1. Prepare an OCI compartment, SSH key, and an Object Storage bucket (region side).\n2. Provision\/associate a Roving Edge Classic device to your compartment (ordering step).\n3. On-site: activate the device, configure local networking, and create a VM workload.\n4. Deploy NGINX via cloud-init and serve a test page.\n5. Validate local access.\n6. Export logs to OCI Object Storage when connected.\n7. Clean up.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 1: Create a compartment and baseline IAM access (OCI region)<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>In the OCI Console, go to <strong>Identity &amp; Security \u2192 Compartments<\/strong>.<\/li>\n<li>Create a compartment, for example:\n   &#8211; Name: <code>edge-roving-classic-lab<\/code>\n   &#8211; Description: <code>Lab compartment for Roving Edge Classic<\/code><\/li>\n<\/ol>\n\n\n\n<p><strong>Expected outcome:<\/strong> You have a dedicated compartment to isolate edge resources and policies.<\/p>\n\n\n\n<p><strong>Verification:<\/strong>\n&#8211; Compartment appears in the list.\n&#8211; You can switch to it from the compartment selector.<\/p>\n\n\n\n<blockquote>\n<p>IAM note: Roving Edge Classic requires specific policy statements. Use the official Roving Edge Classic documentation to create the required policies (for example: permissions to manage roving edge resources and any dependent compute\/network\/storage resources). If you\u2019re not a tenancy admin, coordinate with your IAM admin.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Step 2: Generate an SSH key pair for VM access<\/h3>\n\n\n\n<p>On your workstation:<\/p>\n\n\n\n<pre><code class=\"language-bash\">ssh-keygen -t ed25519 -f ~\/.ssh\/roving-edge-classic-lab -C \"roving-edge-classic-lab\"\n<\/code><\/pre>\n\n\n\n<p>This creates:\n&#8211; Private key: <code>~\/.ssh\/roving-edge-classic-lab<\/code>\n&#8211; Public key: <code>~\/.ssh\/roving-edge-classic-lab.pub<\/code><\/p>\n\n\n\n<p><strong>Expected outcome:<\/strong> You have an SSH key ready to inject into the edge VM.<\/p>\n\n\n\n<p><strong>Verification:<\/strong><\/p>\n\n\n\n<pre><code class=\"language-bash\">ls -l ~\/.ssh\/roving-edge-classic-lab*\ncat ~\/.ssh\/roving-edge-classic-lab.pub\n<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Step 3: Create an OCI Object Storage bucket for exports (OCI region)<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>In OCI Console, switch to your target region (choose the region you will use for central storage).<\/li>\n<li>Go to <strong>Storage \u2192 Object Storage &amp; Archive Storage \u2192 Buckets<\/strong>.<\/li>\n<li>Ensure you are in compartment: <code>edge-roving-classic-lab<\/code>.<\/li>\n<li>Create bucket:\n   &#8211; Bucket name: <code>roving-edge-classic-lab-logs-&lt;unique-suffix&gt;<\/code>\n   &#8211; Default storage tier is fine for the lab.<\/li>\n<\/ol>\n\n\n\n<p><strong>Expected outcome:<\/strong> A bucket exists to receive logs when your edge device has connectivity.<\/p>\n\n\n\n<p><strong>Verification:<\/strong>\n&#8211; Bucket shows as \u201cActive\u201d.\n&#8211; You can open it and see it is empty.<\/p>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Step 4: Create a minimal cloud-init script for NGINX<\/h3>\n\n\n\n<p>Create a file named <code>cloud-init-nginx.yaml<\/code>:<\/p>\n\n\n\n<pre><code class=\"language-yaml\">#cloud-config\npackage_update: true\npackages:\n  - nginx\n\nwrite_files:\n  - path: \/var\/www\/html\/index.html\n    permissions: '0644'\n    content: |\n      &lt;html&gt;\n      &lt;head&gt;&lt;title&gt;Roving Edge Classic Lab&lt;\/title&gt;&lt;\/head&gt;\n      &lt;body&gt;\n      &lt;h1&gt;Hello from Roving Edge Classic&lt;\/h1&gt;\n      &lt;p&gt;This page is served locally at the edge.&lt;\/p&gt;\n      &lt;\/body&gt;\n      &lt;\/html&gt;\n\nruncmd:\n  - systemctl enable nginx\n  - systemctl restart nginx\n<\/code><\/pre>\n\n\n\n<p><strong>Expected outcome:<\/strong> You have a cloud-init script ready to bootstrap a VM.<\/p>\n\n\n\n<p><strong>Verification:<\/strong>\n&#8211; File exists and starts with <code>#cloud-config<\/code>.<\/p>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Step 5: Provision\/order and associate the Roving Edge Classic device (OCI Console)<\/h3>\n\n\n\n<p>Because Roving Edge Classic is hardware-backed, this step is partly administrative and depends on availability.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>In OCI Console, locate <strong>Roving Edge Classic<\/strong> under the Edge\/Hybrid services area (navigation can vary).<\/li>\n<li>Start a new <strong>device request \/ order<\/strong> (naming varies).<\/li>\n<li>Choose:\n   &#8211; Compartment: <code>edge-roving-classic-lab<\/code>\n   &#8211; Shipping details (your location)\n   &#8211; Device model\/SKU (based on your needs and availability)<\/li>\n<li>Submit the request.<\/li>\n<\/ol>\n\n\n\n<p><strong>Expected outcome:<\/strong> A device order\/request is created and associated with your compartment.<\/p>\n\n\n\n<p><strong>Verification:<\/strong>\n&#8211; The device request shows a lifecycle state such as Submitted\/Provisioning\/Shipping (exact states vary).\n&#8211; You can view order details.<\/p>\n\n\n\n<blockquote>\n<p>If you do not see Roving Edge Classic in your console: availability may be restricted, or your tenancy may use a different \u201cRoving Edge\u201d generation name. <strong>Verify in official Oracle documentation and with your Oracle account team.<\/strong><\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Step 6: On-site activation and local network setup (device arrival)<\/h3>\n\n\n\n<p>When the device arrives:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\n<p>Follow the official \u201cGetting Started\u201d steps for <strong>Roving Edge Classic<\/strong> to:\n   &#8211; Unbox and power on\n   &#8211; Connect management\/workload ports to your site LAN (as documented)\n   &#8211; Access the local management UI (URL\/IP is device-specific\u2014<strong>do not guess; follow the device guide<\/strong>)\n   &#8211; Complete initial admin setup and time configuration<\/p>\n<\/li>\n<li>\n<p>Configure the local network:\n   &#8211; Decide the subnet for workloads (example: <code>192.168.50.0\/24<\/code>)\n   &#8211; Decide which client machine will test access (example laptop: <code>192.168.50.10<\/code>)<\/p>\n<\/li>\n<\/ol>\n\n\n\n<p><strong>Expected outcome:<\/strong> The device is reachable on your site network, and you can access its management interface.<\/p>\n\n\n\n<p><strong>Verification:<\/strong>\n&#8211; From your laptop (on the same LAN\/VLAN), ping the documented management IP (if ICMP is allowed).\n&#8211; Log in to the device management UI successfully.<\/p>\n\n\n\n<p><strong>Common error:<\/strong> No connectivity due to VLAN mismatch or port selection.<br\/>\n<strong>Fix:<\/strong> Validate cabling, switch VLAN configuration, and the device port mapping per the official guide.<\/p>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Step 7: Create a local network\/subnet and security rules on Roving Edge Classic<\/h3>\n\n\n\n<p>In the Roving Edge Classic management interface (or the associated OCI console workflow for edge resources\u2014depends on Classic implementation):<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Create (or select) a local network construct analogous to:\n   &#8211; VCN \/ virtual network\n   &#8211; Subnet for workloads<\/li>\n<li>Add inbound rules to allow:\n   &#8211; TCP 22 from your admin IP (SSH)\n   &#8211; TCP 80 from your on-site LAN (HTTP)<\/li>\n<\/ol>\n\n\n\n<p><strong>Expected outcome:<\/strong> The edge network exists and allows HTTP\/SSH to the VM.<\/p>\n\n\n\n<p><strong>Verification:<\/strong>\n&#8211; Network and subnet show as \u201cAvailable\u201d.\n&#8211; Security rules list includes TCP\/22 and TCP\/80.<\/p>\n\n\n\n<blockquote>\n<p>Security note: For a lab, you may open TCP\/80 to your LAN range. For production, restrict to only required source ranges.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Step 8: Create a VM instance on Roving Edge Classic and inject cloud-init<\/h3>\n\n\n\n<p>Create a compute instance on the device (VM creation steps are similar conceptually to OCI Compute but the UI can differ on Classic):<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Select the edge device\/target<\/li>\n<li>Choose an OS image supported on Classic (for example, an Ubuntu image if available\u2014<strong>verify supported images<\/strong>)<\/li>\n<li>Paste the public SSH key from <code>~\/.ssh\/roving-edge-classic-lab.pub<\/code><\/li>\n<li>Add the <code>cloud-init-nginx.yaml<\/code> content as user-data (cloud-init)<\/li>\n<li>Attach the instance to the workload subnet<\/li>\n<li>Assign a private IP (static or dynamic)<\/li>\n<\/ul>\n\n\n\n<p><strong>Expected outcome:<\/strong> VM becomes \u201cRunning\u201d, with NGINX installed and serving content.<\/p>\n\n\n\n<p><strong>Verification:<\/strong>\n&#8211; Instance lifecycle state: Running\n&#8211; Instance has an IP address in your workload subnet<\/p>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Step 9: Test local access to the web service (offline-capable)<\/h3>\n\n\n\n<p>From your laptop on the same LAN:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>SSH to the VM:<\/li>\n<\/ol>\n\n\n\n<pre><code class=\"language-bash\">ssh -i ~\/.ssh\/roving-edge-classic-lab ubuntu@&lt;VM_PRIVATE_IP&gt;\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>Check NGINX status:<\/li>\n<\/ol>\n\n\n\n<pre><code class=\"language-bash\">sudo systemctl status nginx --no-pager\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>From the laptop, fetch the homepage:<\/li>\n<\/ol>\n\n\n\n<pre><code class=\"language-bash\">curl http:\/\/&lt;VM_PRIVATE_IP&gt;\/\n<\/code><\/pre>\n\n\n\n<p><strong>Expected outcome:<\/strong>\n&#8211; SSH works.\n&#8211; NGINX is active.\n&#8211; <code>curl<\/code> returns the \u201cHello from Roving Edge Classic\u201d HTML page.<\/p>\n\n\n\n<p><strong>Common errors and fixes<\/strong>\n&#8211; <strong>SSH timeout:<\/strong> security rule missing for TCP\/22, wrong subnet, or wrong username.\n  &#8211; Fix: confirm security rule, route\/local LAN, and image username (<code>ubuntu<\/code>, <code>opc<\/code>, etc. depends on image).\n&#8211; <strong>HTTP blocked:<\/strong> missing TCP\/80 rule.\n  &#8211; Fix: update security rules and any host firewall (UFW\/iptables).<\/p>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Step 10: Export access logs to OCI Object Storage (when connected)<\/h3>\n\n\n\n<p>This step assumes the edge environment has a route to the internet\/OCI and the VM can authenticate to OCI to upload logs.<\/p>\n\n\n\n<p>Two common approaches:<\/p>\n\n\n\n<p><strong>Approach A (preferred for many teams): Use OCI CLI with a short-lived credential process<\/strong>\n&#8211; Install OCI CLI on the VM (or on an on-site jump host).\n&#8211; Configure authentication (API key or instance principal equivalent if supported\u2014<strong>verify what Classic supports<\/strong>).\n&#8211; Upload logs to the bucket.<\/p>\n\n\n\n<p><strong>Approach B: Stage logs locally and upload from a connected workstation<\/strong>\n&#8211; Copy logs from VM to your laptop via SCP.\n&#8211; Upload to Object Storage using OCI CLI from your laptop.<\/p>\n\n\n\n<p>Below is an example using OCI CLI from a connected workstation (often easiest for labs):<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Copy logs from VM to your laptop:<\/li>\n<\/ol>\n\n\n\n<pre><code class=\"language-bash\">scp -i ~\/.ssh\/roving-edge-classic-lab ubuntu@&lt;VM_PRIVATE_IP&gt;:\/var\/log\/nginx\/access.log .\/access.log\n<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>Upload to Object Storage from your laptop (OCI CLI must be configured):<\/li>\n<\/ol>\n\n\n\n<pre><code class=\"language-bash\">oci os object put \\\n  --bucket-name roving-edge-classic-lab-logs-&lt;unique-suffix&gt; \\\n  --name nginx-access-$(date +%F-%H%M%S).log \\\n  --file .\/access.log\n<\/code><\/pre>\n\n\n\n<p><strong>Expected outcome:<\/strong> A new log object appears in the OCI bucket.<\/p>\n\n\n\n<p><strong>Verification:<\/strong>\n&#8211; In OCI Console \u2192 your bucket \u2192 Objects: the uploaded log file is listed.<\/p>\n\n\n\n<p><strong>Common errors and fixes<\/strong>\n&#8211; <strong>403\/NotAuthorized:<\/strong> missing IAM policy for Object Storage.\n  &#8211; Fix: add policy allowing the user\/group to <code>manage object-family<\/code> (scope to the compartment\/bucket as appropriate).\n&#8211; <strong>Network errors:<\/strong> no internet path from laptop or VM.\n  &#8211; Fix: validate corporate proxy, firewall rules, DNS.<\/p>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Validation<\/h3>\n\n\n\n<p>You have validated:\n&#8211; Local edge service works without reliance on an OCI region (HTTP served locally).\n&#8211; You can export artifacts to OCI Object Storage when connectivity exists.<\/p>\n\n\n\n<p>Use this checklist:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>[ ] VM is running on Roving Edge Classic<\/li>\n<li>[ ] <code>curl http:\/\/&lt;VM_PRIVATE_IP&gt;\/<\/code> returns expected HTML<\/li>\n<li>[ ] NGINX logs exist at <code>\/var\/log\/nginx\/access.log<\/code><\/li>\n<li>[ ] At least one log file is uploaded to the OCI Object Storage bucket<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Troubleshooting<\/h3>\n\n\n\n<p>Common troubleshooting paths:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\n<p><strong>Can\u2019t access the device management UI<\/strong>\n   &#8211; Check LAN\/VLAN configuration\n   &#8211; Confirm you are connected to the documented management port\n   &#8211; Confirm your client IP settings\n   &#8211; Follow official Roving Edge Classic activation docs<\/p>\n<\/li>\n<li>\n<p><strong>VM boots but cloud-init didn\u2019t run<\/strong>\n   &#8211; Verify cloud-init is supported by the image\n   &#8211; On the VM:\n     <code>bash\n     cloud-init status --long || true\n     sudo tail -n 200 \/var\/log\/cloud-init.log<\/code>\n   &#8211; Fix YAML indentation and ensure <code>#cloud-config<\/code> header is present<\/p>\n<\/li>\n<li>\n<p><strong>HTTP works locally but uploads fail<\/strong>\n   &#8211; Validate OCI CLI configuration on the machine doing the upload\n   &#8211; Confirm IAM policy and bucket name\n   &#8211; Check DNS\/proxy configuration<\/p>\n<\/li>\n<li>\n<p><strong>Time drift causes TLS\/auth problems<\/strong>\n   &#8211; Ensure device and VM time are correct (NTP when connected)\n   &#8211; Offline: plan time sync procedures<\/p>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">Cleanup<\/h3>\n\n\n\n<p>Cleanup steps depend on whether you\u2019re ending the lab or continuing to use the device.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\n<p><strong>Terminate the VM<\/strong> (in Roving Edge Classic UI):\n   &#8211; Stop\/terminate the instance.\n   &#8211; Verify it no longer shows as running.<\/p>\n<\/li>\n<li>\n<p><strong>Remove local network rules<\/strong> (optional):\n   &#8211; Remove temporary wide-open security rules.<\/p>\n<\/li>\n<li>\n<p><strong>Delete uploaded objects<\/strong> (OCI region):\n   &#8211; In the Object Storage bucket, delete uploaded logs (or set lifecycle rules for cleanup).<\/p>\n<\/li>\n<li>\n<p><strong>Delete the bucket<\/strong> (if no longer needed):\n   &#8211; Bucket must be empty first.<\/p>\n<\/li>\n<li>\n<p><strong>Device lifecycle actions<\/strong>\n   &#8211; If this was a short pilot, follow official procedures to decommission\/return the device.\n   &#8211; Ensure secure wipe procedures match your compliance requirements.<\/p>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">11. Best Practices<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Architecture best practices<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Design for <strong>disconnection<\/strong> as the default:<\/li>\n<li>Local-first processing and durable local queues<\/li>\n<li>Sync jobs that can resume and retry safely<\/li>\n<li>Treat the edge like a <strong>capacity-constrained region<\/strong>:<\/li>\n<li>Define resource budgets per workload (CPU\/memory\/storage)<\/li>\n<li>Implement data retention and rotation policies<\/li>\n<li>Separate <strong>raw<\/strong> vs <strong>derived<\/strong> datasets:<\/li>\n<li>Keep raw local if needed<\/li>\n<li>Export only derived or compressed data when possible<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">IAM\/security best practices<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use <strong>least privilege<\/strong> policies for:<\/li>\n<li>Device management<\/li>\n<li>Object Storage upload\/download<\/li>\n<li>VM administration<\/li>\n<li>Use per-environment compartments:<\/li>\n<li><code>edge-dev<\/code>, <code>edge-test<\/code>, <code>edge-prod<\/code><\/li>\n<li>Rotate credentials and use short-lived access patterns where supported.<\/li>\n<li>Use SSH keys (no password SSH) and restrict SSH sources.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Cost best practices<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Control data volumes exported to OCI:<\/li>\n<li>Aggregate and compress locally<\/li>\n<li>Schedule exports for low-cost network windows<\/li>\n<li>Plan device utilization:<\/li>\n<li>Avoid underutilized devices sitting idle<\/li>\n<li>Standardize workloads per device and measure headroom<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Performance best practices<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Keep latency-sensitive APIs entirely local.<\/li>\n<li>Use local caching for dependencies that are expensive to fetch over WAN.<\/li>\n<li>Avoid chatty protocols across intermittent links; use batching.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Reliability best practices<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Implement \u201cstore-and-forward\u201d:<\/li>\n<li>Local queues<\/li>\n<li>Idempotent uploads<\/li>\n<li>Checksums and manifests<\/li>\n<li>Keep critical runbooks on-site (offline accessible).<\/li>\n<li>Consider spare devices or rapid replacement plans for critical operations.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Operations best practices<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Centralize configuration as code where possible.<\/li>\n<li>Export logs and metrics periodically to OCI for long-term analysis.<\/li>\n<li>Track physical asset inventory:<\/li>\n<li>Device serial number<\/li>\n<li>Location<\/li>\n<li>Owner\/custodian<\/li>\n<li>Maintenance windows<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Governance\/tagging\/naming best practices<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tag resources with:<\/li>\n<li><code>site<\/code>, <code>country<\/code>, <code>environment<\/code>, <code>owner<\/code>, <code>data-classification<\/code><\/li>\n<li>Use consistent naming:<\/li>\n<li><code>rec-&lt;site&gt;-&lt;env&gt;-vm-&lt;role&gt;<\/code><\/li>\n<li>Document:<\/li>\n<li>Which datasets may leave the site<\/li>\n<li>Which outputs are permitted for sync<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">12. Security Considerations<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Identity and access model<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use OCI IAM to control who can:<\/li>\n<li>Order\/provision devices<\/li>\n<li>Manage device configurations<\/li>\n<li>Create\/modify edge workloads<\/li>\n<li>Export data to OCI services<\/li>\n<\/ul>\n\n\n\n<p>Because Roving Edge Classic may implement local management endpoints, confirm:\n&#8211; Whether authentication is federated with OCI IAM\n&#8211; Whether local break-glass accounts exist and how they\u2019re controlled<\/p>\n\n\n\n<p><strong>Recommendation:<\/strong> Maintain a documented break-glass process with approvals and auditing.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Encryption<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>At-rest encryption on device storage: <strong>verify for Classic<\/strong> (and whether keys are Oracle-managed or customer-managed).<\/li>\n<li>In-transit encryption:<\/li>\n<li>Use TLS for management endpoints and data transfer.<\/li>\n<li>Use SSH for administration.<\/li>\n<\/ul>\n\n\n\n<p>If you need customer-managed keys:\n&#8211; Evaluate integration with <strong>OCI Vault<\/strong> and confirm Classic support and operational constraints.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Network exposure<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Prefer an isolated management VLAN.<\/li>\n<li>Restrict inbound access:<\/li>\n<li>Allow SSH only from a dedicated admin jump host subnet<\/li>\n<li>Allow HTTP\/HTTPS only from on-site clients who need it<\/li>\n<li>If the device has any internet-facing exposure, front it with appropriate network controls (site firewall) and minimize services.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Secrets handling<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Do not hardcode secrets in cloud-init.<\/li>\n<li>Use secret injection patterns appropriate to Classic:<\/li>\n<li>Fetch secrets from OCI Vault during connectivity windows (if supported)<\/li>\n<li>Store sealed secrets locally with strict access controls<\/li>\n<li>Rotate secrets regularly and on staff changes.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Audit\/logging<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Determine what audit logs exist locally and what can be exported to OCI Audit\/Logging.<\/li>\n<li>Store logs locally with rotation; export to OCI periodically.<\/li>\n<li>Ensure logs do not leak sensitive data (PII in access logs, etc.).<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Compliance considerations<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Document:<\/li>\n<li>Data classification and locality requirements<\/li>\n<li>Transfer approvals and sanitization rules<\/li>\n<li>Retention policies both at edge and in OCI region<\/li>\n<li>Ensure physical security controls meet your compliance posture.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Common security mistakes<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Leaving management UI reachable from broad LAN ranges<\/li>\n<li>Wide-open SSH (0.0.0.0\/0 equivalents) on edge networks<\/li>\n<li>No plan for credential rotation during offline operations<\/li>\n<li>Exporting raw sensitive datasets to OCI without governance checks<\/li>\n<li>No physical custody tracking of the device<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Secure deployment recommendations<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use dedicated compartments and strict policies.<\/li>\n<li>Use network segmentation and host-based firewalls.<\/li>\n<li>Encrypt sensitive artifacts and use checksums\/signatures for integrity.<\/li>\n<li>Implement a secure decommission process with data wipe verification.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">13. Limitations and Gotchas<\/h2>\n\n\n\n<p>Because \u201cClassic\u201d is a specific generation, treat these as common edge constraints and verify device-specific details.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Known limitations (typical edge appliance constraints)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Finite capacity:<\/strong> CPU\/RAM\/storage are limited to device hardware.<\/li>\n<li><strong>Service subset:<\/strong> not all OCI services run on the device (Classic may be more limited).<\/li>\n<li><strong>Offline operations:<\/strong> some management\/telemetry features may require connectivity.<\/li>\n<li><strong>Hardware logistics:<\/strong> shipping time, customs, site access, maintenance windows.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Quotas<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Maximum devices per tenancy\/region (varies)<\/li>\n<li>Maximum workloads\/instances per device (varies)<\/li>\n<li>Storage and network interface limits (device-dependent)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Regional constraints<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ordering\/shipping availability differs by geography.<\/li>\n<li>Some compliance regimes require specific handling for cross-border shipments.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Pricing surprises<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Shipping and handling costs<\/li>\n<li>Longer-than-planned device retention (monthly costs accumulate)<\/li>\n<li>OCI region costs for retained data and analytics<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Compatibility issues<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>OS images supported on Classic may be limited.<\/li>\n<li>Some automation assumptions from OCI region may not apply (for example, certain instance metadata behaviors).<\/li>\n<li>Time synchronization issues in disconnected sites can break TLS\/auth.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Operational gotchas<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Lack of on-site runbooks during connectivity loss<\/li>\n<li>No consistent patch window plan for edge VMs<\/li>\n<li>Insufficient local monitoring\/log storage leading to overwritten logs before export<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Migration challenges<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Moving workloads from Classic to newer Roving Edge generations (if Oracle offers) may require:<\/li>\n<li>Image rebuilds<\/li>\n<li>Data export\/import<\/li>\n<li>Re-validation of supported features<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Vendor-specific nuances<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The precise boundary between OCI console management and local device management varies.<\/li>\n<li>Always use the <strong>Roving Edge Classic<\/strong> docs for your tenancy\/version rather than assuming parity with OCI regions.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">14. Comparison with Alternatives<\/h2>\n\n\n\n<p>Roving Edge Classic competes with edge appliance solutions, on-prem stacks, and other hyperscaler edge devices.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Options compared<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Oracle Cloud<\/strong>: Roving Edge Classic (this service)<\/li>\n<li><strong>Oracle Cloud<\/strong>: other hybrid\/edge offerings (for example, Oracle Cloud@Customer or Dedicated Region\u2014verify current names and fit)<\/li>\n<li><strong>AWS<\/strong>: Snowball Edge \/ Outposts (depending on use case)<\/li>\n<li><strong>Microsoft Azure<\/strong>: Azure Stack Edge \/ Azure Local offerings<\/li>\n<li><strong>Google Cloud<\/strong>: Distributed Cloud Edge<\/li>\n<li><strong>Self-managed<\/strong>: rugged servers + virtualization\/Kubernetes + custom sync pipelines<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">Comparison table<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table>\n<thead>\n<tr>\n<th>Option<\/th>\n<th>Best For<\/th>\n<th>Strengths<\/th>\n<th>Weaknesses<\/th>\n<th>When to Choose<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Oracle Cloud Roving Edge Classic<\/strong><\/td>\n<td>Portable\/disconnected edge sites needing OCI-aligned ops<\/td>\n<td>Edge-local compute\/storage; integrates with OCI governance; designed for intermittent connectivity<\/td>\n<td>Physical logistics; capacity limits; Classic may support fewer services than newer generations<\/td>\n<td>You need edge processing with OCI alignment and can operate hardware on-site<\/td>\n<\/tr>\n<tr>\n<td><strong>Oracle Cloud@Customer \/ Dedicated Region (Oracle)<\/strong><\/td>\n<td>On-prem cloud in a fixed data center<\/td>\n<td>Broad OCI service availability (often more than edge devices); strong locality<\/td>\n<td>Not portable; higher footprint and cost; requires stable facility<\/td>\n<td>You need \u201cOCI in your data center\u201d rather than portable edge<\/td>\n<\/tr>\n<tr>\n<td><strong>AWS Snowball Edge<\/strong><\/td>\n<td>Data transfer + edge compute in remote sites<\/td>\n<td>Mature offline transfer story; portable; integrates with AWS<\/td>\n<td>Different ecosystem; may not align with OCI governance<\/td>\n<td>You\u2019re AWS-first and need portable\/offline edge processing<\/td>\n<\/tr>\n<tr>\n<td><strong>Azure Stack Edge<\/strong><\/td>\n<td>Edge compute with Microsoft ecosystem<\/td>\n<td>Strong integration with Azure; common in Windows\/AD environments<\/td>\n<td>Service model differs; capacity constraints<\/td>\n<td>You\u2019re Azure-first and need edge compute with Azure integration<\/td>\n<\/tr>\n<tr>\n<td><strong>Google Distributed Cloud Edge<\/strong><\/td>\n<td>Telco\/edge deployments with Google tooling<\/td>\n<td>Integrates with Google cloud patterns; Kubernetes-centric options<\/td>\n<td>Availability and model depend on offering<\/td>\n<td>You\u2019re GCP-first and need edge Kubernetes patterns<\/td>\n<\/tr>\n<tr>\n<td><strong>Self-managed rugged servers + K8s\/VMs<\/strong><\/td>\n<td>Maximum control, specialized hardware<\/td>\n<td>Full control; can be cheaper for large fleets if you standardize<\/td>\n<td>Highest ops burden; security\/compliance is on you; complex sync<\/td>\n<td>You have mature platform engineering and need custom hardware\/software at scale<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">15. Real-World Example<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Enterprise example: Mining company with disconnected sites<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> Multiple remote mines generate telemetry and video. Connectivity is intermittent, and raw data cannot be continuously uploaded.<\/li>\n<li><strong>Proposed architecture:<\/strong><\/li>\n<li>Roving Edge Classic at each mine site<\/li>\n<li>Local ingestion VMs collect sensor feeds and camera events<\/li>\n<li>Local processing reduces data to hourly aggregates + incident clips<\/li>\n<li>Nightly sync window exports aggregates and clips to OCI Object Storage<\/li>\n<li>OCI region runs analytics dashboards and long-term retention<\/li>\n<li><strong>Why Roving Edge Classic was chosen:<\/strong><\/li>\n<li>Works with intermittent WAN<\/li>\n<li>Keeps raw data local by default<\/li>\n<li>Central governance through OCI compartments\/policies<\/li>\n<li><strong>Expected outcomes:<\/strong><\/li>\n<li>Reduced bandwidth consumption<\/li>\n<li>Faster incident detection locally<\/li>\n<li>Centralized analytics across sites when connectivity allows<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Startup\/small-team example: On-location media ingest kit<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem:<\/strong> A small production team needs a repeatable \u201cdata wrangling\u201d kit on set to generate proxies and upload dailies when possible.<\/li>\n<li><strong>Proposed architecture:<\/strong><\/li>\n<li>One Roving Edge Classic device as a portable processing node<\/li>\n<li>Local VMs run transcoding and checksum verification<\/li>\n<li>When internet is available, upload proxies and manifests to OCI Object Storage<\/li>\n<li>Editors pull proxies from OCI immediately; full-res later<\/li>\n<li><strong>Why Roving Edge Classic was chosen:<\/strong><\/li>\n<li>Portable local compute and storage<\/li>\n<li>Cloud sync path for collaboration<\/li>\n<li><strong>Expected outcomes:<\/strong><\/li>\n<li>Faster editing turnaround (proxies available quickly)<\/li>\n<li>Reduced risk of data loss via on-site verification and manifests<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">16. FAQ<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\n<p><strong>Is Roving Edge Classic a cloud region?<\/strong><br\/>\n   No. It\u2019s an Edge Cloud service delivered as an on-site device that runs workloads locally. It complements OCI regions rather than replacing them.<\/p>\n<\/li>\n<li>\n<p><strong>Does Roving Edge Classic work without internet?<\/strong><br\/>\n   Local workloads can, yes. Management and data synchronization capabilities may be limited when fully offline. Plan for offline operations explicitly.<\/p>\n<\/li>\n<li>\n<p><strong>What OCI services are available on Roving Edge Classic?<\/strong><br\/>\n   It depends on the Classic generation\/device model and Oracle\u2019s supported service list. <strong>Verify in official Roving Edge Classic docs<\/strong> for the exact supported services.<\/p>\n<\/li>\n<li>\n<p><strong>How do I order a Roving Edge Classic device?<\/strong><br\/>\n   Typically through the OCI Console under Edge\/Hybrid services, subject to availability. In some cases it may require an Oracle quote\/contract.<\/p>\n<\/li>\n<li>\n<p><strong>How long does shipping\/provisioning take?<\/strong><br\/>\n   It varies by region, inventory, and customs. Treat lead time as a project dependency.<\/p>\n<\/li>\n<li>\n<p><strong>Can I run Kubernetes on Roving Edge Classic?<\/strong><br\/>\n   Don\u2019t assume. Some edge offerings emphasize Kubernetes, but Classic capabilities vary. <strong>Verify in official docs<\/strong> for container orchestration support.<\/p>\n<\/li>\n<li>\n<p><strong>How do I keep data secure on the device?<\/strong><br\/>\n   Use encryption (verify at-rest options), strict IAM, network segmentation, and physical security controls. Maintain a secure decommission\/wipe process.<\/p>\n<\/li>\n<li>\n<p><strong>How do I synchronize data back to OCI?<\/strong><br\/>\n   Commonly via Object Storage uploads during connectivity windows. The exact sync tooling for Classic should be validated in Oracle\u2019s documentation.<\/p>\n<\/li>\n<li>\n<p><strong>Can multiple sites each have a device?<\/strong><br\/>\n   Yes\u2014fleet scenarios are common. Confirm tenancy limits and operational processes for multi-site management.<\/p>\n<\/li>\n<li>\n<p><strong>How do I monitor edge workloads?<\/strong><br\/>\n   Use local logs\/metrics and export to OCI Logging\/Monitoring when connected. Ensure log rotation doesn\u2019t delete data before export.<\/p>\n<\/li>\n<li>\n<p><strong>What happens if the device fails at a remote site?<\/strong><br\/>\n   Plan for operational resilience: spares, quick replacement logistics, and regular export of critical data to OCI.<\/p>\n<\/li>\n<li>\n<p><strong>Do I pay for OCI services used in the region in addition to the device?<\/strong><br\/>\n   Typically yes. Device fees cover the hardware edge environment; region services (Object Storage, analytics) are billed separately.<\/p>\n<\/li>\n<li>\n<p><strong>Is Roving Edge Classic suitable for highly regulated environments?<\/strong><br\/>\n   It can support locality-driven patterns, but compliance depends on your controls (IAM, encryption, custody, audit). Validate against your regulatory requirements.<\/p>\n<\/li>\n<li>\n<p><strong>Can I use OCI Vault for secrets?<\/strong><br\/>\n   Often Vault is used for central secrets, but edge retrieval patterns depend on connectivity and Classic support. Verify supported integration and design for offline.<\/p>\n<\/li>\n<li>\n<p><strong>How do I decommission a device safely?<\/strong><br\/>\n   Follow Oracle\u2019s official decommission\/return procedures and your internal data sanitization standards. Ensure you can prove wipe completion if required.<\/p>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">17. Top Online Resources to Learn Roving Edge Classic<\/h2>\n\n\n\n<p>Resource links can change; prefer starting from Oracle\u2019s official docs hub and navigate to the \u201cClassic\u201d section if present.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table>\n<thead>\n<tr>\n<th>Resource Type<\/th>\n<th>Name<\/th>\n<th>Why It Is Useful<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Official documentation<\/td>\n<td>OCI Roving Edge documentation hub: https:\/\/docs.oracle.com\/en-us\/iaas\/Content\/RovingEdge\/home.htm<\/td>\n<td>Primary source for concepts, supported features, IAM policies, and operational workflows<\/td>\n<\/tr>\n<tr>\n<td>Official pricing<\/td>\n<td>Oracle Cloud Pricing: https:\/\/www.oracle.com\/cloud\/pricing\/<\/td>\n<td>Entry point for pricing model and service categories<\/td>\n<\/tr>\n<tr>\n<td>Official price list<\/td>\n<td>OCI Price List: https:\/\/www.oracle.com\/cloud\/price-list\/<\/td>\n<td>Look up \u201cRoving Edge\u201d SKUs and pricing dimensions (if publicly listed)<\/td>\n<\/tr>\n<tr>\n<td>Pricing calculator<\/td>\n<td>OCI Cost Estimator: https:\/\/www.oracle.com\/cloud\/costestimator.html<\/td>\n<td>Estimate costs for region-side services (Object Storage, logging, analytics)<\/td>\n<\/tr>\n<tr>\n<td>Official CLI docs<\/td>\n<td>OCI CLI Concepts: https:\/\/docs.oracle.com\/en-us\/iaas\/Content\/API\/Concepts\/cliconcepts.htm<\/td>\n<td>Helps automate uploads\/downloads and operational tasks<\/td>\n<\/tr>\n<tr>\n<td>Architecture center<\/td>\n<td>Oracle Architecture Center (Solutions): https:\/\/docs.oracle.com\/solutions\/<\/td>\n<td>Reference architectures and patterns (search for edge\/hybrid and roving edge)<\/td>\n<\/tr>\n<tr>\n<td>Official videos<\/td>\n<td>Oracle Cloud Infrastructure YouTube: https:\/\/www.youtube.com\/@OracleCloudInfrastructure<\/td>\n<td>Product overviews and tutorials (search within channel for \u201cRoving Edge\u201d)<\/td>\n<\/tr>\n<tr>\n<td>Security guidance<\/td>\n<td>OCI Security documentation: https:\/\/docs.oracle.com\/en-us\/iaas\/Content\/Security\/home.htm<\/td>\n<td>Foundational security practices applicable to edge + OCI<\/td>\n<\/tr>\n<tr>\n<td>Storage docs<\/td>\n<td>OCI Object Storage docs: https:\/\/docs.oracle.com\/en-us\/iaas\/Content\/Object\/Concepts\/objectstorageoverview.htm<\/td>\n<td>Best practices for buckets, lifecycle, and data transfer patterns<\/td>\n<\/tr>\n<tr>\n<td>Community learning<\/td>\n<td>Oracle Cloud community\/blogs (verify relevance): https:\/\/blogs.oracle.com\/cloud-infrastructure\/<\/td>\n<td>Practical posts and updates; validate details against official docs<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">18. Training and Certification Providers<\/h2>\n\n\n\n<p>The following providers are listed neutrally as training resources. Confirm course availability and delivery modes on each website.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table>\n<thead>\n<tr>\n<th>Institute<\/th>\n<th>Suitable Audience<\/th>\n<th>Likely Learning Focus<\/th>\n<th>Mode<\/th>\n<th>Website URL<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>DevOpsSchool.com<\/td>\n<td>DevOps engineers, SREs, platform teams<\/td>\n<td>DevOps, cloud operations, automation, CI\/CD; may include Oracle Cloud topics<\/td>\n<td>Check website<\/td>\n<td>https:\/\/www.devopsschool.com\/<\/td>\n<\/tr>\n<tr>\n<td>ScmGalaxy.com<\/td>\n<td>Beginners to intermediate DevOps learners<\/td>\n<td>SCM, DevOps fundamentals, tooling and practices<\/td>\n<td>Check website<\/td>\n<td>https:\/\/www.scmgalaxy.com\/<\/td>\n<\/tr>\n<tr>\n<td>CLoudOpsNow.in<\/td>\n<td>Cloud engineers, operations teams<\/td>\n<td>Cloud operations, reliability, monitoring, cost awareness<\/td>\n<td>Check website<\/td>\n<td>https:\/\/www.cloudopsnow.in\/<\/td>\n<\/tr>\n<tr>\n<td>SreSchool.com<\/td>\n<td>SREs, reliability-focused engineers<\/td>\n<td>SRE principles, observability, incident response<\/td>\n<td>Check website<\/td>\n<td>https:\/\/www.sreschool.com\/<\/td>\n<\/tr>\n<tr>\n<td>AiOpsSchool.com<\/td>\n<td>Ops teams adopting AIOps<\/td>\n<td>AIOps concepts, monitoring automation, operational analytics<\/td>\n<td>Check website<\/td>\n<td>https:\/\/www.aiopsschool.com\/<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">19. Top Trainers<\/h2>\n\n\n\n<p>Listed neutrally as trainer platforms\/resources (verify specific trainer credentials and course scope on each site).<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table>\n<thead>\n<tr>\n<th>Platform\/Site<\/th>\n<th>Likely Specialization<\/th>\n<th>Suitable Audience<\/th>\n<th>Website URL<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>RajeshKumar.xyz<\/td>\n<td>Cloud\/DevOps training content (verify offerings)<\/td>\n<td>Beginners to engineers seeking practical guidance<\/td>\n<td>https:\/\/rajeshkumar.xyz\/<\/td>\n<\/tr>\n<tr>\n<td>devopstrainer.in<\/td>\n<td>DevOps coaching\/training (verify offerings)<\/td>\n<td>DevOps engineers, toolchain learners<\/td>\n<td>https:\/\/www.devopstrainer.in\/<\/td>\n<\/tr>\n<tr>\n<td>devopsfreelancer.com<\/td>\n<td>Freelance DevOps help\/training (verify offerings)<\/td>\n<td>Teams needing short-term expertise<\/td>\n<td>https:\/\/www.devopsfreelancer.com\/<\/td>\n<\/tr>\n<tr>\n<td>devopssupport.in<\/td>\n<td>DevOps support and guidance (verify offerings)<\/td>\n<td>Ops teams needing troubleshooting help<\/td>\n<td>https:\/\/www.devopssupport.in\/<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">20. Top Consulting Companies<\/h2>\n\n\n\n<p>Listed neutrally as consulting resources. Validate capabilities, references, and scope directly with each firm.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table>\n<thead>\n<tr>\n<th>Company<\/th>\n<th>Likely Service Area<\/th>\n<th>Where They May Help<\/th>\n<th>Consulting Use Case Examples<\/th>\n<th>Website URL<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>cotocus.com<\/td>\n<td>Cloud\/DevOps consulting (verify focus)<\/td>\n<td>Edge\/cloud architecture, DevOps pipelines, operations<\/td>\n<td>Edge workload packaging, hybrid connectivity design, observability rollout<\/td>\n<td>https:\/\/cotocus.com\/<\/td>\n<\/tr>\n<tr>\n<td>DevOpsSchool.com<\/td>\n<td>Training + consulting (verify scope)<\/td>\n<td>DevOps transformation, CI\/CD, platform enablement<\/td>\n<td>Infrastructure automation, GitOps setup, operational runbooks<\/td>\n<td>https:\/\/www.devopsschool.com\/<\/td>\n<\/tr>\n<tr>\n<td>DEVOPSCONSULTING.IN<\/td>\n<td>DevOps consulting (verify services)<\/td>\n<td>DevOps process\/tooling, cloud operations<\/td>\n<td>Monitoring\/logging implementation, CI\/CD standardization, security hardening<\/td>\n<td>https:\/\/www.devopsconsulting.in\/<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">21. Career and Learning Roadmap<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">What to learn before Roving Edge Classic<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>OCI fundamentals<\/strong>\n   &#8211; Compartments, IAM policies, networking basics, Object Storage<\/li>\n<li><strong>Linux and networking<\/strong>\n   &#8211; SSH, firewalls, routing, DNS, TLS basics<\/li>\n<li><strong>Infrastructure as Code concepts<\/strong>\n   &#8211; Even if Classic tooling differs, IaC thinking is essential<\/li>\n<li><strong>Edge computing fundamentals<\/strong>\n   &#8211; Offline-first design, sync patterns, local caching, batching<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">What to learn after Roving Edge Classic<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Hybrid networking patterns<\/strong> between edge and OCI regions<\/li>\n<li><strong>Observability pipelines<\/strong><\/li>\n<li>Centralized logging\/metrics, alerting, offline log shipping<\/li>\n<li><strong>Security engineering for edge<\/strong><\/li>\n<li>Physical security, secrets lifecycle, tamper evidence, secure wipe<\/li>\n<li><strong>Data engineering<\/strong><\/li>\n<li>Incremental ETL, compression, manifests, integrity checks<\/li>\n<li><strong>MLOps<\/strong><\/li>\n<li>Model packaging, edge inference deployment, periodic updates<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Job roles that use it<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cloud\/Edge Solution Architect<\/li>\n<li>Platform Engineer (Edge\/Hybrid)<\/li>\n<li>DevOps Engineer \/ SRE supporting remote sites<\/li>\n<li>Security Engineer for hybrid\/edge environments<\/li>\n<li>Data Engineer \/ ML Engineer building edge pipelines<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Certification path (if available)<\/h3>\n\n\n\n<p>Oracle certifications evolve frequently. Start here and verify current certification mappings:\n&#8211; Oracle University \/ OCI training: https:\/\/education.oracle.com\/<\/p>\n\n\n\n<p>If there is no Roving Edge Classic-specific certification, focus on:\n&#8211; OCI Architect and OCI Operations tracks\n&#8211; Security fundamentals for OCI\n&#8211; Networking and governance<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Project ideas for practice<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Offline-first telemetry pipeline: local aggregation + nightly Object Storage export<\/li>\n<li>Edge web API for local operations with periodic central sync<\/li>\n<li>Video analytics proof-of-concept: event extraction at edge + upload metadata only<\/li>\n<li>Edge security baseline: hardened images, SSH controls, logging export, asset inventory<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">22. Glossary<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Edge Cloud:<\/strong> Cloud capabilities delivered closer to where data is produced\/consumed rather than only in centralized regions.<\/li>\n<li><strong>OCI (Oracle Cloud Infrastructure):<\/strong> Oracle Cloud\u2019s infrastructure platform and services.<\/li>\n<li><strong>Compartment:<\/strong> OCI construct for organizing and isolating resources with IAM policies.<\/li>\n<li><strong>IAM (Identity and Access Management):<\/strong> Users, groups, dynamic groups, and policies controlling access.<\/li>\n<li><strong>Object Storage:<\/strong> Durable storage for unstructured data (files\/objects) in OCI regions.<\/li>\n<li><strong>Cloud-init:<\/strong> A common Linux initialization system used to bootstrap instances on first boot.<\/li>\n<li><strong>Store-and-forward:<\/strong> Pattern where data is stored locally when connectivity is unavailable, then forwarded later.<\/li>\n<li><strong>Lifecycle state:<\/strong> A resource status indicator such as provisioning, active, deleting.<\/li>\n<li><strong>Data locality:<\/strong> Requirement that data stays within a geographic or controlled boundary.<\/li>\n<li><strong>Egress:<\/strong> Data leaving a cloud region to the internet or another region (often billed).<\/li>\n<li><strong>Observability:<\/strong> Monitoring, logging, metrics, tracing, alerting, and operational insight.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">23. Summary<\/h2>\n\n\n\n<p><strong>Roving Edge Classic (Oracle Cloud)<\/strong> is an <strong>Edge Cloud<\/strong> service that delivers a <strong>portable, on-site cloud-like environment<\/strong> so you can run workloads and process data <strong>locally<\/strong> in remote, mobile, or intermittently connected environments.<\/p>\n\n\n\n<p>It matters because many real-world systems can\u2019t depend on constant connectivity to a cloud region. Roving Edge Classic supports architectures where you <strong>process locally<\/strong>, <strong>retain control of sensitive raw data<\/strong>, and <strong>synchronize selected outputs<\/strong> to OCI when connectivity exists.<\/p>\n\n\n\n<p>Key cost points:\n&#8211; Expect <strong>device-based pricing<\/strong> (often subscription\/rental) plus logistics.\n&#8211; Region-side usage (Object Storage, analytics, logging) adds consumption-based costs.\n&#8211; Biggest savings often come from <strong>reducing exported data volume<\/strong> via local processing.<\/p>\n\n\n\n<p>Key security points:\n&#8211; Apply strict IAM, network segmentation, and physical custody controls.\n&#8211; Plan for offline operations: credential rotation, log retention, secure decommission.<\/p>\n\n\n\n<p>Use Roving Edge Classic when you need <strong>edge compute + local data handling<\/strong> aligned with Oracle Cloud governance, and you can operate a physical edge device responsibly. Next learning step: read the official Roving Edge documentation hub and validate the <strong>Classic-specific<\/strong> supported services and workflows in your tenancy: https:\/\/docs.oracle.com\/en-us\/iaas\/Content\/RovingEdge\/home.htm<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Edge Cloud<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[69,62],"tags":[],"class_list":["post-904","post","type-post","status-publish","format-standard","hentry","category-edge-cloud","category-oracle-cloud"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/tutorials\/wp-json\/wp\/v2\/posts\/904","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/tutorials\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/tutorials\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/tutorials\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/tutorials\/wp-json\/wp\/v2\/comments?post=904"}],"version-history":[{"count":0,"href":"https:\/\/www.devopsschool.com\/tutorials\/wp-json\/wp\/v2\/posts\/904\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/tutorials\/wp-json\/wp\/v2\/media?parent=904"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/tutorials\/wp-json\/wp\/v2\/categories?post=904"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/tutorials\/wp-json\/wp\/v2\/tags?post=904"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}