分类目录归档:LINUX

CentOS搭建k8s集群(7)—安装nginx-ingress

服务器信息
master:192.168.201.1
node1:192.168.101.2
node2:192.168.101.3

1、查找nginx-ingress
helm search repo nginx-ingress
选择这个nginx/nginx-ingress

2、展示values.yaml文件,分析helm安装nginx ingress的命令行覆盖参数(很重要)
helm show values nginx/nginx-ingress

3、安装nginx-ingress
kubectl create namespace nginx-ingress
helm install gateway nginx/nginx-ingress \
--namespace nginx-ingress \
--set controller.hostNetwork=true \
--set controller.healthStatus=true \
--set controller.service.type=NodePort \
--set controller.service.httpPort.nodePort=30080 \
--set controller.service.httpsPort.nodePort=30443

使用NodePort网络访问方式,http端口为30080,https端口为30443

继续阅读CentOS搭建k8s集群(7)—安装nginx-ingress

CentOS清空iptables规则

1、查看iptables配置
iptables -L

2、清除默认链的规则
iptables -F

3、清除自定义链
iptables -X

4、保存当前规则
service iptables save
保存时如果报错
The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.
先安装服务
yum install iptables-services

5、重启服务
systemctl restart iptables

CentOS搭建k8s集群(6)—k8s主节点ip变更问题

k8s主节点ip变更了,从192.168.101.1变为了192.168.201.1。记录这次不成功的修改,最后还是重新初始化了,因为pod的ip还是没有变

1、现象执行命令报错
kubectl get nodes

Unable to connect to the server: dial tcp 192.168.101.1:6443: i/o timeout

2、修改/etc/kubernetes下的配置文件,除pki目录以外,所有文件都要改IP地址
/etc/kubernetes/admin.conf
/etc/kubernetes/controller-manager.conf
/etc/kubernetes/kubelet.conf
/etc/kubernetes/scheduler.conf
/etc/kubernetes/manifests/etcd.yaml
/etc/kubernetes/manifests/kube-apiserver.yaml
/etc/kubernetes/manifests/kube-controller-manager.yaml
/etc/kubernetes/manifests/kube-scheduler.yaml

命令
cd /etc/kubernetes/
sed -i 's/192.168.101.1/192.168.201.1/g' ./.*conf
cd /etc/kubernetes/manifests/
sed -i 's/192.168.101.1/192.168.201.1/g' ./*.yaml

继续阅读CentOS搭建k8s集群(6)—k8s主节点ip变更问题

CentOS搭建jenkins(2)—从gitlab拉取

1、配置jdk、maven、git全局参数
Jenkins – 系统管理 – 全局工具配置
1)Maven 配置
默认 settings 提供:使用默认Maven设置
默认全局 settings 提供:使用默认Maven全局设置
2)JDK
别名:openjdk
JAVA_HOME:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.262.b10-0.el7_8.x86_64

3)Git
Name:git
Path to Git executable:/usr/bin/git

4)Maven
Name:maven
MAVEN_HOME:/usr/share/maven

2、配置远程部署
1)安装Publish Over SSH插件
2)Jenkins – 系统管理 – 系统配置 – Publish over SSH
新增SSH Server
Name:tomcat
Hostname:192.168.100.2
Username:root
Remote Directory:/home
选择Use password authentication, or use a different key
Passphrase / Password:123456
Port:22

继续阅读CentOS搭建jenkins(2)—从gitlab拉取

CentOS搭建jenkins(1)—安装jenkins

jenkins是一个开源持续集成工具
目标:jenkins从gitlab、github、svn拉取代码,编译部署到远程服务器tomcat中/k8s集群中

1、服务器准备
服务器安装jdk、maven、git,这里全部用yum安装
yum install java-1.8* maven git

2、查看安装版本
java -version
openjdk version "1.8.0_262"
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)


mvn -version
Apache Maven 3.0.5 (Red Hat 3.0.5-17)
Maven home: /usr/share/maven
Java version: 1.8.0_262, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.262.b10-0.el7_8.x86_64/jre
Default locale: en_US, platform encoding: ANSI_X3.4-1968
OS name: "linux", version: "3.10.0-1062.4.2.vz7.116.7", arch: "amd64", family: "unix"


git --version
git version 1.8.3.1

继续阅读CentOS搭建jenkins(1)—安装jenkins

nginx配置文件说明

1、nginx可以作为一个反向代理和负载均衡来使用
反向代理:比如防火墙只有一个IP和端口对外开放,但是内网有多个服务需要连接,那么可以用nginx反向代理功能,通过不同路径的url,映射到不同服务器上
负载均衡:在反向代理功能的基础上,提供软负载的功能,因为硬件负载F5、Array价格昂贵

继续阅读nginx配置文件说明

CentOS8 VPS内存显示不对

在一个CentOS8系统的VPS上,free显示不对,有1G内存但是只显示了818MB,少了200多MB

              total        used        free      shared  buff/cache   available
Mem:            818          87         453           7         277         597
Swap:          1023           0        1023

1、使用dmidecode命令查看linux硬件信息
dmidecode -t memory

# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.8 present.

Handle 0x1000, DMI type 16, 23 bytes
Physical Memory Array
	Location: Other
	Use: System Memory
	Error Correction Type: Multi-bit ECC
	Maximum Capacity: 1 GB
	Error Information Handle: Not Provided
	Number Of Devices: 1

Handle 0x1100, DMI type 17, 40 bytes
Memory Device
	Array Handle: 0x1000
	Error Information Handle: Not Provided
	Total Width: Unknown
	Data Width: Unknown
	Size: 1 GB
	Form Factor: DIMM
	Set: None
	Locator: DIMM 0
	Bank Locator: Not Specified
	Type: RAM
	Type Detail: Other
	Speed: Unknown
	Manufacturer: Red Hat
	Serial Number: Not Specified
	Asset Tag: Not Specified
	Part Number: Not Specified
	Rank: Unknown
	Configured Memory Speed: Unknown
	Minimum Voltage: Unknown
	Maximum Voltage: Unknown
	Configured Voltage: Unknown
可以看到分配的内存是1GB,Size: 1 GB

继续阅读CentOS8 VPS内存显示不对

CentOS搭建k8s集群(5)—Helm包管理工具

Helm是用来管理Kubernetes发布包的工具,使用方法类似于yum、npm工具
原来:手写yaml –> xxx.yaml –> kubectl apply -f –> 获取xxx组件
现在:values.yaml –> 通过模板生成xxx.yaml –> helm install/upgrade –> 获取xxx组件

PS:以下操作都在master机器上
1、安装Helm3
Helm3.x版本移除了tiller依赖,所以只有一个helm文件
cd /tmp
wget https://get.helm.sh/helm-v3.4.0-linux-amd64.tar.gz
tar -zxvf helm-v3.4.0-linux-amd64.tar.gz
mv linux-amd64/helm /usr/local/bin/helm

2、配置环境变量
vi /etc/profile
加入:
export KUBECONFIG=/root/.kube/config
执行:
source /etc/profile

继续阅读CentOS搭建k8s集群(5)—Helm包管理工具