doc-exports/docs/asm/umn/asm_bestpractice_1009.html
Dong, Qiu Jian e743e7f7b8 ASM UMN update 20241012
Reviewed-by: Eotvos, Oliver <oliver.eotvos@t-systems.com>
Co-authored-by: Dong, Qiu Jian <qiujiandong1@huawei.com>
Co-committed-by: Dong, Qiu Jian <qiujiandong1@huawei.com>
2024-10-18 07:32:37 +00:00

94 lines
11 KiB
HTML

<a name="asm_bestpractice_1009"></a><a name="asm_bestpractice_1009"></a>
<h1 class="topictitle1">How Do I Create a Service Mesh with IPv4/IPv6 Dual Stack Enabled</h1>
<div id="body0000001735119876"><p id="asm_bestpractice_1009__p1629514211458">You can create a CCE cluster with IPv4/IPv6 dual stack enabled and enable IPv4/IPv6 dual stack for the service mesh that the cluster is added to. IPv4/IPv6 dual stack allows services in the service mesh to use both IPv4 and IPv6 addresses for service-to-service interactions. After an IPv4/IPv6 dual-stack gateway is added for the service mesh, you can provide services for users using an IPv6 client. This section describes how you can create a service mesh with IPv4/IPv6 dual stack, so that services in the service mesh can communicate with each other using IPv6 addresses.</p>
<div class="section" id="asm_bestpractice_1009__section241033319520"><h4 class="sectiontitle">Application Scenarios</h4><ul id="asm_bestpractice_1009__ul1891110468467"><li id="asm_bestpractice_1009__li1191184617465">If an IPv6 address is required for service access and traffic management, you can enable IPv4/IPv6 dual stack.</li><li id="asm_bestpractice_1009__li162511452164617">If you provide services for users who use IPv6 clients, you can create a gateway for a service mesh with IPv4/IPv6 dual stack enabled.</li></ul>
</div>
<div class="section" id="asm_bestpractice_1009__section10909135625310"><h4 class="sectiontitle">Constraints</h4><ul id="asm_bestpractice_1009__ul89074563534"><li id="asm_bestpractice_1009__li490735665310">Conditions for enabling IPv4/IPv6 dual stack for a service mesh</li></ul>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" id="asm_bestpractice_1009__table990895610539" frame="border" border="1" rules="all"><thead align="left"><tr id="asm_bestpractice_1009__row179081156175318"><th align="left" class="cellrowborder" valign="top" width="12.379999999999999%" id="mcps1.3.3.3.1.6.1.1"><p id="asm_bestpractice_1009__p89071156165312">Service Mesh Edition</p>
</th>
<th align="left" class="cellrowborder" valign="top" width="14.91%" id="mcps1.3.3.3.1.6.1.2"><p id="asm_bestpractice_1009__p19907155675311">Istio Version</p>
</th>
<th align="left" class="cellrowborder" valign="top" width="15.260000000000002%" id="mcps1.3.3.3.1.6.1.3"><p id="asm_bestpractice_1009__p189071556185316">Cluster Type</p>
</th>
<th align="left" class="cellrowborder" valign="top" width="20.4%" id="mcps1.3.3.3.1.6.1.4"><p id="asm_bestpractice_1009__p179081656165310">Cluster Network Type</p>
</th>
<th align="left" class="cellrowborder" valign="top" width="37.05%" id="mcps1.3.3.3.1.6.1.5"><p id="asm_bestpractice_1009__p17908175655314">Remarks</p>
</th>
</tr>
</thead>
<tbody><tr id="asm_bestpractice_1009__row69081356125311"><td class="cellrowborder" valign="top" width="12.379999999999999%" headers="mcps1.3.3.3.1.6.1.1 "><p id="asm_bestpractice_1009__p189081056185311">Basic</p>
</td>
<td class="cellrowborder" valign="top" width="14.91%" headers="mcps1.3.3.3.1.6.1.2 "><p id="asm_bestpractice_1009__p1590855665316">1.18 or later</p>
</td>
<td class="cellrowborder" valign="top" width="15.260000000000002%" headers="mcps1.3.3.3.1.6.1.3 "><p id="asm_bestpractice_1009__p16908175615532">CCE Turbo clusters</p>
</td>
<td class="cellrowborder" valign="top" width="20.4%" headers="mcps1.3.3.3.1.6.1.4 "><p id="asm_bestpractice_1009__p1890865611530">Cloud native network 2.0</p>
</td>
<td class="cellrowborder" valign="top" width="37.05%" headers="mcps1.3.3.3.1.6.1.5 "><p id="asm_bestpractice_1009__p9169234132610">IPv6 needs to be enabled for the clusters.</p>
</td>
</tr>
</tbody>
</table>
</div>
<ul id="asm_bestpractice_1009__ul17908756195318"><li id="asm_bestpractice_1009__li49081056125319">Conditions for creating an IPv4/IPv6 dual-stack gateway</li></ul>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" id="asm_bestpractice_1009__table69092056105316" frame="border" border="1" rules="all"><thead align="left"><tr id="asm_bestpractice_1009__row109093569534"><th align="left" class="cellrowborder" valign="top" width="12.379999999999999%" id="mcps1.3.3.5.1.6.1.1"><p id="asm_bestpractice_1009__p290975645312">Service Mesh Edition</p>
</th>
<th align="left" class="cellrowborder" valign="top" width="14.91%" id="mcps1.3.3.5.1.6.1.2"><p id="asm_bestpractice_1009__p59096565536">Istio Version</p>
</th>
<th align="left" class="cellrowborder" valign="top" width="15.260000000000002%" id="mcps1.3.3.5.1.6.1.3"><p id="asm_bestpractice_1009__p1990935615534">Load Balancer Type</p>
</th>
<th align="left" class="cellrowborder" valign="top" width="20.4%" id="mcps1.3.3.5.1.6.1.4"><p id="asm_bestpractice_1009__p6909856115320">Load Balancer Specification</p>
</th>
<th align="left" class="cellrowborder" valign="top" width="37.05%" id="mcps1.3.3.5.1.6.1.5"><p id="asm_bestpractice_1009__p149091456195315">Remarks</p>
</th>
</tr>
</thead>
<tbody><tr id="asm_bestpractice_1009__row1290905613534"><td class="cellrowborder" valign="top" width="12.379999999999999%" headers="mcps1.3.3.5.1.6.1.1 "><p id="asm_bestpractice_1009__p1390910562539">Basic</p>
</td>
<td class="cellrowborder" valign="top" width="14.91%" headers="mcps1.3.3.5.1.6.1.2 "><p id="asm_bestpractice_1009__p590916564532">1.18 or later</p>
</td>
<td class="cellrowborder" valign="top" width="15.260000000000002%" headers="mcps1.3.3.5.1.6.1.3 "><p id="asm_bestpractice_1009__p9909145615539">Dedicated</p>
</td>
<td class="cellrowborder" valign="top" width="20.4%" headers="mcps1.3.3.5.1.6.1.4 "><p id="asm_bestpractice_1009__p1190911564535">Network load balancing (Layer 4)</p>
</td>
<td class="cellrowborder" valign="top" width="37.05%" headers="mcps1.3.3.5.1.6.1.5 "><p id="asm_bestpractice_1009__p17909165616539">The load balancer has an IPv6 address.</p>
</td>
</tr>
</tbody>
</table>
</div>
<ul id="asm_bestpractice_1009__ul55640515486"><li id="asm_bestpractice_1009__li1744055413210"><strong id="asm_bestpractice_1009__b191812273172">Enable IPv6</strong> is only available in Basic service meshes based on Istio 1.18 or later.</li></ul>
<ul id="asm_bestpractice_1009__ul14909156105316"><li id="asm_bestpractice_1009__li5909356155310">IPv4/IPv6 dual stack cannot be disabled once it is enabled for a service mesh. IPv4/IPv6 dual stack cannot be enabled for an existing service mesh.</li><li id="asm_bestpractice_1009__li149091556195310">IPv4/IPv6 dual stack cannot be enabled for a service mesh whose Istio version is upgraded to 1.18 or later.</li></ul>
</div>
<div class="section" id="asm_bestpractice_1009__section22981733145214"><h4 class="sectiontitle">Creating a Service Mesh with IPv6 Addresses</h4><ol id="asm_bestpractice_1009__ol19298733165212"><li id="asm_bestpractice_1009__li162971334529"><span>Log in to the ASM console, a service mesh, and configure the parameters as follows:</span><p><ul id="asm_bestpractice_1009__ul102971334524"><li id="asm_bestpractice_1009__li122971133185210"><strong id="asm_bestpractice_1009__b1875558867">Mesh Edition</strong>: Select <strong id="asm_bestpractice_1009__b1587615581168">Basic edition</strong>.</li><li id="asm_bestpractice_1009__li152975338522"><strong id="asm_bestpractice_1009__b14671113820712">Mesh Name</strong>: Enter a service mesh name.</li><li id="asm_bestpractice_1009__li18297113395211"><strong id="asm_bestpractice_1009__b117461951185">Istio Version</strong>: Select 1.18 or later.</li><li id="asm_bestpractice_1009__li102972033125213"><strong id="asm_bestpractice_1009__b51711227082">Enable IPv6</strong>: If this option is enabled, CCE clusters that meet the conditions will be displayed.</li></ul>
<p id="asm_bestpractice_1009__p6297533195217"></p>
<p id="asm_bestpractice_1009__p266122616264"></p>
<p id="asm_bestpractice_1009__p943184717542"></p>
<p id="asm_bestpractice_1009__p1029714339528">Configure other parameters based on site requirements.</p>
</p></li><li id="asm_bestpractice_1009__li1229773335218"><span id="asm_bestpractice_1009__p4163181041415">Click the service mesh name to access the details page.</span><p><p id="asm_bestpractice_1009__li1229773335218p0">On the <strong id="asm_bestpractice_1009__b070135181319">Mesh Configuration</strong> &gt; <strong id="asm_bestpractice_1009__b18828199101318">Basic Information</strong> tab, you can see that IPv4/IPv6 dual stack has been enabled.</p>
<p id="asm_bestpractice_1009__p4297103325211"></p>
</p></li></ol>
</div>
<div class="section" id="asm_bestpractice_1009__section298835975218"><h4 class="sectiontitle">Adding an IPv4/IPv6 Dual-Stack Gateway</h4><ol id="asm_bestpractice_1009__ol9988145915521"><li id="asm_bestpractice_1009__li1988145935214"><span>Log in to the ASM console. On the service mesh list page, click the name of the service mesh with IPv4/IPv6 dual stack enabled. In the navigation pane, choose <strong id="asm_bestpractice_1009__b79310287197">Gateway Management</strong>. Click <strong id="asm_bestpractice_1009__b015913417193">Add Gateway</strong> and configure the parameters as follows:</span><p><ul id="asm_bestpractice_1009__ul1373720311571"><li id="asm_bestpractice_1009__li157373310578"><strong id="asm_bestpractice_1009__b4980016216">Access Mode</strong>: Select IPv4/IPv6 dual stack.</li><li id="asm_bestpractice_1009__li19421168575"><strong id="asm_bestpractice_1009__b1976727122115">Load Balancer</strong>: Select <strong id="asm_bestpractice_1009__b22471645182115">Dedicated</strong>. The dedicated load balancer must have an IPv6 address.</li></ul>
<p id="asm_bestpractice_1009__p642152211499"></p>
<p id="asm_bestpractice_1009__p098885915528">Configure other parameters based on site requirements.</p>
<div class="note" id="asm_bestpractice_1009__note29881559125210"><img src="public_sys-resources/note_3.0-en-us.png"><span class="notetitle"> </span><div class="notebody"><p id="asm_bestpractice_1009__p09881659185219">If IPv4/IPv6 dual stack is enabled, only domain names are allowed to access the gateway.</p>
</div></div>
</p></li></ol>
</div>
<div class="section" id="asm_bestpractice_1009__section12477132535"><h4 class="sectiontitle">Verification</h4><ol id="asm_bestpractice_1009__ol9195130066"><li id="asm_bestpractice_1009__li1195106617">Configure domain name resolution for the client, so that the domain name is mapped to the IPv6 address of the gateway. This way, the client can access the gateway using the domain name.</li></ol>
<p id="asm_bestpractice_1009__p297011549710"><span><img id="asm_bestpractice_1009__image73981551077" src="en-us_image_0000001741270036.png"></span></p>
<ol start="2" id="asm_bestpractice_1009__ol1195701564"><li id="asm_bestpractice_1009__li141954014614">View the IPv6 request information in the ingressgateway log.</li></ol>
<p id="asm_bestpractice_1009__p524701318533"><span><img id="asm_bestpractice_1009__image1824711317535" src="en-us_image_0000001786644069.png"></span></p>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="asm_bp_0001.html">Best Practices</a></div>
</div>
</div>