Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(server): replace current logging solution with log server #1381

Merged
merged 14 commits into from
Jul 14, 2023

Conversation

0fatal
Copy link
Contributor

@0fatal 0fatal commented Jul 10, 2023

  1. Add logServerConf to regions.
use sys_db


db.Region.updateMany({}, {
  $set: {
    logServerConf: {
      apiUrl: "http://log-server.laf-system.svc.cluster.local:5060",
      secret: "secret-to-verify-app"
   }
}})

db.Region.find().pretty()
  1. Deploy log-server to k8s.
kubectl apply -f - <<EOF
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    helm.sh/chart: laf-server-0.1.0
    app.kubernetes.io/name: log-server
    app.kubernetes.io/instance: server
    app.kubernetes.io/version: "1.16.0"
    app.kubernetes.io/managed-by: Helm
  name: log-server
  namespace: laf-system
spec:
  replicas: 1
  selector:
    matchLabels:
      app.kubernetes.io/name: log-server
      app.kubernetes.io/instance: server
  template:
    metadata: 
      labels:
        app.kubernetes.io/name: log-server
        app.kubernetes.io/instance: server
    spec:
      containers:
        - image: docker.io/lafyun/log-server:latest
          imagePullPolicy: Always
          name: log-server
          ports:
            - name: http
              containerPort: 5060
              protocol: TCP
          livenessProbe:
            httpGet:
              path: /healthz
              port: http
          readinessProbe:
            httpGet:
              path: /healthz
              port: http 
          env:
            - name: DB_URI
              value: ""
            - name: JWT_SECRET
              value: ""
---
apiVersion: v1
kind: Service
metadata:
  labels:
    helm.sh/chart: laf-server-0.1.0
    app.kubernetes.io/name: log-server
    app.kubernetes.io/instance: server
    app.kubernetes.io/version: "1.16.0"
    app.kubernetes.io/managed-by: Helm
  name: log-server
  namespace: laf-system
spec:
  ports:
    - name: http
      port: 5060
      protocol: TCP
      targetPort: http 
  selector:
    app.kubernetes.io/name: log-server
    app.kubernetes.io/instance: server
EOF
  1. Add new environments to the log-server deployment.

kubectl edit deployment/log-server -n laf-system

env:
    - name: DB_URL
      value: mongodb://your-root-user:your-password@mongo-cluster-rs0-0.mongo-cluster-rs0.default.svc.cluster.local:27017/function-logs?authSource=admin&replicaSet=rs0&w=majority
    - name: JWT_SECRET
      value: "secret-to-verify-app"
  1. Upgrade image version for laf-server&laf-web deployments.
kubectl set image deployments/laf-server -n laf-system \
	laf-server=docker.io/lafyun/laf-server:sha-c559cbd

kubectl set image deployments/laf-web -n laf-system \
	laf-web=docker.io/lafyun/laf-web:sha-1d22b6e
  1. Upgrade image version for runtime.
 use sys_db

// runtime version
const version = "sha-83a9960"
const main_image = `docker.io/lafyun/runtime-node:${version}`
const init_image = `docker.io/lafyun/runtime-node-init:${version}`

db.Runtime.updateOne({ latest: true }, {
  $set: {
    version: version,
    image: {
      main: main_image,
      init: init_image
    }
  }
})

db.Runtime.find().pretty()
  1. Restart all applications.
db.Application.updateMany({
	state: {
	  $in: ["Running"]
	}
}, {
	$set: {
		state: "Restarting"
	}
})

@maslow maslow merged commit 83a9960 into labring:main Jul 14, 2023
1 check passed
@maslow maslow changed the title feat: replace current logging solution with log server feat(server): replace current logging solution with log server Jul 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants