jenkins流水线pipeline使用
gitlab配置公钥代码仓库:代码仓库:https://github.com/wq-h/demo-2048.git
创建密钥
# ssh-keygen -t rsa -b 2048 -C "weiqun_h@163.com" -N "" -f /root/.ssh/id_rsaGenerating public/private rsa key pair.Your identification has been saved in /root/.ssh/id_rsa.Your public key has been saved in /root/.ssh/id_rsa.pub.The key fingerprint is:SHA256:lo1dX2Kj+5Z8n7LiICLc9yYJdkhlY9W2YpNsTn/pmrI weiqun_h@163.comThe key's randomart image is:+---[RSA 2048]----+| ... || = o || + ...
jenkins集成k8s
jenkins集成k8s集群
创建证书
打开~/.kube/config文件
复制certificate-authority-data的内容,运行以下命令生成client.crt# echo "<certificate-authority-data>" | base64 -d > ca.crt复制client-certificate-data的内容,运行以下命令生成client.crt# echo "<client-certificate-data>" | base64 -d > client.crt复制client-key-data的内容,运行以下命令生成client.key# echo "<client-key-data>" | base64 -d > client.key再根据前面步骤生成的ca.crt, client.crt和client.key来生成PKCS12格式的cert.pfx以下命令运行时,需要输入4位以上的密码# openssl pkcs12 -exp ...
配置yum仓库
使用centos镜像作为yum源挂载iso镜像至mnt目录
# mount -o loop /root/CentOS-7-x86_64-Everything-2009.iso /mntmount: /dev/loop0 is write-protected, mounting read-only# ll /mnt/total 1668-rw-r--r--. 1 root root 14 Oct 30 05:14 CentOS_BuildTagdrwxr-xr-x. 3 root root 2048 Oct 27 00:25 EFI-rw-rw-r--. 17 root root 227 Aug 30 2017 EULA-rw-rw-r--. 17 root root 18009 Dec 10 2015 GPLdrwxr-xr-x. 3 root root 2048 Oct 27 00:26 imagesdrwxr-xr-x. 2 root root 2048 Oct 27 00:25 isolinuxdrwxr-xr-x. 2 ro ...
LVM硬盘管理
创建lvm
创建物理卷 PV
物理卷(Physical Volumes)简称PV,是在磁盘的物理分区或与磁盘分区具有同样功能的设备(如RAID)上创建而来。它只是在物理分区中划出了一个特殊的区域,用于记载与LVM相关的管理参数
lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsr0 11:0 1 1024M 0 rom vda 252:0 0 512G 0 disk├─vda1 252:1 0 200M 0 part /boot├─vda2 252:2 0 99.8G 0 part│ └─centos-root 253:0 0 511.8G 0 lvm /└─vda3 252:3 0 412G 0 part └─centos-root 253:0 0 511.8G 0 lvm /vdb 252:16 0 ...
容器安装破解jira-8.14
部署jira下载jira最新镜像
docker pull atlassian/jira-software:8.14
自定义镜像 添加破解jar包
FROM atlassian/jira-software:8.14COPY atlassian-agent.jar /opt/atlassian/jira/RUN echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/jira/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/jira/bin/setenv.sh
下载破解包至Dockerfile同一级别目录atlassian-agent.jar
-rw-r--r--. 1 root root 818083 Dec 10 2018 atlassian-agent.jar-rw-r--r--. 1 root root 221 Jan 15 14:22 Dockerfile
构建镜像
docker bu ...
k8s对接ceph rbd存储
环境说明k8s集群
[root@master ceph]# kubectl get nodesNAME STATUS ROLES AGE VERSIONmaster Ready master 23h v1.19.4work Ready node 23h v1.19.4
ceph集群
[root@cephcluster-ceph01 ~]# ceph -s cluster: id: 2c44c0fd-4969-4f31-8cd8-359e710827e8 health: HEALTH_OK services: mon: 3 daemons, quorum cephcluster-ceph01,cephcluster-ceph02,cephcluster-ceph03 (age 19h) mgr: cephcluster-ceph02(active, since 2w), standbys: cephcluster-ceph03, cephcluster-ceph01 mds: ...
calico网络
calico网络模式
BGP
Calico项目提供的网络解决方案,与Flannel的host-gw模式几乎一样。也就是说,Calico也是基于路由表实现容器数据包转发,但不同于Flannel使用flanneld进程来维护路由信息的做法,而Calico项目使用BGP协议与fannel的host-gw模式的不同之处就是,它不会在宿主机上创建类似docker0、cni0这样的网桥设备,Veth Pair在宿主机的一端的接口直接暴露在宿主机上,并通过设置路由规则,将容器IP暴露到宿主机的通信路由上。
IPIP
ipip模式与flannel的vxlan模式类似,这个也是对数据包的一个封装
从字面来理解,就是把一个IP数据包又套在一个IP包里,即把 IP 层封装到 IP 层的一个 tunnel。它的作用其实基本上就相当于一个基于IP层的网桥!一般来说,普通的网桥是基于mac层的,根本不需 IP,而这个 ipip 则是通过两端的路由做一个 tunnel,把两个本来不通的网络通过点对点连接起来。
安装calico[root@master ~]# kubectl create -f https: ...
kubeadm部署高可用k8s集群
系统初始化配置主机名解析
[root@master-01 ~]# cat >>/etc/hosts <<EOF10.166.33.120 master-0110.166.33.121 master-0210.166.33.122 master-03EOF
安装Base源
[root@master-01 ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
安装依赖包
[root@master-01 ~]# yum install -y conntrack ntpdate ntp jq iptables curl sysstat libseccomp wgetvimnet-tools wget bash-completion
配置防火墙
[root@master-01 ~]# systemctl stop firewalld && systemctl disable firewalld[root@master-0 ...
nfs-ganesha高可用
keepalived master配置:# cat /etc/keepalived/keepalived.confglobal_defs {script_user root root}vrrp_script chk_port_ceph { script "/etc/keepalived/check_ports_ganesha" interval 3 weight -50}vrrp_instance VI_2 {state MASTERinterface bond0nopreemptvirtual_router_id 14priority 200advert_int 1authentication {auth_type PASSauth_pass vLKKIb310LIvN6gj}virtual_ipaddress {192.168.1.27/24 dev bond0 label bond0:ganesha}track_script { chk_port_c ...
cephfs与nfs-ganesha
通过nfs-ganesha方式共享cephfs存储,nfs-ganesha使用方式与nfs一致
nfs-ganesha_wiki
创建pool[root@ceph01 ceph-cluster]# ceph osd pool create cephfs_data 128pool 'cephfs_data' created[root@ceph01 ceph-cluster]# ceph osd pool create cephfs_metadata 128pool 'cephfs_metadata' created
创建fs[root@ceph01 ceph-cluster]# ceph fs new k8s-cephfs cephfs_metadata cephfs_datanew fs with metadata pool 10 and data pool 8[root@ceph01 ceph-cluster]# ceph fs lsname: k8s-cephfs, metadata pool: cephfs_metadata, data ...