k8s入门操作

https://kubernetes.io/zh/docs/concepts/workloads/pods/#pods-and-controllers

我们先删除 之前安装过的副本

kubectk get all
kubectl delete deployment.apps/tomcat6
kubectl delete pod/tomcat6-new

先部署一个tomcat

kubectl create deployment tomcat6 --image=tomcat:6.0.53-jre8 --dry-run -o yaml > tomcat6-deployment.yaml
vi  tomcat6-deployment.yaml

apiVersion: apps/v1 kind: Deployment metadata: apiVersion: apps/v1 kind: Deployment metadata: labels: app: tomcat6 name: tomcat6 spec: apiVersion: apps/v1 kind: Deployment metadata: labels: app: tomcat6 name: tomcat6 spec: replicas: 3 selector: matchLabels: app: tomcat6 template: metadata: labels: app: tomcat6 spec: containers: - image: tomcat:6.0.53-jre8 name: tomcat
使用yml部署方式
kubectl apply -f tomcat6-deployment.yaml

 

部署成功

 

 

 

 

 

kubectl expose deployment tomcat6 --port=80 --target-port=8080 --type=NodePort --dry-run -o yaml

我们将下面这段代码复制到

apiVersion: v1
kind: Service
metadata:
  creationTimestamp: null
  labels:
    app: tomcat6
  name: tomcat6
spec:
  ports:
  - port: 80
    protocol: TCP
    targetPort: 8080
  selector:
    app: tomcat6

type: NodePort
vi tomcat6-deployment.yaml

 

 

 

我们将之前的部署删除
kubectl get all
kubectl delete deployment.apps/tomcat6
重新部署tomcat6
kubectl apply -f tomcat6-deployment.yaml

 

 

 ----

Ingress  可以实现基于域名的访问  如果其中一个pod宕机了 可以对外是透明的  负载均衡

 

 kubectl apply -f ingress-controller.yaml

 

 

 

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: web
spec:
  rules:
  - host: tomcat6.lcc.com
    http:
      paths:
        - backend:
            serviceName: tomcat6
            servicePort: 80



 

 我们在window  hosts文件中修改域名访问

 

 

 

posted @ 2022-07-17 13:14  花心大萝卜li  阅读(47)  评论(0)    收藏  举报