ToB企服应用市场:ToB评测及商务社交产业平台

标题: 云计算day12-Kubernetes_K8s_jenkins glusterfs(1),2024年最新再不了解你 [打印本页]

作者: 卖不甜枣    时间: 2024-8-5 17:11
标题: 云计算day12-Kubernetes_K8s_jenkins glusterfs(1),2024年最新再不了解你
先自我先容一下,小编浙江大学结业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己探索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术故步自封!
因此网络整理了一份《2024年最新大数据全套学习资料》,初志也很简朴,就是盼望能够资助到想自学提升又不知道该从何学起的朋友。





既有适合小白学习的零底子资料,也有适合3年以上履历的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比力多,这里只是将部门目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲门路、讲解视频,并且后续会持续更新
如果你必要这些资料,可以添加V获取:vip204888 (备注大数据)

正文

  1. #配置文件中的glusterfs名是用昨天创建好的wahaha
  2. [root@k8s-master gfs]# vim glusterfs-pv.yaml
  3. apiVersion: v1
  4. kind: PersistentVolume
  5. metadata:
  6.   name: gluster
  7.   labels:
  8.     type: glusterfs
  9. spec:
  10.   capacity:
  11.     storage: 20Gi
  12.   accessModes:
  13.     - ReadWriteMany
  14.   glusterfs:
  15.     endpoints: "glusterfs"
  16.     path: "wahaha"
  17.     readOnly: false
  18. [root@k8s-master gfs]# kubectl create -f glusterfs-pv.yaml
  19. persistentvolume "gluster" created
  20. [root@k8s-master gfs]# kubectl get pv
  21. NAME      CAPACITY   ACCESSMODES   RECLAIMPOLICY   STATUS      CLAIM     REASON    AGE
  22. gluster   20Gi       RWX           Retain          Available                       5s
复制代码
d:k8s_pvc.yaml
  1. [root@k8s-master gfs]# vim k8s\_pvc.yaml
  2. kind: PersistentVolumeClaim
  3. apiVersion: v1
  4. metadata:
  5.   name: tomcat-mysql
  6. spec:
  7.   accessModes:
  8.     - ReadWriteMany
  9.   resources:
  10.     requests:
  11.       storage: 20Gi
  12. [root@k8s-master gfs]# kubectl create -f k8s\_pvc.yaml
  13. persistentvolumeclaim "tomcat-mysql" created
  14. [root@k8s-master gfs]# kubectl get pvc
  15. NAME           STATUS    VOLUME    CAPACITY   ACCESSMODES   AGE
  16. tomcat-mysql   Bound     gluster   20Gi       RWX           9s
  17. [root@k8s-master gfs]# kubectl get pvc -n default
  18. NAME           STATUS    VOLUME    CAPACITY   ACCESSMODES   AGE
  19. tomcat-mysql   Bound     gluster   20Gi       RWX           19s
复制代码
e:mysql-rc-pvc.yaml
  1. [root@k8s-master tomcat_demo]# cp mysql-rc-nfs.yaml mysql-rc-pvc.yaml
  2. [root@k8s-master tomcat_demo]# cat mysql-rc-pvc.yaml
  3. apiVersion: v1
  4. kind: ReplicationController
  5. metadata:
  6.   name: mysql
  7. spec:
  8.   replicas: 1
  9.   selector:
  10.     app: mysql
  11.   template:
  12.     metadata:
  13.       labels:
  14.         app: mysql
  15.     spec:
  16.       volumes:
  17.       - name: mysql
  18.         persistentVolumeClaim:
  19.           claimName: tomcat-mysql
  20.       containers:
  21.         - name: mysql
  22.           volumeMounts:
  23.           - mountPath: /var/lib/mysql
  24.             name: mysql
  25.           image: 10.0.0.11:5000/mysql:5.7
  26.           ports:
  27.           - containerPort: 3306
  28.           env:
  29.           - name: MYSQL_ROOT_PASSWORD
  30.             value: '123456'
  31. [root@k8s-master tomcat_demo]# kubectl delete -f mysql-rc-pvc.yaml
  32. replicationcontroller "mysql" deleted
  33. [root@k8s-master tomcat_demo]# kubectl create -f mysql-rc-pvc.yaml
  34. replicationcontroller "mysql" created
  35. [root@k8s-master tomcat_demo]# kubectl get pod -o wide
  36. NAME                                READY     STATUS    RESTARTS   AGE       IP            NODE
  37. mysql-p2xkq                         1/1       Running   0          10m       172.18.81.4   k8s-node1
  38. myweb-41l9f                         1/1       Running   1          16h       172.18.13.7   k8s-node2
复制代码
f:欣赏器访问添加数据后再删除pod
   

  1. #创建新数据后删除mysql的pod会自动生成新的pod
  2. kubectl delete pod mysql-m3zm9
复制代码
  欣赏器再次访问数据还在

  g:在node2节点上检察/mnt目录
  1. [root@k8s-node2 ~]# mount -t glusterfs 10.0.0.11:/wahaha /mnt
  2. [root@k8s-node2 mnt]# df -h
  3. 10.0.0.11:/wahaha   30G  615M   30G   3% /mnt
  4. [root@k8s-node2 mnt]# ll
  5. total 188434
  6. -rw-r----- 1 polkitd input       56 Sep 18 09:45 auto.cnf
  7. drwxr-x--- 2 polkitd input     4096 Sep 18 09:47 HPE_APP
  8. -rw-r----- 1 polkitd input      719 Sep 18 09:47 ib_buffer_pool
  9. -rw-r----- 1 polkitd input 79691776 Sep 18 09:47 ibdata1
  10. -rw-r----- 1 polkitd input 50331648 Sep 18 09:47 ib_logfile0
  11. -rw-r----- 1 polkitd input 50331648 Sep 18 09:45 ib_logfile1
  12. -rw-r----- 1 polkitd input 12582912 Sep 18 09:47 ibtmp1
  13. drwxr-x--- 2 polkitd input     4096 Sep 18 09:45 mysql
  14. drwxr-x--- 2 polkitd input     4096 Sep 18 09:45 performance_schema
  15. drwxr-x--- 2 polkitd input     4096 Sep 18 09:45 sys
复制代码
2. 与jenkins集成实现ci/cd


   jenkins 工具 自动化代码上线
核心功能 支持大量的插件
  jenkins java代码
好比之前做的小鸟飞飞是纯html页面
如果想换个小鸟的颜色怎么做呢
html文件 站点
开辟写好代码传给运维 然后运维举行上传解压
代码版本管理软件
  1. git: github
  2. git check out
  3. git tag
  4. shell脚本
复制代码
java类型
java项目代码上线链接
  1. java
  2. 需要编译
  3. .cless
复制代码
2.1 安装gitlab并上传代码


必要的软件下载链接 提取码: dshc
  1. #上传代码包
  2. [root@k8s-node2 jenkins-k8s]# ll
  3. total 890176
  4. -rw-r--r-- 1 root root   9128610 Sep 18 10:48 apache-tomcat-8.0.27.tar.gz
  5. -rw-r--r-- 1 root root 569408968 Sep 18 10:49 gitlab-ce-11.9.11-ce.0.el7.x86_64.rpm
  6. -rw-r--r-- 1 root root 166044032 Sep 18 10:48 jdk-8u102-linux-x64.rpm
  7. -rw-r--r-- 1 root root  89566714 Sep 18 10:49 jenkin-data.tar.gz
  8. -rw-r--r-- 1 root root  77289987 Sep 18 10:49 jenkins.war
  9. -rw-r--r-- 1 root root     91014 Sep 18 10:49 xiaoniaofeifei.zip
  10. #安装
  11. [root@k8s-node2 jenkins-k8s]# rpm -ivh gitlab-ce-11.9.11-ce.0.el7.x86\_64.rpm
  12. #配置
  13. vim /etc/gitlab/gitlab.rb
  14. external_url 'http://10.0.0.13'
  15. prometheus_monitoring['enable'] = false
  16. #应用并启动服务
  17. gitlab-ctl reconfigure
  18. #使用浏览器访问http://10.0.0.13,修改root用户密码,创建project
复制代码

gitlab 11.1.4(不限版本)汉化方法

创建项目

  1. [root@k8s-node2 opt]# cd /srv/
  2. [root@k8s-node2 srv]# ls
  3. [root@k8s-node2 srv]# git clone https://gitlab.com/xhang/gitlab.git
  4. Cloning into 'gitlab'...
  5. #确保有git命令
  6. [root@k8s-node2 srv]# which git
  7. /usr/bin/git
  8. [root@k8s-node2 srv]# git config --global user.name "Administrator"
  9. [root@k8s-node2 srv]# git config --global user.email "admin@example.com"
  10. [root@k8s-node2 srv]# cat /root/.gitconfig
  11. [user]
  12.         name = Administrator
  13.         email = admin@example.com
  14.        
  15. [root@k8s-node2 srv]# mv /root/jenkins-k8s/xiaoniaofeifei.zip .
  16. [root@k8s-node2 srv]# unzip xiaoniaofeifei.zip
  17. [root@k8s-node2 srv]# ls
  18. 2000.png  21.js  icon.png  img  index.html  sound1.mp3  xiaoniaofeifei.zip
复制代码
上传代码
  1. git init
  2. git remote add origin http://10.0.0.13/root/xiaoniao.git
  3. git add .
  4. git commit -m "Initial commit"
  5. #登录账户密码
  6. [root@k8s-node2 srv]# git push -u origin master
  7. Username for 'http://10.0.0.13': root
  8. Password for 'http://root@10.0.0.13':
复制代码
上传乐成

2.2 安装jenkins,并自动构建docker镜像

node1上安装jenkins
  1. [root@k8s-node1 opt]# ll
  2. total 334020
  3. -rw-r--r-- 1 root root   9128610 Sep 18 11:53 apache-tomcat-8.0.27.tar.gz
  4. -rw-r--r-- 1 root root 166044032 Sep 18 11:54 jdk-8u102-linux-x64.rpm
  5. -rw-r--r-- 1 root root  89566714 Sep 18 11:54 jenkin-data.tar.gz
  6. -rw-r--r-- 1 root root  77289987 Sep 18 11:54 jenkins.war
  7. rpm -ivh jdk-8u102-linux-x64.rpm
  8. mkdir /app
  9. tar xf apache-tomcat-8.0.27.tar.gz -C /app
  10. rm -fr /app/apache-tomcat-8.0.27/webapps/*
  11. mv jenkins.war /app/apache-tomcat-8.0.27/webapps/ROOT.war
  12. tar xf jenkin-data.tar.gz -C /root
  13. /app/apache-tomcat-8.0.27/bin/startup.sh
  14. netstat -lntup
复制代码
2.3 欣赏器访问jenkins

访问http://10.0.0.12:8080/,默认账号密码admin:123456
   

  2.4 设置jenkins拉取gitlab代码凭据

a:在jenkins上生成秘钥对
  1. #生成秘钥 一路回车
  2. [root@k8s-node1 opt]# ssh-keygen -t rsa
  3. [root@k8s-node1 opt]# ls /root/.ssh/
  4. id_rsa  id_rsa.pub  known_hosts
复制代码
b:复制公钥粘贴gitlab上
   新建秘钥的进入方法

  c:在node1上检察秘钥
  1. [root@k8s-node1 opt]# cat /root/.ssh/id\_rsa.pub
  2. ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCrlIgDVptvmipg00CP7P955Nbn2h+oy06hUiYWE+htG6VjLSCFjEhrxgXOCX2EAKGLgveWA46MLt4XN2Gi4E1H3aDsM/gBu8D+4487bKuLKv1ZeMeWECcDKL16cjtSQw6ShsCLBwh3aq5TT85I/ypUYMsQ1+N4Iiv4i3g3ozn0yPsyMq9rekW+nHbs8eJL1OzIue6hL78AgI8QuZ7QaCQ5TJDmCwKuLC+B+6ajyNezSxBIlZeBuUE5lacKmvxxnX5Dqzlvf5uGrVRSgPCR6oTTDTHmx2GVHIl7BJLZH/uR4tP7gYoY9fFOM1VyJ8Pjq+XcLGYFWNQKTgxKQO/08sjr root@k8s-node1
复制代码
  

  d:jenkins上创建全局凭据

  1. [root@k8s-node1 opt]# cat /root/.ssh/id\_rsa
  2. -----BEGIN RSA PRIVATE KEY-----
  3. MIIEpAIBAAKCAQEAq5SIA1abb5oqYNNAj+z/eeTW59ofqMtOoVImFhPobRulYy0g
  4. hYxIa8YFzgl9hAChi4L3lgOOjC7eFzdhouBNR92g7DP4AbvA/uOPO2yriyr9WXjH
  5. lhAnAyi9enI7UkMOkobAiwcId2quU0/OSP8qVGDLENfjeCIr+It4N6M59Mj7MjKv
  6. a3pFvpx27PHiS9TsyLnuoS+/AICPELme0GgkOUyQ5gsCriwvgfumo8jXs0sQSJWX
  7. gblBOZWnCpr8cZ1+Q6s5b3+bhq1UUoDwkeqE0w0x5sdhlRyJewSS2R/7keLT+4GK
  8. GPXxTjNVcifD46vl3CxmBVjUCk4MSkDv9PLI6wIDAQABAoIBAQCZBKL0TzXaJuQq
  9. a9xFPzhsLgDWzvmzIHWke03KHMEJJUGvHBzH3V7s9rJQmLgelC197TP+znc/X8Dj
  10. dZmWl3F0aRxN6t8ANMCe0LT5ayXlvFYriAJ/OzJ/p8Krw9pRt8n0NUbb9k6/qR2E
  11. 4UR4Z1AJ5jTTdaXAisEqLL/u5pwWR/yJgDeeUY5SC3QU1s2dvFUR/r9sqeXHjaCu
  12. scu3EwU4Mo6+8yEFRpNLf2wMYPZyrb4RCDXpLRnrOHc9M67tiKpdQYplhuuSDD8Y
  13. KOQO2isDigz56CIMBzYKysNG3Vg8LVHkEZ65DVoSF5bI8PcLuZ9Fod2ZYI212z48
  14. Rb6IRUThAoGBAOJNo033aqqEcnXA+0pFgP1uL2q+eSWsztnw4M3OQl9hYZUIcaq6
  15. cGBoIRlw/RiR1b0Q+lvj59+0/hJ9nkAqhcw/gAGPClQQZlVfwJOcx2++3vvDvRoA
  16. 3WZlRLswjktNBBDTaCBxEXoEuH1z/zWCEyXQAA1PMLHSkwWk03iazqHRAoGBAMIY
  17. ix5OGBMVkwGzT6+pUojCNoRy5fZ0CxgiO2ILjFo7fYFNHGPXlJ0p85t7izq7hncb
  18. tE8P6LaFGBjoe2+rf3e35TEXgUntmV3BucmodqiNM11RBXP4VW5ed7URCxtrgieo
  19. xPUwDeerBlb0YP9Uohsf+qmqrRAhd5BxvAgjd1H7AoGBANhXWFLkwHga/kFMJ+8s
  20. 2s9sUrA9PxuhRG5dNMwK7rC4K82JsQCCE4RWh64Gsi6W3DpOzMij67uVD38lz++P
  21. tzE3U2wqDrmmo+3iB/wV2SMe2ZTd3x3Izd9h2H8LQD0Ed2qOb/Dzpr17XdOw3L2O
  22. iDeRzTrsBaU5pYuzsuaNOBTBAoGADh77ABluZvUK3PTOt1j6SDjY/ondcTDAHeFf
  23. sKJmc6ogV2fkyN7GUSjcMFOsrXk3LzM0ywu9QoosVqOTV2yCuZMHearcHSTMI6YU
  24. fjdjap/bPM7INse6b20wCFxVEomfzoLY0X3NhS1MKMdexzTBFngdJHrmXGYS7M9Z
  25. fr4V0EECgYAb1ZXLghOZDFp80DLryQPaFz63kIf5HKGQM5KJBos7bq5vmxnuyT3f
  26. 5BTLNSdmpAdjXmHXvzynEWeg/bkDRXK4iFMvGQj0fo1MNbodyj6BcUSH6M7C1Srm
  27. MVroh40pZQbAdeCOlJmDSdxhiRc0rVlmtTuIzS80yHW91Cfn4nk3ag==
  28. -----END RSA PRIVATE KEY-----
复制代码
  

  e:新建使命
   

  克隆url
   

  粘贴url

选择实行shell后保存

立即构建检察控制台输出内容

2.5 编写dockerfile并测试

  1. #node2上编写
  2. [root@k8s-node2 srv]# ls
  3. 2000.png  21.js  icon.png  img  index.html  sound1.mp3  xiaoniaofeifei.zip
  4. [root@k8s-node2 srv]# vim dockerfile
  5. a
  6. FROM 10.0.0.11:5000/nginx:1.13
  7. ADD . /usr/share/nginx/html
  8. #构建
  9. [root@k8s-node2 srv]# docker build -t xiaoniao:v1 .
  10. #创建容器并查看
  11. [root@k8s-node2 srv]# docker run -d -P xiaoniao:v1
  12. 74fe566ac2e1f53eafec83904ea17a2ec0393f82cbb22e05e1465e0f5d29e86f
  13. [root@k8s-node2 srv]# docker ps -a -l
  14. CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                   NAMES
  15. 74fe566ac2e1        xiaoniao:v1         "nginx -g 'daemon ..."   20 seconds ago      Up 16 seconds       0.0.0.0:32768->80/tcp   optimistic_bartik
复制代码
访问10.0.0.13:32768
   

  1. [root@k8s-node1 ~]# cd /root/.jenkins/workspace/xiaoniao
  2. [root@k8s-node1 xiaoniao]# ls
  3. 2000.png  21.js  icon.png  img  index.html  sound1.mp3  xiaoniaofeifei.zip
复制代码
2.6 在gitlab上上传代码

   

  添加dockerfile文件和设置内容
网上学习资料一大堆,但如果学到的知识不成体系,遇到题目时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
必要这份体系化的资料的朋友,可以添加V获取:vip204888 (备注大数据)

一个人可以走的很快,但一群人才气走的更远!岂论你是正从事IT行业的老鸟或是对IT行业感爱好的新人,都接待加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
fei.zip
  1. ### 2.6 在gitlab上上传代码
  2. >
  3. > ![](https://img-blog.csdnimg.cn/20190918155447511.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3MjQyNTIw,size_16,color_FFFFFF,t_70)
  4. >
  5. >
  6. >
  7. `添加dockerfile文件和配置内容`
  8. **网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
  9. **需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注大数据)**
  10. [外链图片转存中...(img-cjc4PDN0-1713372396943)]
  11. **一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4