Dict.CN 在线词典, 英语学习, 在线翻译 ------------- MyGitee My腾云code

Happy_EveryDay

可以平凡 不可以平庸 无爱则无忧,无欲则无求,无怒而无敌,无怨才是佛。所有烦恼,都是放不下的执著 开源技群 328035181 MyGitee

Service大全 20220502

10、service 大全

 

                1)、常用
#### kubectl get pods -o wide
pod:统一访问入口
pod组(负载均衡)
pod组(后)---->统一访问入口(前)

 

 

 

 

 

 

pod1 pod2 pod3 labels:
app:nginx

service selector:
app:nginx

 

 

 

 

 

 

 



######kubectl get ep 查看pod组

###### kubectl get service

 

 

 

  ###### 查看service  yaml##### kubectl   get service web -o yaml

 

 

 

###### 查看 app:nginx#######pods
kubectl get pods -l app=nginx

 

 

 

 

            2)、创建
i)、######service.yaml#####创建 kubectl apply -f service.yaml
https://kubernetes.io/docs/concepts/services-networking/service/

 

 ###### kubectl   get deployment###################

 ###### kubectl   get svc###################

 

 

###查看pods lables### kubectl   get pods --show-labels############

 

 

 

 

 

 

 

 

 

vi service.yaml
--------------------------------------------------------------------
apiVersion: v1
kind: Service
metadata:
name:pod-test
spec:
selector:
app: nginx #关联pod 标签
ports:
- protocol: TCP
port: 8888               #Service 端口
targetPort: 80 #容器 端口
type: ClusterIP #端口网络类型

 

 

 

############deployment:pod-test app: nginx#######
##############kubectl apply -f service.yaml#######
###### kubectl get svc############

http://192.168.254.149:32658/

 

 


###### kubectl get service

  ######  kubectl   get ep

 

 

 

 

 

 

 

 

####扩容##  kubectl   scale deployment pod-test --replicas=6

 

 

 

####kubectl get pods
#### kubectl get ep -w
#### kubectl logs

 

 

 

 

 

 

3)、type: ClusterIP NodePort #端口网络类型
###### kubectl get svc############查看端对内、外端口###

 


i)、ClusterIP 对内 VIP

 

 


如node2\node3\pod可访
#####vi service.yaml#####type: ClusterIP

 

 

##############kubectl apply -f service.yaml#######

###### kubectl get svc

 

 

 #####################ClusterIP 对内#################service:pod-test########

 k8s-master   curl 10.1.164.21:8888

 

 k8s-node2   curl 10.1.164.21:8888

 

 k8s-node3   curl 10.1.164.21:8888

 

 

 

kubectl get ep
kubectl get pods
kubectl exec -it my-pod2 -- sh

 

 

kubectl run bs --image=busybox -- sleep 24h
####kubectl get pods

 

   kubectl exec -it   bs -- sh  ##进入容bs

    wget 10.1.164.21:8888

 

 

 

 

ii)、NodePort 对外

端口范围 30000~32767

 

 

vi service.yaml###########type: NodePort

##############kubectl apply -f service.yaml#######


--------------------------------------------------------------------
spec:
selector:
app: web           #关联pod 标签
ports:
- port: 8888     #Service 端口
protocol: TCP
targetPort: 80     #容器 端口
nodePort: 30009
type: NodePort #端口网络类型

 

 

 

 

####kubectl apply -f service.yaml#######

 

 


####kubectl get  service

 

 


####kubectl get svc

 

 

 

 

 

#####################NodePort 对内#service:pod-test########
 内网 k8s-master curl 10.1.164.21:8888

 

 

外网 k8s-master    http://192.168.254.149:30401/
        k8s-node2      http://192.168.254.154:30401/
         k8s-node3       http://192.168.254.155:30401/

 

 

 

 

 

 

 

30401端口监听####k8s-maste/k8s-node2/k8s-node3
ss -anpt |grep 30401

 

 

 

 

 

 

 

 

 

########nodePort: 30002 自定义端口#####********************************************************************************************************************************
vi service.yaml#####type: NodePort   app:nginx
##############kubectl apply -f service.yaml#######

####kubectl get service
####kubectl get svc

 

 

 

外网 k8s-master http://192.168.254.149:30002/
  k8s-node2 http://192.168.254.154:30002/
  k8s-node3 http://192.168.254.155:30002/

 

 

 

 

 

 

 

 

 

 

 ********************************************************************************************************************************

 

 

 

 

 

 

     iii)、LoadBalancer 对外
      云平台:负载均衡   EXTERNAL-IP

                 

 

   

 

 

 

 

posted on 2022-05-02 19:07  cn2025  阅读(61)  评论(0)    收藏  举报

导航