Deploy GitHub Pages
This commit is contained in:
parent
7e650e1e52
commit
9b2a20c414
3 changed files with 14 additions and 14 deletions
|
@ -7,19 +7,19 @@ free to use those subdirectories and get the manifest(s) related to their K8S ve
|
|||
<span class=go> --repo https://kubernetes.github.io/ingress-nginx \</span>
|
||||
<span class=go> --namespace ingress-nginx --create-namespace</span>
|
||||
</code></pre></div> <p>It will install the controller in the <code>ingress-nginx</code> namespace, creating that namespace if it doesn't already exist.</p> <div class="admonition info"> <p class=admonition-title>Info</p> <p>This command is <em>idempotent</em>:</p> <ul> <li>if the ingress controller is not installed, it will install it,</li> <li>if the ingress controller is already installed, it will upgrade it.</li> </ul> </div> <p><strong>If you want a full list of values that you can set, while installing with Helm,</strong> then run:</p> <div class=highlight><pre><span></span><code><span class=go>helm show values ingress-nginx --repo https://kubernetes.github.io/ingress-nginx</span>
|
||||
</code></pre></div> <p>!!! helm install on AWS/GCP/Azure/Other providers There have been too many attempts at using helm to install the controller on the cloud infra like AWS/GCP/Azure/Other. The ingress-nginx-controller helm-chart is a generic install out of the box. The default set of helm values are not configured for installing on any infra provider. The annotations that are applicable to the cloud provider must be customized by the users. Link to AWS LB Constroller https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.2/guide/service/annotations/ Examples of some annotations needed for the service resource of --type LoadBalancer on AWS are below</p> <div class=highlight><pre><span></span><code> annotations:
|
||||
service.beta.kubernetes.io/aws-load-balancer-scheme: "internet-facing"
|
||||
service.beta.kubernetes.io/aws-load-balancer-backend-protocol: tcp
|
||||
service.beta.kubernetes.io/aws-load-balancer-cross-zone-load-balancing-enabled: "true"
|
||||
service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: "ip"
|
||||
service.beta.kubernetes.io/aws-load-balancer-type: nlb
|
||||
service.beta.kubernetes.io/aws-load-balancer-manage-backend-security-group-rules: "true"
|
||||
service.beta.kubernetes.io/aws-load-balancer-access-log-enabled: "true"
|
||||
service.beta.kubernetes.io/aws-load-balancer-security-groups: "sg-something1 sg-something2"
|
||||
service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-name: "somebucket"
|
||||
service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-prefix: "ingress-nginx"
|
||||
service.beta.kubernetes.io/aws-load-balancer-access-log-emit-interval: "5"
|
||||
</code></pre></div> <p><strong>If you don't have Helm</strong> or if you prefer to use a YAML manifest, you can run the following command instead:</p> <div class=highlight><pre><span></span><code><span class=go>kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.10.1/deploy/static/provider/cloud/deploy.yaml</span>
|
||||
</code></pre></div> <div class="admonition attention"> <p class=admonition-title>Helm install on AWS/GCP/Azure/Other providers</p> <p>The <em>ingress-nginx-controller helm-chart is a generic install out of the box</em>. The default set of helm values is <strong>not</strong> configured for installation on any infra provider. The annotations that are applicable to the cloud provider must be customized by the users.<br> See <a href=https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.2/guide/service/annotations/ >AWS LB Constroller</a>.<br> Examples of some annotations needed for the service resource of <code>--type LoadBalancer</code> on AWS are below: <div class=highlight><pre><span></span><code><span class=w> </span><span class=nt>annotations</span><span class=p>:</span>
|
||||
<span class=w> </span><span class=nt>service.beta.kubernetes.io/aws-load-balancer-scheme</span><span class=p>:</span><span class=w> </span><span class=s>"internet-facing"</span>
|
||||
<span class=w> </span><span class=nt>service.beta.kubernetes.io/aws-load-balancer-backend-protocol</span><span class=p>:</span><span class=w> </span><span class="l l-Scalar l-Scalar-Plain">tcp</span>
|
||||
<span class=w> </span><span class=nt>service.beta.kubernetes.io/aws-load-balancer-cross-zone-load-balancing-enabled</span><span class=p>:</span><span class=w> </span><span class=s>"true"</span>
|
||||
<span class=w> </span><span class=nt>service.beta.kubernetes.io/aws-load-balancer-nlb-target-type</span><span class=p>:</span><span class=w> </span><span class=s>"ip"</span>
|
||||
<span class=w> </span><span class=nt>service.beta.kubernetes.io/aws-load-balancer-type</span><span class=p>:</span><span class=w> </span><span class="l l-Scalar l-Scalar-Plain">nlb</span>
|
||||
<span class=w> </span><span class=nt>service.beta.kubernetes.io/aws-load-balancer-manage-backend-security-group-rules</span><span class=p>:</span><span class=w> </span><span class=s>"true"</span>
|
||||
<span class=w> </span><span class=nt>service.beta.kubernetes.io/aws-load-balancer-access-log-enabled</span><span class=p>:</span><span class=w> </span><span class=s>"true"</span>
|
||||
<span class=w> </span><span class=nt>service.beta.kubernetes.io/aws-load-balancer-security-groups</span><span class=p>:</span><span class=w> </span><span class=s>"sg-something1</span><span class=nv> </span><span class=s>sg-something2"</span>
|
||||
<span class=w> </span><span class=nt>service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-name</span><span class=p>:</span><span class=w> </span><span class=s>"somebucket"</span>
|
||||
<span class=w> </span><span class=nt>service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-prefix</span><span class=p>:</span><span class=w> </span><span class=s>"ingress-nginx"</span>
|
||||
<span class=w> </span><span class=nt>service.beta.kubernetes.io/aws-load-balancer-access-log-emit-interval</span><span class=p>:</span><span class=w> </span><span class=s>"5"</span>
|
||||
</code></pre></div></p> </div> <p><strong>If you don't have Helm</strong> or if you prefer to use a YAML manifest, you can run the following command instead:</p> <div class=highlight><pre><span></span><code><span class=go>kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.10.1/deploy/static/provider/cloud/deploy.yaml</span>
|
||||
</code></pre></div> <div class="admonition info"> <p class=admonition-title>Info</p> <p>The YAML manifest in the command above was generated with <code>helm template</code>, so you will end up with almost the same resources as if you had used Helm to install the controller.</p> </div> <div class="admonition attention"> <p class=admonition-title>Attention</p> <p>If you are running an old version of Kubernetes (1.18 or earlier), please read <a href=#running-on-Kubernetes-versions-older-than-1.19>this paragraph</a> for specific instructions. Because of api deprecations, the default manifest may not work on your cluster. Specific manifests for supported Kubernetes versions are available within a sub-folder of each provider.</p> </div> <h3 id=firewall-configuration>Firewall configuration<a class=headerlink href=#firewall-configuration title="Permanent link"> ¶</a></h3> <p>To check which ports are used by your installation of ingress-nginx, look at the output of <code>kubectl -n ingress-nginx get pod -o yaml</code>. In general, you need:</p> <ul> <li>Port 8443 open between all hosts on which the kubernetes nodes are running. This is used for the ingress-nginx <a href=https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/ >admission controller</a>.</li> <li>Port 80 (for HTTP) and/or 443 (for HTTPS) open to the public on the kubernetes nodes to which the DNS of your apps are pointing.</li> </ul> <h3 id=pre-flight-check>Pre-flight check<a class=headerlink href=#pre-flight-check title="Permanent link"> ¶</a></h3> <p>A few pods should start in the <code>ingress-nginx</code> namespace:</p> <div class=highlight><pre><span></span><code><span class=go>kubectl get pods --namespace=ingress-nginx</span>
|
||||
</code></pre></div> <p>After a while, they should all be running. The following command will wait for the ingress controller pod to be up, running, and ready:</p> <div class=highlight><pre><span></span><code><span class=go>kubectl wait --namespace ingress-nginx \</span>
|
||||
<span class=go> --for=condition=ready pod \</span>
|
||||
|
|
File diff suppressed because one or more lines are too long
BIN
sitemap.xml.gz
BIN
sitemap.xml.gz
Binary file not shown.
Loading…
Reference in a new issue