You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<spanclass="nav-text"><ahref="https://redhat-solution-patterns.github.io/solution-patterns/patterns.html" target="_blank" rel="noopener">Explore Red Hat Solution Patterns</a></span>
<divclass="edit-this-page"><ahref="https://github.com/redhat-solution-patterns/solution-pattern-website-template/edit/main/documentation/modules/ROOT/pages/01-pattern.adoc">Edit this Page</a></div>
155
+
<divclass="edit-this-page"><ahref="https://github.com/bugbiteme/solution-pattern-ossm3/edit/main/documentation/modules/ROOT/pages/01-pattern.adoc">Edit this Page</a></div>
176
156
</div>
177
157
<divclass="content">
178
158
<articleclass="doc">
179
159
<divclass="sect1">
180
160
<h2id="_the_story_behind_this_solution_pattern"><aclass="anchor" href="#_the_story_behind_this_solution_pattern"></a>The story behind this solution pattern</h2>
181
161
<divclass="sectionbody">
182
162
<divclass="paragraph">
183
-
<p>A description of the story that was used to build the demo and architectures of this SP.</p>
163
+
<p><strong>Canary Deployment with Traffic Splitting</strong></p>
<p><strong>Objective</strong>: Safely roll out a new version of a microservice while monitoring its performance.</p>
172
+
</div>
173
+
<divclass="paragraph">
174
+
<p>A retail company has an application running on OpenShift that handles online orders. The development team wants to deploy a new version (<code>v2</code>) of their <code>hello-service</code> RestAPI without disrupting users of the current version (<code>v1</code>).</p>
<p>Using OpenShift Service Mesh 3 with the Kubernetes Gateway API, they configure a traffic-splitting policy to direct 90% of traffic to <code>v1</code> and 10% to <code>v2</code>.</p>
183
+
</div>
184
+
<divclass="paragraph">
185
+
<p>With integrated observability tools like <strong>Jaeger</strong> and <strong>Kiali</strong>, the team monitors traffic flow, latency, and error rates in real-time for <code>v2</code>.</p>
186
+
</div>
187
+
<divclass="paragraph">
188
+
<p>Once performance metrics confirm stability, they incrementally increase traffic to <code>v2</code> until it handles 100% of requests, ensuring a smooth transition.</p>
189
+
</div>
190
+
<divclass="paragraph">
191
+
<p>This pattern aims to cover the following use cases of OpenShift Service Mesh</p>
192
+
</div>
193
+
<divclass="ulist">
194
+
<ul>
195
+
<li>
196
+
<p><strong>Traffic Control for Continuous Delivery</strong>: Enable safe progressive delivery with traffic management across application versions</p>
197
+
</li>
198
+
<li>
199
+
<p><strong>Application Observability</strong>: Out of the box application metrics, request logs and distributed traces for system observability</p>
200
+
</li>
201
+
</ul>
202
+
</div>
203
+
<divclass="paragraph">
204
+
<p>All while encrypting service-to-service communication with default mTLS</p>
0 commit comments