Kubernetes(k8s) 配置 Nginx

k8s 安裝教程請參考:http://www.javashuo.com/article/p-prmsiugp-mo.htmlhtml

Nginx安裝配置參考: https://www.cnblogs.com/puroc/p/5764330.htmlnode

 

1、環境配置:nginx

master:192.168.0.38web

node1:    192.168.0.39docker

node2:    192.168.0.40api

安裝完後用 kubectl get node 查看一下bash

2、建立configMapapp

kubectl create configmap confnginx --from-file nginx.conftcp

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                        '$status $body_bytes_sent "$http_referer" '
                        '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    #include /etc/nginx/conf.d/*.conf;

server {
       listen                    80;
       server_name               localhost;
       root                      /home/wwwroot/test;
       index                     index.html;
}
}

  

 

在兩個Node上新建咱們的web訪問目錄: spa

 

 

 

 

3、建立nginx-rc.yaml

Replication Controller簡稱RC,它可以保證Pod持續運行,而且在任什麼時候候都有指定數量的Pod副本,在此基礎上提供一些高級特性,好比滾動升級和彈性伸縮。

 

apiVersion: v1 kind: ReplicationController metadata: name: nginx-controller spec: replicas: 2 selector: name: nginx template: metadata: labels: name: nginx spec: containers: - name: nginx image: docker.io/nginx:alpine ports: - containerPort: 80 volumeMounts: - mountPath: /etc/nginx/nginx.conf name: nginx-config subPath: nginx.conf - mountPath: /home/wwwroot/test name: nginx-data volumes: - name: nginx-config configMap: name: confnginx - name: nginx-data hostPath: path: /home/wwwroot/hello

 

kubectl create -f nginx-rc.yaml

 

 

 

4、建立nginx-svc.yaml

 

apiVersion: v1 kind: Service metadata: name: nginx-service-nodeport spec: ports: - port: 8000 targetPort: 80 protocol: TCP nodePort: 30080 #外網訪問端口 type: NodePort #這個是端口類型 selector: name: nginx

 

  

kubectl create -f nginx-service.yaml

 

 

5、驗證

 

 

相關文章
相關標籤/搜索