summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ansible/roles/sysctl/files/80-proxy.conf32
-rw-r--r--ansible/roles/sysctl/tasks/main.yml5
-rw-r--r--make/Makefile.x86_64_COTS1
-rw-r--r--make/Makefile.x86_64_COTS_APP_BUNDLE127
4 files changed, 87 insertions, 78 deletions
diff --git a/ansible/roles/sysctl/files/80-proxy.conf b/ansible/roles/sysctl/files/80-proxy.conf
new file mode 100644
index 00000000..7116bfbc
--- /dev/null
+++ b/ansible/roles/sysctl/files/80-proxy.conf
@@ -0,0 +1,32 @@
+# read/write buffer
+net.core.rmem_default = 256960
+net.core.rmem_max = 256960
+net.core.wmem_default = 256960
+net.core.wmem_max = 256960
+
+# disable rpfilter
+net.ipv4.conf.all.rp_filter=0
+net.ipv4.conf.default.rp_filter=0
+
+# fs
+fs.file-max=1048576
+net.core.netdev_max_backlog=1000000
+net.core.somaxconn=131072
+
+# tcp options about TIME_WAIT
+net.ipv4.tcp_fin_timeout=10
+net.ipv4.tcp_tw_reuse=1
+net.ipv4.tcp_max_tw_buckets=4096
+net.ipv4.tcp_max_orphans=131072
+net.ipv4.tcp_max_syn_backlog=131072
+
+# bbr
+net.ipv4.tcp_congestion_control=bbr
+
+# tcp feature
+net.ipv4.tcp_ecn=0
+net.ipv4.tcp_sack=1
+net.ipv4.tcp_timestamps=1
+
+# disable tcp windows scaling for kernel bugs
+net.ipv4.tcp_window_scaling=0
diff --git a/ansible/roles/sysctl/tasks/main.yml b/ansible/roles/sysctl/tasks/main.yml
index d8e5c9c0..746bc995 100644
--- a/ansible/roles/sysctl/tasks/main.yml
+++ b/ansible/roles/sysctl/tasks/main.yml
@@ -2,3 +2,8 @@
copy:
src: "{{ role_path }}/files/90-tsg-os.conf"
dest: /usr/lib/sysctl.d/
+
+- name: "copy proxy sysctl.d to destination server"
+ copy:
+ src: "{{ role_path }}/files/80-proxy.conf"
+ dest: /usr/lib/sysctl.d/
diff --git a/make/Makefile.x86_64_COTS b/make/Makefile.x86_64_COTS
index 51c89ffe..67873a0f 100644
--- a/make/Makefile.x86_64_COTS
+++ b/make/Makefile.x86_64_COTS
@@ -80,7 +80,6 @@ add-images-into-installer-dir: builddir sysroot-verfile sysroot-ansible
cp $(IMAGEDIR_BASE)/$(APP_BUNDLE_BIN) $(TARGET_INSTALLER_DIR)/$(APP_BUNDLE_BIN)
sysroot-archive: installer add-images-into-installer-dir add-patch-into-installer-dir sysroot-cleanup
- cp $(IMAGEDIR_BASE)/80-tfe.conf $(TARGET_SYSROOT_DIR)/usr/lib/sysctl.d/
tar --exclude=*~ --exclude-backups --owner=root --group=root -c -C $(TARGET_SYSROOT_DIR) . | pbzip2 -p9 > $(TARGET_INSTALLER_DIR)/$(CHROOT_PKG)
sysroot-binary: sysroot-archive
diff --git a/make/Makefile.x86_64_COTS_APP_BUNDLE b/make/Makefile.x86_64_COTS_APP_BUNDLE
index e7a573d0..cae51086 100644
--- a/make/Makefile.x86_64_COTS_APP_BUNDLE
+++ b/make/Makefile.x86_64_COTS_APP_BUNDLE
@@ -1,93 +1,66 @@
+# compile dir
+#./build/x86_64_COTS/app-bundle/
+# /installer
+# /cook-bits
-PROFILE_ID := x86_64_COTS
-PROFILE_ID_IN_SHORT := $(subst -,$e,$(PROFILE_ID))
+# app bin dir
+#./installer
+# install.sh
+# helmcharts.tgz
+# images.tar
+# mainfest.yaml
-CONTAINER_IMAGES_TAR := traffic-engine-${OS_RELEASE_VER}-docker.tar
-TRAFFIC_ENGINE_HELM_CHART_TAR := traffic-engine-$(HELM_CHART_VER).tgz
-MRZCPD_HELM_CHART_TAR := mrzcpd-$(HELM_CHART_VER).tgz
-TREX_HELM_CHART_TAR := trex-$(HELM_CHART_VER).tgz
-DP_TRACE_HELM_CHART_TAR := datapath-trace-$(HELM_CHART_VER).tgz
-APP_BUNDLE_BIN := tsg-os-${OS_RELEASE_VER}-${PROFILE_ID_IN_SHORT}-APP-BUNDLE.bin
-INJECT_HELM_CHART_TAR := inject-adapter-$(HELM_CHART_VER).tgz
-CONTAINER_IMAGES_TAR_GLOB := traffic-engine-*-docker.tar
-HELM_CHART_TAR_GLOB := traffic-engine-*.tgz
-NIC_UIO_BINDER_IMAGE_TAR := ${OS_RELEASE_VER}
-LOG_COLLECTOR_IMAGE_TAR := ${OS_RELEASE_VER}
+PROFILE_ID := x86_64_COTS
+PROFILE_ID_IN_SHORT := $(subst -,$e,$(PROFILE_ID))
-TARGET_BUILD_DIR := $(BUILDDIR_BASE)/$(PROFILE_ID)/containers
-TARGET_INSTALLER_DIR := $(TARGET_BUILD_DIR)/installer
-TRAFFIC_ENGINE_HELM_FILE_PATH := /ansible/roles/traffic-engine/files/helm
-INJECT_ADAPTER_HELM_FILE_PATH := /ansible/roles/packet_adapter/files/helm
-MRZCPD_HELM_FILE_PATH := /ansible/roles/mrzcpd/files/helm
-TREX_HELM_FILE_PATH :=/ansible/roles/trex/files/helm
-DP_TRACE_HELM_FILE_PATH := /ansible/roles/dp-trace-telemetry/files/helm
-NIC_UIO_BINDER_FILE_PATH := /ansible/roles/k3s-install/files/nic-uio-binder.yaml
-LOG_COLLECTOR_FILE_PATH := /ansible/roles/k3s-install/files/log-collector.yaml
+TARGET_BUILD_DIR := $(BUILDDIR_BASE)/$(PROFILE_ID)/app-bundle
+TARGET_INSTALLER_DIR := $(TARGET_BUILD_DIR)/installer
+COOK_BITS_DIR := $(TARGET_BUILD_DIR)/cook-bits
-TSG_CM_CONTAINER_IMAGE_TAR := tsg-cm-${OS_RELEASE_VER}-docker.tar
-TSG_CM_HELM_CHART_TAR := tsg-cm-chart-0.1.0.tgz
+APP_BUNDLE_BIN := tsg-os-$(OS_RELEASE_VER)-$(PROFILE_ID_IN_SHORT)-APP-BUNDLE.bin
+ifeq ($(ENABLE_ALIYUN_INTERNAL_DOMAIN),1)
+$(shell sed -i -e "s/mirrors.aliyun.com/mirrors.cloud.aliyuncs.com/" $(CONFDIR)/yum-RockyLinux-8.conf)
+endif
-.PHONY: all build_dir installer clean_installer_dir prebuild_container_images build_container_images build_helm_charts build_app_bundle_bin pull_tsg_cm
+.PHONY: all build-app-bundle-bin install-scripts build-container-images build-helmcharts
-all: build_app_bundle_bin
+all: build-app-bundle-bin
-build_dir:
- mkdir -p $(TARGET_BUILD_DIR)
- mkdir -p $(TARGET_INSTALLER_DIR)
+build-app-bundle-bin: install-scripts build-container-images build-helmcharts
+ mkdir -p $(COOK_BITS_DIR)
+ chmod 0755 $(TOOLSDIR)/app-bundle-cook-bits; \
+ $(TOOLSDIR)/app-bundle-cook-bits $(TARGET_BUILD_DIR) $(COOK_BITS_DIR) $(IMAGEDIR_BASE)/$(APP_BUNDLE_BIN)
+ sha256sum $(IMAGEDIR_BASE)/$(APP_BUNDLE_BIN) | awk '{print $$1}' > $(IMAGEDIR_BASE)/$(APP_BUNDLE_BIN).sha256sum.txt
-clean_installer_dir:
- rm -rf $(TARGET_INSTALLER_DIR)
+install-scripts:
+ mkdir -p $(TARGET_INSTALLER_DIR)
-installer: build_dir
cp $(INSTALLERDIR)/app_bundle_install.sh $(TARGET_INSTALLER_DIR)/install.sh
chmod +x $(TARGET_INSTALLER_DIR)/install.sh
- sed -i -e "s/%%CONTAINER_IMAGES_TAR%%/$(CONTAINER_IMAGES_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh
- sed -i -e "s/%%TRAFFIC_ENGINE_HELM_CHART_TAR%%/$(TRAFFIC_ENGINE_HELM_CHART_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh
- sed -i -e "s/%%INJECT_HELM_CHART_TAR%%/$(INJECT_HELM_CHART_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh
- sed -i -e "s/%%MRZCPD_HELM_CHART_TAR%%/$(MRZCPD_HELM_CHART_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh
- sed -i -e "s/%%TREX_HELM_CHART_TAR%%/$(TREX_HELM_CHART_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh
- sed -i -e "s/%%DP_TRACE_HELM_CHART_TAR%%/$(DP_TRACE_HELM_CHART_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh
- sed -i -e "s/%%CONTAINER_IMAGES_TAR_GLOB%%/$(CONTAINER_IMAGES_TAR_GLOB)/" $(TARGET_INSTALLER_DIR)/install.sh
- sed -i -e "s/%%HELM_CHART_TAR_GLOB%%/$(HELM_CHART_TAR_GLOB)/" $(TARGET_INSTALLER_DIR)/install.sh
- sed -i -e "s/%%NIC_UIO_BINDER_IMAGE_TAR%%/$(NIC_UIO_BINDER_IMAGE_TAR)/" $(PROJECTDIR)/$(NIC_UIO_BINDER_FILE_PATH)
- sed -i -e "s/%%LOG_COLLECTOR_IMAGE_TAR%%/$(LOG_COLLECTOR_IMAGE_TAR)/" $(PROJECTDIR)/$(LOG_COLLECTOR_FILE_PATH)
- sed -i -e "s/%%TSG_CM_HELM_CHART_TAR%%/$(TSG_CM_HELM_CHART_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh
- sed -i -e "s/%%TSG_CM_CONTAINER_IMAGE_TAR%%/$(TSG_CM_CONTAINER_IMAGE_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh
-
-prebuild_container_images:
-ifeq ($(ENABLE_LICENSE_PROTECTED),1)
- sed -i '/sapp:/d;/mrzcpd:/d' $(PROJECTDIR)/ansible/install_config/group_vars/rpm_version.yml
-else
- sed -i '/sapp-pr:/d;/mrzcpd:/d' $(PROJECTDIR)/ansible/install_config/group_vars/rpm_version.yml
-endif
-ifeq ($(ENABLE_ALIYUN_INTERNAL_DOMAIN),1)
- sed -i -e "s/mirrors.aliyun.com/mirrors.cloud.aliyuncs.com/" $(CONFDIR)/yum-RockyLinux-8.conf
-endif
-
-build_container_images: prebuild_container_images
- chmod 0755 $(PROJECTDIR)/tools/build_container_images.sh
- $(PROJECTDIR)/tools/build_container_images.sh $(PROJECTDIR) $(CONFDIR) $(TOOLSDIR) $(OS_RELEASE_VER) $(PROFILE_ID) $(IMAGEDIR_BASE) $(TARGET_INSTALLER_DIR) $(CONTAINER_IMAGES_TAR)
-
-build_helm_charts: build_dir
- chmod 0755 $(PROJECTDIR)/tools/build_helm_charts.sh
- $(PROJECTDIR)/tools/build_helm_charts.sh $(PROJECTDIR) $(OS_RELEASE_VER) $(HELM_CHART_VER) $(TARGET_INSTALLER_DIR) $(TRAFFIC_ENGINE_HELM_FILE_PATH)
- $(PROJECTDIR)/tools/build_helm_charts.sh $(PROJECTDIR) $(OS_RELEASE_VER) $(HELM_CHART_VER) $(TARGET_INSTALLER_DIR) $(INJECT_ADAPTER_HELM_FILE_PATH)
- $(PROJECTDIR)/tools/build_helm_charts.sh $(PROJECTDIR) $(OS_RELEASE_VER) $(HELM_CHART_VER) $(TARGET_INSTALLER_DIR) $(MRZCPD_HELM_FILE_PATH)
- $(PROJECTDIR)/tools/build_helm_charts.sh $(PROJECTDIR) $(OS_RELEASE_VER) $(HELM_CHART_VER) $(TARGET_INSTALLER_DIR) $(TREX_HELM_FILE_PATH)
- $(PROJECTDIR)/tools/build_helm_charts.sh $(PROJECTDIR) $(OS_RELEASE_VER) $(HELM_CHART_VER) $(TARGET_INSTALLER_DIR) $(DP_TRACE_HELM_FILE_PATH)
-
-pull_tsg_cm: build_dir
- chmod 0755 $(PROJECTDIR)/tools/build_helm_charts.sh; $(PROJECTDIR)/tools/pull_container_images.sh $(TARGET_INSTALLER_DIR) $(TSG_CM_CONTAINER_IMAGE_TAR)
- cp -a $(PROJECTDIR)/ansible/roles/tsg-cm/files/$(TSG_CM_HELM_CHART_TAR) $(TARGET_INSTALLER_DIR)
-
-build_app_bundle_bin: clean_installer_dir installer build_helm_charts pull_tsg_cm build_container_images
- mkdir -p $(TARGET_BUILD_DIR)/app-bundle-cook-bits
- chmod 0755 $(TOOLSDIR)/app-bundle-cook-bits
- $(TOOLSDIR)/app-bundle-cook-bits $(TARGET_BUILD_DIR) $(TARGET_BUILD_DIR)/app-bundle-cook-bits $(IMAGEDIR_BASE)/$(APP_BUNDLE_BIN)
- sha256sum $(IMAGEDIR_BASE)/$(APP_BUNDLE_BIN) | awk '{print $$1}' > $(IMAGEDIR_BASE)/$(APP_BUNDLE_BIN).sha256sum.txt
+ sed -i -e "s/%%CONTAINER_IMAGES_TAR%%/traffic-engine-${OS_RELEASE_VER}-docker.tar/" $(TARGET_INSTALLER_DIR)/install.sh
+ sed -i -e "s/%%TRAFFIC_ENGINE_HELM_CHART_TAR%%/traffic-engine-$(HELM_CHART_VER).tgz/" $(TARGET_INSTALLER_DIR)/install.sh
+ sed -i -e "s/%%INJECT_HELM_CHART_TAR%%/inject-adapter-$(HELM_CHART_VER).tgz/" $(TARGET_INSTALLER_DIR)/install.sh
+ sed -i -e "s/%%MRZCPD_HELM_CHART_TAR%%/mrzcpd-$(HELM_CHART_VER).tgz/" $(TARGET_INSTALLER_DIR)/install.sh
+ sed -i -e "s/%%TREX_HELM_CHART_TAR%%/trex-$(HELM_CHART_VER).tgz/" $(TARGET_INSTALLER_DIR)/install.sh
+ sed -i -e "s/%%DP_TRACE_HELM_CHART_TAR%%/datapath-trace-$(HELM_CHART_VER).tgz/" $(TARGET_INSTALLER_DIR)/install.sh
+ sed -i -e "s/%%TSG_CM_HELM_CHART_TAR%%/tsg-cm-chart-0.1.0.tgz/" $(TARGET_INSTALLER_DIR)/install.sh
+ sed -i -e "s/%%TSG_CM_CONTAINER_IMAGE_TAR%%/tsg-cm-docker.tar/" $(TARGET_INSTALLER_DIR)/install.sh
+
+build-container-images:
+ $(MAKE) -j -C $(PROJECTDIR)/containers \
+ IMAGE_TAG=$(OS_RELEASE_VER) \
+ YUM_REPO_FILE=$(CONFDIR)/yum-RockyLinux-8.conf \
+ traffic-engine tsg-cm
+ cp -af $(PROJECTDIR)/containers/build/images/*.tar $(TARGET_INSTALLER_DIR)
+
+build-helmcharts:
+ $(MAKE) -j -C $(PROJECTDIR)/helmcharts \
+ VERSION=$(HELM_CHART_VER) \
+ APP_VERSION=$(OS_RELEASE_VER) \
+ traffic-engine tsg-cm
+ cp -af $(PROJECTDIR)/helmcharts/build/helmcharts/*.tgz $(TARGET_INSTALLER_DIR)
clean:
rm -rf $(TARGET_BUILD_DIR)
-