{"componentChunkName":"component---src-templates-microservices-js","path":"/en/microservices/FAQ/","result":{"data":{"markdownRemark":{"html":"<h2 id=\"faq\"><a href=\"#faq\" aria-hidden class=\"anchor\"><svg aria-hidden=\"true\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>FAQ</h2>\n<ol>\n<li>\n<p>How to solve the problem when the database in Oracle could not connect with SuperMap iDesktop?</p>\n<p>Answer: Please create a new database in Oracle XE, and use the new one. Follow the steps below to create a new database:</p>\n<p>(1) Clicks <strong>Database > Oracle > Name(The name of your database) > oracle > Command Pad</strong> on the iManager to enter Oracle comnmand pad.</p>\n<p>(2) Create a folder named ‘supermapshapefile’ under the ‘u01/app/oracle/oradata’ directory(If you already have a folder, skip this step). Execute:</p>\n<div class=\"gatsby-highlight\" data-language=\"database\"><pre class=\"gatsby-code-database\"><code class=\"gatsby-code-database\">mkdir -p /u01/app/oracle/oradata/supermapshapefile</code></pre></div>\n<p>(3) Change the folder owner to oracle. Execute:</p>\n<div class=\"gatsby-highlight\" data-language=\"database\"><pre class=\"gatsby-code-database\"><code class=\"gatsby-code-database\">chown oracle /u01/app/oracle/oradata/supermapshapefile</code></pre></div>\n<p>(4) Enter Oracle. Execute:</p>\n<div class=\"gatsby-highlight\" data-language=\"database\"><pre class=\"gatsby-code-database\"><code class=\"gatsby-code-database\">sqlplus / as sysdba</code></pre></div>\n<p>(5) Fill in the username and password of Oracle. You can view account information by clicking <strong>Database > Oracle > Name > Account</strong> on the iManager page.</p>\n<p>(6) Create a tablespace, the size is 200M(you can set the size of tablespace according to your requirement). Execute:</p>\n<div class=\"gatsby-highlight\" data-language=\"database\"><pre class=\"gatsby-code-database\"><code class=\"gatsby-code-database\">create tablespace supermaptbs datafile &#39;/u01/app/oracle/oradata/supermapshapefile/data.dbf&#39; size 200M;</code></pre></div>\n<p>(7) Create a new user of the tablespace. For example, username: supermapuser; password: supermap123. Execute:</p>\n<div class=\"gatsby-highlight\" data-language=\"database\"><pre class=\"gatsby-code-database\"><code class=\"gatsby-code-database\">create user supermapuser identified by supermap123 default tablespace supermaptbs;</code></pre></div>\n<p>(8) Grant new user permission. Execute:</p>\n<div class=\"gatsby-highlight\" data-language=\"database\"><pre class=\"gatsby-code-database\"><code class=\"gatsby-code-database\">grant connect,resource to supermapuser;\ngrant dba to supermapuser;</code></pre></div>\n</li>\n<li>\n<p>The Spark-worker node sometimes get offlined sometimes get death when doing the distributed analyst by Spark cluster, how to solve it?</p>\n<p>Answer: Because of the high resource occupancy in the processing of distributed analyst, the response is getting slower. The Spark-master node can not receive the response of Spark-worker node, so the Spark-master node considers the Spark-worker node is in some problems. You need to extend the heartbeat interval between the nodes.</p>\n<p>(1) Clicks on <strong>Computing Resources > Spark Cluster > Console > spkar-mater > Command pad</strong> to enter the command pad of the Spark-master container.</p>\n<p>(2) Go to the spark-env.sh file directory:</p>\n<div class=\"gatsby-highlight\" data-language=\"docker\"><pre class=\"gatsby-code-docker\"><code class=\"gatsby-code-docker\">cd spark/conf</code></pre></div>\n<p>(3) Open the  spark-env.sh file:</p>\n<div class=\"gatsby-highlight\" data-language=\"docker\"><pre class=\"gatsby-code-docker\"><code class=\"gatsby-code-docker\">vi spark<span class=\"token punctuation\">-</span>env.sh</code></pre></div>\n<p>(4) Add the heartbeat interval in the file(The default is 180 seconds. The example below sets to 1800 seconds.):</p>\n<div class=\"gatsby-highlight\" data-language=\"docker\"><pre class=\"gatsby-code-docker\"><code class=\"gatsby-code-docker\">export SPARK_MASTER_OPTS=<span class=\"token string\">\"-Dspark.worker.timeout=1800\"</span></code></pre></div>\n<p>(5) Save and exit spark-env.sh file.</p>\n<p>(6) Redeploy Spark-master node and Spark-worker node on the Spark Cluster Console page.</p>\n</li>\n<li>\n<p>Why the font style displayed in map service is different from the style used in making map?</p>\n<p>Answer: the service node which the map service is running on does not have the font style used in making map. Please follow the steps to add font style:</p>\n<p>(1) Clicks on <strong>File Management</strong> on the left navigation bar, upload the font file to the system/fonts folder.</p>\n<p>(2) Redeploy the service node which the map service is running on.</p>\n</li>\n<li>\n<p>If you redeploy or adjust spec immediately after deploying or adjusting spec, the license assign failed, how to solve the problem?</p>\n<p>Answer: After redeploying or adjusting spec, please make sure the services have been assigned the license successfully, then do others operations like redeploy or adjust spec.</p>\n</li>\n<li>\n<p>When viewing monitoring statistic charts, the charts do not displaying data or the time of data can not match the real time, how to solve the problem?</p>\n<p>Answer: Please make sure the time settings of local machine and Kubernetes node machines are same.</p>\n</li>\n<li>\n<p>If you re-enabled built-in environments(such as Spark Cluster and Kafka cluster) after disabling, the built-in environments were not working, how to solve the problem?</p>\n<p>Answer: The service ports would change after re-enabling the built-in environments, please update related service port configurations.</p>\n</li>\n<li>\n<p>When installing GIS Cloud Suite on K3S, the progress bar was stoping running, how to solve the problem?</p>\n<p>Answer: Check the status of pods by the command <code class=\"gatsby-code-text\">kubectl -n kube-system get pod</code>, if the status of pods are not ‘running’ or ‘completed’, the cluster of K3S might not communicate because of the firewall. Input the following command to close firewall:</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">systemctl stop firewalld\nsystemctl disable firewalld</code></pre></div>\n<p>After closing firewall for a while, use the command <code class=\"gatsby-code-text\">kubectl get pod --all-namespaces</code> to check the status of pods, if the status of pods are stilling abnormal, please consider others reason.</p>\n</li>\n<li>\n<p>How to replace the security certificate in GIS Cloud Suite?</p>\n<p>Answer: There are two kinds of security certificates in iManager for K8s, one is for security center(Keycloak), another one is for access entrance. The method of replacing the security certificates is different according to whether the access entrance or Keycloak has configured the domain name. Please follow the steps below to replace the security certificates:</p>\n<p><strong>Replace the Security Certificate for Keycloak(Without domain name)</strong></p>\n<p>(1) Executes the following command on Kubernetes Master machine to find the volume of the security certificate(<code class=\"gatsby-code-text\">icloud-native-&lt;id&gt;</code> in the command is the namespace of GIS Cloud Suite, please replace to the actual namespace):</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">kubectl -n icloud-native-&lt;id&gt; describe pvc pvc-keycloak-certificate-&lt;id&gt; | grep Volume: | awk -F &#39; &#39; &#39;{print $2}&#39; | xargs kubectl describe pv</code></pre></div>\n<p>(2) Stores your new security certificate to the volume in step (1);</p>\n<blockquote>\n<p>Notes:<br>\nThe security certificate includes certificate and private key, the certificate should be renamed to tls.crt, the private key should be renamed to tsl.key.</p>\n</blockquote>\n<p>(3) Logs in to iManager and redeploys the Keycloak service in <strong>Basic Services</strong>.</p>\n<p><strong>Replace the Security Certificate for Keycloak(With domain name)</strong></p>\n<p>(1) Copies the security certificate and pastes to the Kubernetes Master machine.</p>\n<p>(2) Executes the following commands(<code class=\"gatsby-code-text\">&lt;id&gt;</code> in the command is the ID of namespace when creating GIS Cloud Suite; <code class=\"gatsby-code-text\">&lt;certificateFile&gt;</code> is the name of certificate; <code class=\"gatsby-code-text\">&lt;privateFile&gt;</code> is the name of private key. Replace them by the actual namespace):</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">kubectl -n icloud-native-&lt;id&gt; delete secret keycloak-ingress-tls\nkubectl -n icloud-native-&lt;id&gt; create secret tls keycloak-ingress-tls --cert=&#39;&lt;certificateFile&gt;&#39; --key=&#39;&lt;privateFile&gt;&#39;</code></pre></div>\n<p>(3) Visits Keycloak by the domain name.</p>\n<p><strong>Replace the Security Certificate for Access Entrance(Without domain name)</strong></p>\n<p>(1) Executes the following command on Kubernetes Master machine to find the volume of the security certificate(<code class=\"gatsby-code-text\">icloud-native-&lt;id&gt;</code> in the command is the namespace of GIS Cloud Suite, please replace to the actual name):</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">kubectl -n icloud-native-&lt;id&gt; describe pvc pvc-gateway-certificate-&lt;id&gt; | grep Volume: | awk -F &#39; &#39; &#39;{print $2}&#39; | xargs kubectl describe pv</code></pre></div>\n<p>(2) Stores your new security certificate to the volume in step (1);</p>\n<blockquote>\n<p>Notes:<br>\nThe security certificate should be renamed to certificate.keystore.</p>\n</blockquote>\n<p>(3) Modifies the certificate configuration of access entrance:</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">kubectl -n icloud-native-&lt;id&gt; edit deploy iserver-gateway</code></pre></div>\n<p>Find the configuiration of icn_ext_param_server_ssl_keyStorePassword in the file, modify the ‘value’ to the password of the security certificate. Save and quite the configuration, the service of access entrance will redeploy automatically.</p>\n<p><strong>Replace the Security Certificate for Access Entrance(With domain name)</strong></p>\n<p>(1) Copies the security certificate and pastes to the Kubernetes Master machine.</p>\n<p>(2) Executes the following commands(<code class=\"gatsby-code-text\">&lt;id&gt;</code> in the command is the ID of namespace when creating GIS Cloud Suite; <code class=\"gatsby-code-text\">&lt;certificateFile&gt;</code> is the name of certificate; <code class=\"gatsby-code-text\">&lt;privateFile&gt;</code> is the name of private key. Replace them by the actual name):</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">kubectl -n icloud-native-&lt;id&gt; delete secret gateway-ingress-tls\nkubectl -n icloud-native-&lt;id&gt; create secret tls gateway-ingress-tls --cert=&#39;&lt;certificateFile&gt;&#39; --key=&#39;&lt;privateFile&gt;&#39;</code></pre></div>\n<p>(3) Visits access entrance by the domain name.</p>\n</li>\n<li>\n<p>How to solve the problem if the data lost after restarting GIS Cloud Suite when your did not configure NFS Server or StorageClass?</p>\n<p>Answer: If you can not see the IP address of Distributed Analysis Service, or no data in built-in Storage Resources(PostGIS, PostgreSQL, etc.) after restarting GIS Cloud Suite, please disable the built-in environment, then enable it again.</p>\n</li>\n<li>\n<p>How to solve the problem that some of funcions are unavailable after updating the image of Gisapplication or iPortal?</p>\n<p>Answer: If you only update Gisapplication or iPortal, the configuration and code might be incompatible. Please update both Gisapplication and iPortal.</p>\n</li>\n<li>\n<p>How to solve the problem when Keycloak has the error ‘io.undertow.util.ParameterLimitException: UT000047: The number of parameters exceeded the maximum of 1000’?</p>\n<p>Answer: The error caused because of you have too many service instances, the table fields that send to Keycloak exceeded the maximum value 1000, you need to raise the maximum value. please follow the steps below to solve the problem:</p>\n<p>(1) Log in to the management page of Kubernetes.</p>\n<p>(2) Click on <strong>Deployments</strong> in the namespace of your GIS Cloud Suite.</p>\n<p>(3) Find out ‘keycloak’, click on <strong>Actions > View/edit YAML</strong>.</p>\n<p>(4) Add the variable ‘UNDERTOW_MAX_PARAMETERS’ in <strong>spec->template->spec->containers->env</strong>, the value should larger than the value from the error. For example:</p>\n<div class=\"gatsby-highlight\" data-language=\"yaml\"><pre class=\"gatsby-code-yaml\"><code class=\"gatsby-code-yaml\"><span class=\"token punctuation\">{</span>\n   <span class=\"token key atrule\">\"name\"</span><span class=\"token punctuation\">:</span> <span class=\"token string\">\"UNDERTOW_MAX_PARAMETERS\"</span><span class=\"token punctuation\">,</span>\n   <span class=\"token key atrule\">\"value\"</span><span class=\"token punctuation\">:</span> <span class=\"token string\">\"1500\"</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span></code></pre></div>\n</li>\n<li>\n<p>How to create the resource with the same name as the Secret when configuring the image pull secret?</p>\n<p>Answer: When configuring the Secret, you need to create a resource with the same name as the Secret in GIS Cloud Suite namespace of Kubernetes. You also need to create a resource with the same name as the secret value in namespace ‘kube-system’ when enabling metrics server. Please enter the following command in Kubernetes Master machine to create the resource:</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">kubectl create secret docker-registry &lt;image-pull-secret&gt; --docker-server=&quot;&lt;172.16.17.11:5002&gt;&quot; --docker-username=&lt;admin&gt; --docker-password=&lt;adminpassword&gt; -n &lt;giscloudsuite&gt;</code></pre></div>\n<blockquote>\n<p>Notes:  </p>\n<p>The contents in the command with symbol ”&#x3C;>” need to be replaced according to your actual environment(Delete the symbol ”&#x3C;>” after replacing).\n<code class=\"gatsby-code-text\">&lt;image-pull-secret&gt;</code> is the name of your Secret;\n<code class=\"gatsby-code-text\">&lt;172.16.17.11:5002&gt;</code> is your registry address;\n<code class=\"gatsby-code-text\">&lt;admin&gt;</code> is the namespace of your registry;\n<code class=\"gatsby-code-text\">&lt;adminpassword&gt;</code> is the password of your namespace;\n<code class=\"gatsby-code-text\">&lt;giscloudsuite&gt;</code> is the namespace of GIS Cloud Suite(replace <code class=\"gatsby-code-text\">&lt;giscloudsuite&gt;</code> to ‘kube-system’ when you create the resource in the namespace kube-system).</p>\n</blockquote>\n</li>\n<li>\n<p>How to configure automatic refresh for service instances?</p>\n<p>Answer: Refresh service instances are used for updating service instances when datasources have updated. If you configure automatic refresh, the system will update service instances every certain time automatically. Please follow the steps below to configure automatic refresh in the YAML file of service node:</p>\n<p>(1) Find out which service node that the service instance is running on(You can see the service node by clicking on Service Management > Service Instances, and entering the service instances details page).</p>\n<p>(2) Login to the management page of Kubernetes, click on <strong>Deployments</strong> in the namespace of your GIS Cloud Suite, and find out the name of service node.</p>\n<p>(3) Edit the service node, click on <strong>Actions > View/edit YAML</strong>.</p>\n<p>(4) Add the variable ‘REFRESH_DATASOURCE’ and ‘CHECK_DATASOURCE_CONNECTION_INTERVAL’ in <strong>spec->template->spec->containers->env</strong>. ‘REFRESH_DATASOURCE’ is used for enabling automatic refresh, ‘CHECK_DATASOURCE_CONNECTION_INTERVAL’ is used for setting time interval. For example, enable automatic refresh and set the interval time for 1 hour:</p>\n<div class=\"gatsby-highlight\" data-language=\"yaml\"><pre class=\"gatsby-code-yaml\"><code class=\"gatsby-code-yaml\"><span class=\"token punctuation\">{</span>\n   <span class=\"token key atrule\">\"name\"</span><span class=\"token punctuation\">:</span> <span class=\"token string\">\"REFRESH_DATASOURCE\"</span><span class=\"token punctuation\">,</span>\n   <span class=\"token key atrule\">\"value\"</span><span class=\"token punctuation\">:</span> <span class=\"token string\">\"true\"</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n<span class=\"token punctuation\">{</span>\n   <span class=\"token key atrule\">\"name\"</span><span class=\"token punctuation\">:</span> <span class=\"token string\">\"CHECK_DATASOURCE_CONNECTION_INTERVAL\"</span><span class=\"token punctuation\">,</span>\n   <span class=\"token key atrule\">\"value\"</span><span class=\"token punctuation\">:</span> <span class=\"token string\">\"3600\"</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span></code></pre></div>\n<p>(5) Click on <strong>UPDATE</strong> and wait the service redeploy.</p>\n</li>\n<li>\n<p>How to solve the problem that the Kubernetes cluster in Alibaba Cloud can not connect to built-in HBase in GIS Cloud Suite?</p>\n<p>Answer: Please follow the steps below to solve the problem:</p>\n<p>(1) Make sure which Work node that the EIP bind on Kubernetes cluster in Alibaba Cloud, execute the following command to get the name of Work node:</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">kubectl get nodes</code></pre></div>\n<p>(2) Update service, execute:</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">kubectl -n &lt;namespace&gt; patch deployment/nginx-ingress-controller -p &quot;\napiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: nginx-ingress-controller\nspec:\n  template:\n    spec:\n      nodeName: &lt;nodeName&gt;\n&quot;</code></pre></div>\n<p>(3) Wait for the service to start.</p>\n<blockquote>\n<p>Notes:<br>\nReplace <code class=\"gatsby-code-text\">&lt;namespace&gt;</code> and <code class=\"gatsby-code-text\">&lt;nodeName&gt;</code> in step (2) to the actual value of your environment.</p>\n<ol>\n<li><code class=\"gatsby-code-text\">&lt;namespace&gt;</code> is the namespace of iManager(or GIS Cloud Suite).</li>\n<li><code class=\"gatsby-code-text\">&lt;nodeName&gt;</code> is name of work node in Kubernetes cluster that EIP bind on.</li>\n</ol>\n</blockquote>\n</li>\n<li>\n<p>How to configure local storage for built-in HBase environment?</p>\n<p>Answer: The NFS volume will impact the write/read ability of HBase, you can optimize the ability by the following way:</p>\n<p>(1) Modify the value of <code class=\"gatsby-code-text\">deploy_disable_hbase_nfs_volume</code> to <code class=\"gatsby-code-text\">true</code> in the configuration(values.yaml).</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">deploy_disable_hbase_nfs_volume: true</code></pre></div>\n<p>(2) Please refer to the hbase-datanode-local-volume.yaml file, and modify the file according to the actual situation:</p>\n<div class=\"gatsby-highlight\" data-language=\"yaml\"><pre class=\"gatsby-code-yaml\"><code class=\"gatsby-code-yaml\"><span class=\"token key atrule\">apiVersion</span><span class=\"token punctuation\">:</span> v1\n<span class=\"token key atrule\">kind</span><span class=\"token punctuation\">:</span> PersistentVolume\n<span class=\"token key atrule\">metadata</span><span class=\"token punctuation\">:</span>\n  <span class=\"token key atrule\">labels</span><span class=\"token punctuation\">:</span>\n    <span class=\"token key atrule\">type</span><span class=\"token punctuation\">:</span> icloud<span class=\"token punctuation\">-</span>native\n  <span class=\"token key atrule\">name</span><span class=\"token punctuation\">:</span> icloud<span class=\"token punctuation\">-</span>native<span class=\"token punctuation\">-</span>hbase<span class=\"token punctuation\">-</span>datanode<span class=\"token punctuation\">-</span>volume<span class=\"token punctuation\">-</span><span class=\"token number\">0  </span><span class=\"token comment\">#Point 1</span>\n<span class=\"token key atrule\">spec</span><span class=\"token punctuation\">:</span>\n  <span class=\"token key atrule\">storageClassName</span><span class=\"token punctuation\">:</span> local<span class=\"token punctuation\">-</span>volume<span class=\"token punctuation\">-</span>storage<span class=\"token punctuation\">-</span>class\n  <span class=\"token key atrule\">capacity</span><span class=\"token punctuation\">:</span>\n    <span class=\"token key atrule\">storage</span><span class=\"token punctuation\">:</span> 10Ti\n  <span class=\"token key atrule\">accessModes</span><span class=\"token punctuation\">:</span>\n    <span class=\"token punctuation\">-</span> ReadWriteMany\n  <span class=\"token key atrule\">local</span><span class=\"token punctuation\">:</span>\n    <span class=\"token key atrule\">path</span><span class=\"token punctuation\">:</span> /opt/imanager<span class=\"token punctuation\">-</span>data/datanode<span class=\"token punctuation\">-</span>data  <span class=\"token comment\">#Point 2</span>\n  <span class=\"token key atrule\">persistentVolumeReclaimPolicy</span><span class=\"token punctuation\">:</span> Delete\n  <span class=\"token key atrule\">nodeAffinity</span><span class=\"token punctuation\">:</span>\n    <span class=\"token key atrule\">required</span><span class=\"token punctuation\">:</span>\n      <span class=\"token key atrule\">nodeSelectorTerms</span><span class=\"token punctuation\">:</span>\n        <span class=\"token punctuation\">-</span> <span class=\"token key atrule\">matchExpressions</span><span class=\"token punctuation\">:</span>\n          <span class=\"token punctuation\">-</span> <span class=\"token key atrule\">key</span><span class=\"token punctuation\">:</span> kubernetes.io/hostname\n            <span class=\"token key atrule\">operator</span><span class=\"token punctuation\">:</span> In\n            <span class=\"token key atrule\">values</span><span class=\"token punctuation\">:</span>\n              <span class=\"token punctuation\">-</span> node1   <span class=\"token comment\">#Point 3</span></code></pre></div>\n<p>The places need to be modified are marked by ’#’ on the above:</p>\n<ul>\n<li>Point 1: Specify the name of the PV.</li>\n<li>\n<p>Point 2: The actual path to store the HBase data, please create the directory first. If you want to create multiple PVs on one node, please create multiple directories and modify the paths to the different directories.</p>\n<p>Use the command below to create directory on the node(replace the path by your actual setting):</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">mkdir -p /opt/imanager-data/datanode-data</code></pre></div>\n</li>\n<li>Point 3: Fill in the name of the node of Kubernetes(the node should be available to scheduling).</li>\n</ul>\n<p>(3) Execute the command on the Kubernetes master node after modifying:</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"gatsby-code-sh\"><code class=\"gatsby-code-sh\">kubectl apply -f hbase-datanode-local-volume.yaml</code></pre></div>\n<blockquote>\n<p>Notes:  </p>\n<ol>\n<li>The number of PVs should be the same as the number of dataNodes in HBase environment, the default is 3. If you scaled the node, please created the the same number of PVs.  </li>\n<li>The PV could be created on any node of Kubernetes(specified by #Third), recommended to create on different nodes.  </li>\n<li>The PV could be created before opening/scaling the HBase, or after opening/scaling the HBase.</li>\n</ol>\n</blockquote>\n</li>\n</ol>","frontmatter":{"title":"GIS Cloud Suite","next":null,"prev":null},"fields":{"path":"content/microservices/FAQ.en.md","slug":"/en/microservices/FAQ/","langKey":"en"}}},"pageContext":{"slug":"/en/microservices/FAQ/"}}}