您现在的位置是:首页 > 文章详情

k8s中将Jenkins安装到master节点上的yaml

日期:2019-06-01点击:634

Node

将 pod 指定到特定的 node上有几种方式,使用label是个很好的方法,在执行前需要给每个node打个标签命令如下

$ kubectl label node master nodename=master

这句命令的意思是给master节点上打上 nodename=master 的标签,如此可以为其他节点也打上各自的标签

yaml 配置

--- kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1beta1 metadata: name: traefik-ingress-controller rules: - apiGroups: - "" resources: - services - endpoints - secrets verbs: - get - list - watch - apiGroups: - extensions resources: - ingresses verbs: - get - list - watch --- kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1beta1 metadata: name: traefik-ingress-controller roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: traefik-ingress-controller subjects: - kind: ServiceAccount name: traefik-ingress-controller namespace: kube-system --- apiVersion: v1 kind: ServiceAccount metadata: name: traefik-ingress-controller namespace: kube-system --- kind: DaemonSet apiVersion: extensions/v1beta1 metadata: name: traefik-ingress-controller namespace: kube-system labels: k8s-app: traefik-ingress-lb spec: template: metadata: labels: k8s-app: traefik-ingress-lb name: traefik-ingress-lb spec: serviceAccountName: traefik-ingress-controller terminationGracePeriodSeconds: 60 hostNetwork: true containers: - image: traefik name: traefik-ingress-lb ports: - name: http containerPort: 80 hostPort: 80 - name: admin containerPort: 8080 securityContext: capabilities: drop: - ALL add: - NET_BIND_SERVICE args: - --api - --kubernetes - --logLevel=INFO --- apiVersion: v1 kind: Service metadata: name: traefik-web-ui namespace: kube-system spec: selector: k8s-app: traefik-ingress-lb ports: - name: web port: 80 targetPort: 8080 --- apiVersion: apps/v1 kind: Deployment metadata: name: jenkins-deployment namespace: kube-system labels: app: jenkins spec: replicas: 1 selector: matchLabels: app: jenkins template: metadata: labels: app: jenkins spec: terminationGracePeriodSeconds: 60 containers: - name: jenkins image: jenkins/jenkins:lts imagePullPolicy: IfNotPresent env: - name: JENKINS_OPTS value: "--prefix=/jenkins" ports: - name: web containerPort: 8080 protocol: TCP - name: agent containerPort: 50000 protocol: TCP volumeMounts: - name: jenkins-home mountPath: /var/jenkins_home volumes: - name: jenkins-home hostPath: path: /root/jenkins-home nodeSelector: nodename: master --- apiVersion: v1 kind: Service metadata: name: jenkins-service namespace: kube-system labels: app: jenkins spec: ports: - port: 8888 targetPort: 8080 name: web - port: 50000 targetPort: 50000 name: agent selector: app: jenkins --- apiVersion: extensions/v1beta1 kind: Ingress metadata: name: traefik-web-ui namespace: kube-system annotations: kubernetes.io/ingress.class: traefik traefik.frontend.rule.type: PathPrefixStrip spec: rules: - host: c4.k8s.com http: paths: - path: /ingress backend: serviceName: traefik-web-ui servicePort: web --- apiVersion: extensions/v1beta1 kind: Ingress metadata: name: jenkins-ingress namespace: kube-system annotations: kubernetes.io/ingress.class: traefik traefik.ingress.kubernetes.io/app-root: /jenkins traefik.ingress.kubernetes.io/rule-type: PathPrefix traefik.frontend.passHostHeader: "true" spec: rules: - host: c4.k8s.com http: paths: - path: /jenkins backend: serviceName: jenkins-service servicePort: web
原文链接:https://yq.aliyun.com/articles/704371
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章