{"id":39193,"date":"2024-04-24T10:11:52","date_gmt":"2024-04-24T10:11:52","guid":{"rendered":"https:\/\/accuweb.cloud\/resource\/?post_type=faq&#038;p=39193"},"modified":"2026-02-19T07:36:44","modified_gmt":"2026-02-19T07:36:44","slug":"ways-to-delpoy-kubernetes-applications","status":"publish","type":"faq","link":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications","title":{"rendered":"Ways to Deploy Kubernetes Applications in AccuWeb.Cloud"},"content":{"rendered":"<h2 class=\"ack-h2\">Ways to Deploy Kubernetes Applications in AccuWeb.Cloud<\/h2>\n<p>In this post, we aim to demonstrate the process of exposing applications via a public IP address linked to one of the nodes within a <a class=\"ack-link-color\" href=\"https:\/\/accuweb.cloud\/application\/kubernetes-hosting\" target=\"_blank\" rel=\"noopener\">Kubernetes cluster<\/a> environment in AccuWeb.Cloud PaaS. This can be achieved through two potential methods: attaching the IP address to a Dedicated Load Balancer or a K8s Worker node.<\/p>\n<h2 class=\"ack-h2\">Dedicated Load Balancer for Application Access<\/h2>\n<p>To begin, install the Kubernetes cluster from the AccuWeb.Cloud Marketplace and deploy the application. For instance, let&#8217;s proceed with deploying a single web application as an example.<\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Change-Environment-Topology-1.png\"><img fetchpriority=\"high\" decoding=\"async\" class=\"ack-article-image aligncenter wp-image-39195 size-full\" title=\"Change Environment Topology\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Change-Environment-Topology-1.png\" alt=\"Change Environment Topology\" width=\"1282\" height=\"585\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Change-Environment-Topology-1.png 1282w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Change-Environment-Topology-1-300x137.png 300w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Change-Environment-Topology-1-1024x467.png 1024w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Change-Environment-Topology-1-768x350.png 768w\" sizes=\"(max-width: 1282px) 100vw, 1282px\" \/><\/a><\/p>\n<p>Next, click on &#8220;<strong>Change Environment Topology<\/strong>&#8221; next to your Kubernetes cluster. In the opened window, add a Dedicated Load Balancer node and attach a public IP address to it.<\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/NGINX-load-balancer-node.png\"><img decoding=\"async\" class=\"ack-article-image aligncenter wp-image-39196 size-full\" title=\"Enable IPv4\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/NGINX-load-balancer-node.png\" alt=\"Enable IPv4\" width=\"932\" height=\"566\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/NGINX-load-balancer-node.png 932w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/NGINX-load-balancer-node-300x182.png 300w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/NGINX-load-balancer-node-768x466.png 768w\" sizes=\"(max-width: 932px) 100vw, 932px\" \/><\/a><\/p>\n<p>Here, we use the NGINX load balancer node, although you have the option to select any other available option, such as HAProxy, LS Web ADC, or Varnish. After the topology is changed, it should resemble the following configuration:<\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Kubernetes-with-NGINX-Load-Balancer.png\"><img decoding=\"async\" class=\"ack-article-image aligncenter wp-image-39197 size-full\" title=\"Changed Environment Topology\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Kubernetes-with-NGINX-Load-Balancer.png\" alt=\"Changed Environment Topology\" width=\"1283\" height=\"663\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Kubernetes-with-NGINX-Load-Balancer.png 1283w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Kubernetes-with-NGINX-Load-Balancer-300x155.png 300w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Kubernetes-with-NGINX-Load-Balancer-1024x529.png 1024w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Kubernetes-with-NGINX-Load-Balancer-768x397.png 768w\" sizes=\"(max-width: 1283px) 100vw, 1283px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Dedicated-Load-Balancer-for-Application-Access.png\"><img loading=\"lazy\" decoding=\"async\" class=\"ack-article-image aligncenter wp-image-39238 size-full\" title=\"Access application through Load Balancer\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Dedicated-Load-Balancer-for-Application-Access.png\" alt=\"Access application through Load Balancer\" width=\"768\" height=\"392\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Dedicated-Load-Balancer-for-Application-Access.png 768w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Dedicated-Load-Balancer-for-Application-Access-300x153.png 300w\" sizes=\"(max-width: 768px) 100vw, 768px\" \/><\/a><\/p>\n<p>Following that, create an A record for a custom domain using the IP address added in the previous step. For example, you can create an A record for the domain &#8220;<strong>webapp.accuweb.cloud<\/strong>.&#8221;<\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/DNS-Management-for-AccuWeb.Cloud_.png\"><img loading=\"lazy\" decoding=\"async\" class=\"ack-article-image aligncenter wp-image-39198 size-full\" title=\"DNS Setup\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/DNS-Management-for-AccuWeb.Cloud_.png\" alt=\"DNS Setup\" width=\"1279\" height=\"729\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/DNS-Management-for-AccuWeb.Cloud_.png 1279w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/DNS-Management-for-AccuWeb.Cloud_-300x171.png 300w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/DNS-Management-for-AccuWeb.Cloud_-1024x584.png 1024w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/DNS-Management-for-AccuWeb.Cloud_-768x438.png 768w\" sizes=\"(max-width: 1279px) 100vw, 1279px\" \/><\/a><\/p>\n<p>Now, you can bind the custom domain to the K8s cluster and initiate a request to issue a trusted Let\u2019s Encrypt SSL certificate to secure the applications\u2019 traffic.<\/p>\n<p>Navigate to the load balancer Add-Ons and locate the <strong>Let\u2019s Encrypt Free SSL option<\/strong>.<\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Lets-Encrypt-Free-SSL-option.png\"><img loading=\"lazy\" decoding=\"async\" class=\"ack-article-image aligncenter wp-image-39199 size-full\" title=\"Let's Encrypt Free SSL Add-On\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Lets-Encrypt-Free-SSL-option.png\" alt=\"Let's Encrypt Free SSL Add-On\" width=\"1600\" height=\"838\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Lets-Encrypt-Free-SSL-option.png 1600w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Lets-Encrypt-Free-SSL-option-300x157.png 300w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Lets-Encrypt-Free-SSL-option-1024x536.png 1024w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Lets-Encrypt-Free-SSL-option-768x402.png 768w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Lets-Encrypt-Free-SSL-option-1536x804.png 1536w\" sizes=\"(max-width: 1600px) 100vw, 1600px\" \/><\/a><\/p>\n<p>Enter the custom domain name that we have chosen and apply it accordingly.<\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Enter-Custom-Domain.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-39200 size-full\" title=\"Enter External Domain Name\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Enter-Custom-Domain.png\" alt=\"Enter External Domain Name\" width=\"638\" height=\"196\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Enter-Custom-Domain.png 638w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Enter-Custom-Domain-300x92.png 300w\" sizes=\"(max-width: 638px) 100vw, 638px\" \/><\/a><\/p>\n<p>Now, the Webapp application is accessible using the custom domain name https:\/\/webapp.accuweb.cloud, and the traffic is encrypted with a valid Let\u2019s Encrypt SSL certificate.<\/p>\n<div class=\"article-space\"><\/div>\n\t\t<div data-elementor-type=\"section\" data-elementor-id=\"38668\" class=\"elementor elementor-38668\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\" data-elementor-post-type=\"elementor_library\">\n\t\t\t        <section class=\"elementor-section elementor-top-section elementor-element elementor-element-882321f elementor-section-boxed elementor-section-height-default elementor-section-height-default ct-header-fixed-none ct-row-max-none\" data-id=\"882321f\" data-element_type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n            \n                        <div class=\"elementor-container elementor-column-gap-default \">\n                    <div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7cc79cc\" data-id=\"7cc79cc\" data-element_type=\"column\">\n        <div class=\"elementor-widget-wrap elementor-element-populated\">\n                    \n        \t\t<div class=\"elementor-element elementor-element-e31b40f elementor-widget elementor-widget-shortcode\" data-id=\"e31b40f\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t            <\/div>\n        <\/div>\n                    <\/div>\n        <\/section>\n        \t\t<\/div>\n\t\t\n<div class=\"article-space\"><\/div>\n<h2 class=\"ack-h2\">Public IP Address Allocation to Kubernetes Worker Nodes for Application Access<\/h2>\n<p>Let&#8217;s explore an alternative method for making applications available outside of the Kubernetes cluster. This approach involves directly accessing the application through a public IP address attached to one of the worker nodes.<\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Public-IP-Address-Allocation.png\"><img loading=\"lazy\" decoding=\"async\" class=\"ack-article-image aligncenter wp-image-39239 size-full\" title=\"Access application through Public IP\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Public-IP-Address-Allocation.png\" alt=\"Access application through Public IP\" width=\"768\" height=\"510\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Public-IP-Address-Allocation.png 768w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Public-IP-Address-Allocation-300x199.png 300w\" sizes=\"(max-width: 768px) 100vw, 768px\" \/><\/a><\/p>\n<p>Let\u2019s continue with the same cluster where the webapp application is deployed.<\/p>\n<p>Click on &#8220;<strong>Change Environment Topology<\/strong>&#8221; and proceed to add the public IP address to the worker node, following the same steps as described above.<\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Node-4589-Settings.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-39201 size-full\" title=\"Access Public IP\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Node-4589-Settings.png\" alt=\"Access Public IP\" width=\"475\" height=\"249\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Node-4589-Settings.png 475w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Node-4589-Settings-300x157.png 300w\" sizes=\"(max-width: 475px) 100vw, 475px\" \/><\/a><\/p>\n<p>Create an A record for a custom domain mapping to the newly added IP address. Use a domain name different from the one used in the previous chapter. For example: <strong>webapp-worker.accuweb.cloud<\/strong>.<\/p>\n<p>Next, navigate to the add-ons section of the Control Plane node and install the <strong>Certificate Manager<\/strong>. This installation will include a cert-manager controller, which will also install an NGINX ingress controller with LoadBalancer service type. This NGINX ingress controller will hold the IP attached to the worker node and will serve the &#8220;<strong>nginx-cert<\/strong>&#8221; ingress class resources.<\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Control-Panel.png\"><img loading=\"lazy\" decoding=\"async\" class=\"ack-article-image aligncenter wp-image-39202 size-full\" title=\"Add-Ons\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Control-Panel.png\" alt=\"Add-Ons\" width=\"1282\" height=\"604\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Control-Panel.png 1282w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Control-Panel-300x141.png 300w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Control-Panel-1024x482.png 1024w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Control-Panel-768x362.png 768w\" sizes=\"(max-width: 1282px) 100vw, 1282px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Install-Certificate-Manager.png\"><img loading=\"lazy\" decoding=\"async\" class=\"ack-article-image aligncenter wp-image-39203 size-full\" title=\"Certificate Manager Add-On\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Install-Certificate-Manager.png\" alt=\"Certificate Manager Add-On\" width=\"1600\" height=\"834\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Install-Certificate-Manager.png 1600w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Install-Certificate-Manager-300x156.png 300w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Install-Certificate-Manager-1024x534.png 1024w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Install-Certificate-Manager-768x400.png 768w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Install-Certificate-Manager-1536x801.png 1536w\" sizes=\"(max-width: 1600px) 100vw, 1600px\" \/><\/a><\/p>\n<p>Enter the custom domain name and apply it accordingly.<\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Add-Domain-for-Certificate-Manager.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-39204 size-full\" title=\"Add External DNS name\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Add-Domain-for-Certificate-Manager.png\" alt=\"Add External DNS name\" width=\"646\" height=\"247\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Add-Domain-for-Certificate-Manager.png 646w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Add-Domain-for-Certificate-Manager-300x115.png 300w\" sizes=\"(max-width: 646px) 100vw, 646px\" \/><\/a><\/p>\n<p>After installation, the add-on installs a test application called &#8220;<strong>helloworld-cert<\/strong>.&#8221; Let&#8217;s delete the resources it occupies:<\/p>\n<pre><code class=\"language-javascript\">$ kubectl delete deploy hello-cert-manager\r\n$ kubectl delete svc hello-cert-manager\r\n$ kubectl delete ing helloworld-cert<\/code><\/pre>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Delete-Resources.png\"><img loading=\"lazy\" decoding=\"async\" class=\"ack-article-image aligncenter wp-image-39205 size-full\" title=\"Test Application\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Delete-Resources.png\" alt=\"Test Application\" width=\"717\" height=\"191\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Delete-Resources.png 717w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/Delete-Resources-300x80.png 300w\" sizes=\"(max-width: 717px) 100vw, 717px\" \/><\/a><\/p>\n<p>Finally, create an ingress resource named &#8220;<strong>webapp-worker<\/strong>&#8221; that will terminate application SSL traffic and handle routing to the webapp service. For example, you can create a file named &#8220;<strong>webapp-worker-ingress.yaml<\/strong>&#8221; with the following content:<\/p>\n<pre><code class=\"language-javascript\">apiVersion: networking.k8s.io\/v1\r\nkind: Ingress\r\nmetadata:\r\n\u00a0\u00a0name: webapp-worker\r\n\u00a0\u00a0namespace: default\r\n\u00a0\u00a0annotations:\r\n\u00a0\u00a0\u00a0\u00a0kubernetes.io\/ingress.class: nginx-cert\r\n\u00a0\u00a0\u00a0\u00a0cert-manager.io\/cluster-issuer: \"letsencrypt-prod\"\r\n\u00a0\u00a0\u00a0\u00a0kubernetes.io\/tls-acme: \"true\"\r\n\u00a0\u00a0\u00a0\u00a0nginx.ingress.kubernetes.io\/affinity: \"cookie\"\r\n\u00a0\u00a0\u00a0\u00a0nginx.ingress.kubernetes.io\/affinity-mode: \"persistent\"\r\n\u00a0\u00a0\u00a0\u00a0nginx.ingress.kubernetes.io\/session-cookie-expires: \"172800\"\r\n\u00a0\u00a0\u00a0\u00a0nginx.ingress.kubernetes.io\/session-cookie-max-age: \"172800\"\r\nspec:\r\n\u00a0\u00a0tls:\r\n\u00a0\u00a0- hosts:\r\n\u00a0\u00a0\u00a0\u00a0- webapp-worker.accuweb.cloud\r\n\u00a0\u00a0\u00a0\u00a0secretName: external-domain-tls\r\n\u00a0\u00a0rules:\r\n\u00a0\u00a0- host: webapp-worker.accuweb.cloud\r\n\u00a0\u00a0\u00a0\u00a0http:\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0paths:\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0- path: \/\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0pathType: ImplementationSpecific\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0backend:\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0service:\u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0name: webapp\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0port:\u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0number: 80<\/code><\/pre>\n<p>Once you have created the &#8220;<strong>webapp-worker-ingress.yaml<\/strong>&#8221; file, you can apply it to your Kubernetes cluster using the following command:<\/p>\n<pre><code class=\"language-javascript\">kubectl apply -f webapp-worker-ingress.yaml<\/code><\/pre>\n<p>This command will apply the configuration defined in the &#8220;<strong>webapp-worker-ingress.yaml<\/strong>&#8221; file to your <a class=\"ack-link-color\" href=\"https:\/\/accuweb.cloud\/application\/kubernetes-hosting\" target=\"_blank\" rel=\"noopener\">Kubernetes cluster<\/a>, creating the Ingress resource named &#8220;<strong>webapp-worker<\/strong>&#8221; for your web application.<\/p>\n<p>After creating the ingress, a Let&#8217;s Encrypt SSL certificate will be automatically issued for this domain name with Certificate Manager. Please wait for a minute and then check the availability of the application by accessing it using the custom domain name: <strong>https:\/\/webapp-worker.accuweb.cloud<\/strong>.<\/p>\n<p>Congratulations! You\u2019ve successfully exposed your application in two different ways. As a result, you should see two ingresses configured: one for accessing the application via the Dedicated Load Balancer and another for accessing it directly through the Kubernetes worker node&#8217;s public IP address.<\/p>\n<p><a href=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/kubectl-get-ing.png\"><img loading=\"lazy\" decoding=\"async\" class=\"ack-article-image aligncenter wp-image-39206 size-full\" title=\"Configured ingresses\" src=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/kubectl-get-ing.png\" alt=\"Configured ingresses\" width=\"895\" height=\"162\" srcset=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/kubectl-get-ing.png 895w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/kubectl-get-ing-300x54.png 300w, https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/kubectl-get-ing-768x139.png 768w\" sizes=\"(max-width: 895px) 100vw, 895px\" \/><\/a><\/p>\n<p>In a production environment, you typically need only one ingress, depending on the chosen implementation and your specific requirements. Choose the method that best suits your needs and use only that ingress for exposing your application to external traffic.<\/p>\n<div class=\"cta-btn-top-space\"><\/div>\n\t\t<div data-elementor-type=\"section\" data-elementor-id=\"38668\" class=\"elementor elementor-38668\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\" data-elementor-post-type=\"elementor_library\">\n\t\t\t        <section class=\"elementor-section elementor-top-section elementor-element elementor-element-882321f elementor-section-boxed elementor-section-height-default elementor-section-height-default ct-header-fixed-none ct-row-max-none\" data-id=\"882321f\" data-element_type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n            \n                        <div class=\"elementor-container elementor-column-gap-default \">\n                    <div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7cc79cc\" data-id=\"7cc79cc\" data-element_type=\"column\">\n        <div class=\"elementor-widget-wrap elementor-element-populated\">\n                    \n        \t\t<div class=\"elementor-element elementor-element-e31b40f elementor-widget elementor-widget-shortcode\" data-id=\"e31b40f\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t            <\/div>\n        <\/div>\n                    <\/div>\n        <\/section>\n        \t\t<\/div>\n\t\t\n<div class=\"cta-btn-mob-space\"><\/div>\n","protected":false},"author":1,"featured_media":52879,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","class_list":["post-39193","faq","type-faq","status-publish","has-post-thumbnail","hentry","faq_topics-kb","faq_topics-kubernetes-hosting","faq_topics-product-documentation","faq_topics-public-ip-for-access-to-kubernetes"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.10 (Yoast SEO v24.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Two Ways to Access and Deploy Kubernetes Applications<\/title>\n<meta name=\"description\" content=\"Looking for a secure way to access your Kubernetes applications? Follow this tutorial to learn about k8s installation by AccuWeb.Cloud.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ways to Deploy Kubernetes Applications in AccuWeb.Cloud\" \/>\n<meta property=\"og:description\" content=\"Looking for a secure way to access your Kubernetes applications? Follow this tutorial to learn about k8s installation by AccuWeb.Cloud.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications\" \/>\n<meta property=\"og:site_name\" content=\"AccuWeb Cloud\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-19T07:36:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#article\",\"isPartOf\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications\"},\"author\":{\"name\":\"Jilesh Patadiya\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/a7a4cbe8405202b537509c757b588c58\"},\"headline\":\"Ways to Deploy Kubernetes Applications in AccuWeb.Cloud\",\"datePublished\":\"2024-04-24T10:11:52+00:00\",\"dateModified\":\"2026-02-19T07:36:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications\"},\"wordCount\":703,\"publisher\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/#organization\"},\"image\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#primaryimage\"},\"thumbnailUrl\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg\",\"inLanguage\":\"en-US\"},{\"@type\":[\"WebPage\",\"FAQPage\"],\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications\",\"url\":\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications\",\"name\":\"Two Ways to Access and Deploy Kubernetes Applications\",\"isPartOf\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#primaryimage\"},\"image\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#primaryimage\"},\"thumbnailUrl\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg\",\"datePublished\":\"2024-04-24T10:11:52+00:00\",\"dateModified\":\"2026-02-19T07:36:44+00:00\",\"description\":\"Looking for a secure way to access your Kubernetes applications? Follow this tutorial to learn about k8s installation by AccuWeb.Cloud.\",\"breadcrumb\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#primaryimage\",\"url\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg\",\"contentUrl\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg\",\"width\":1280,\"height\":720},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/accuweb.cloud\/resource\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ways to Deploy Kubernetes Applications in AccuWeb.Cloud\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#website\",\"url\":\"https:\/\/accuweb.cloud\/resource\/\",\"name\":\"AccuWeb Cloud\",\"description\":\"Cutting Edge Cloud Computing\",\"publisher\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/accuweb.cloud\/resource\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#organization\",\"name\":\"AccuWeb.Cloud\",\"url\":\"https:\/\/accuweb.cloud\/resource\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/accuwebcloud_logo_black_tagline.jpg\",\"contentUrl\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/accuwebcloud_logo_black_tagline.jpg\",\"width\":156,\"height\":87,\"caption\":\"AccuWeb.Cloud\"},\"image\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/a7a4cbe8405202b537509c757b588c58\",\"name\":\"Jilesh Patadiya\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2cea2bdb5bbabb771ee67e96acad7396f25cb1a0c360b9bc4a9ac40cea9cd8b2?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2cea2bdb5bbabb771ee67e96acad7396f25cb1a0c360b9bc4a9ac40cea9cd8b2?s=96&d=mm&r=g\",\"caption\":\"Jilesh Patadiya\"},\"description\":\"Jilesh Patadiya, the visionary Co-Founder and Chief Technology Officer (CTO) behind AccuWeb.Cloud. Founder &amp; CTO at AccuWebHosting.com. He shares his web hosting insights on the AccuWeb.Cloud blog. He mostly writes on the latest web hosting trends, WordPress, storage technologies, and Windows and Linux hosting platforms.\",\"sameAs\":[\"https:\/\/accuweb.cloud\/resource\",\"https:\/\/www.facebook.com\/accuwebhosting\",\"https:\/\/www.instagram.com\/accuwebhosting\/\",\"https:\/\/www.linkedin.com\/company\/accuwebhosting\/\",\"https:\/\/x.com\/accuwebhosting\",\"https:\/\/www.youtube.com\/c\/Accuwebhosting\"],\"url\":\"https:\/\/accuweb.cloud\/resource\/author\/accuwebadmin\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Two Ways to Access and Deploy Kubernetes Applications","description":"Looking for a secure way to access your Kubernetes applications? Follow this tutorial to learn about k8s installation by AccuWeb.Cloud.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications","og_locale":"en_US","og_type":"article","og_title":"Ways to Deploy Kubernetes Applications in AccuWeb.Cloud","og_description":"Looking for a secure way to access your Kubernetes applications? Follow this tutorial to learn about k8s installation by AccuWeb.Cloud.","og_url":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications","og_site_name":"AccuWeb Cloud","article_modified_time":"2026-02-19T07:36:44+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#article","isPartOf":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications"},"author":{"name":"Jilesh Patadiya","@id":"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/a7a4cbe8405202b537509c757b588c58"},"headline":"Ways to Deploy Kubernetes Applications in AccuWeb.Cloud","datePublished":"2024-04-24T10:11:52+00:00","dateModified":"2026-02-19T07:36:44+00:00","mainEntityOfPage":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications"},"wordCount":703,"publisher":{"@id":"https:\/\/accuweb.cloud\/resource\/#organization"},"image":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#primaryimage"},"thumbnailUrl":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg","inLanguage":"en-US"},{"@type":["WebPage","FAQPage"],"@id":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications","url":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications","name":"Two Ways to Access and Deploy Kubernetes Applications","isPartOf":{"@id":"https:\/\/accuweb.cloud\/resource\/#website"},"primaryImageOfPage":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#primaryimage"},"image":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#primaryimage"},"thumbnailUrl":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg","datePublished":"2024-04-24T10:11:52+00:00","dateModified":"2026-02-19T07:36:44+00:00","description":"Looking for a secure way to access your Kubernetes applications? Follow this tutorial to learn about k8s installation by AccuWeb.Cloud.","breadcrumb":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#primaryimage","url":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg","contentUrl":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg","width":1280,"height":720},{"@type":"BreadcrumbList","@id":"https:\/\/accuweb.cloud\/resource\/articles\/ways-to-delpoy-kubernetes-applications#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/accuweb.cloud\/resource\/"},{"@type":"ListItem","position":2,"name":"Ways to Deploy Kubernetes Applications in AccuWeb.Cloud"}]},{"@type":"WebSite","@id":"https:\/\/accuweb.cloud\/resource\/#website","url":"https:\/\/accuweb.cloud\/resource\/","name":"AccuWeb Cloud","description":"Cutting Edge Cloud Computing","publisher":{"@id":"https:\/\/accuweb.cloud\/resource\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/accuweb.cloud\/resource\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/accuweb.cloud\/resource\/#organization","name":"AccuWeb.Cloud","url":"https:\/\/accuweb.cloud\/resource\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/accuweb.cloud\/resource\/#\/schema\/logo\/image\/","url":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/accuwebcloud_logo_black_tagline.jpg","contentUrl":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/accuwebcloud_logo_black_tagline.jpg","width":156,"height":87,"caption":"AccuWeb.Cloud"},"image":{"@id":"https:\/\/accuweb.cloud\/resource\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/a7a4cbe8405202b537509c757b588c58","name":"Jilesh Patadiya","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/2cea2bdb5bbabb771ee67e96acad7396f25cb1a0c360b9bc4a9ac40cea9cd8b2?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2cea2bdb5bbabb771ee67e96acad7396f25cb1a0c360b9bc4a9ac40cea9cd8b2?s=96&d=mm&r=g","caption":"Jilesh Patadiya"},"description":"Jilesh Patadiya, the visionary Co-Founder and Chief Technology Officer (CTO) behind AccuWeb.Cloud. Founder &amp; CTO at AccuWebHosting.com. He shares his web hosting insights on the AccuWeb.Cloud blog. He mostly writes on the latest web hosting trends, WordPress, storage technologies, and Windows and Linux hosting platforms.","sameAs":["https:\/\/accuweb.cloud\/resource","https:\/\/www.facebook.com\/accuwebhosting","https:\/\/www.instagram.com\/accuwebhosting\/","https:\/\/www.linkedin.com\/company\/accuwebhosting\/","https:\/\/x.com\/accuwebhosting","https:\/\/www.youtube.com\/c\/Accuwebhosting"],"url":"https:\/\/accuweb.cloud\/resource\/author\/accuwebadmin"}]}},"_links":{"self":[{"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/faq\/39193","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/faq"}],"about":[{"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/types\/faq"}],"author":[{"embeddable":true,"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/comments?post=39193"}],"version-history":[{"count":8,"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/faq\/39193\/revisions"}],"predecessor-version":[{"id":53354,"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/faq\/39193\/revisions\/53354"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/media\/52879"}],"wp:attachment":[{"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/media?parent=39193"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}