Skip to content

Commit 3b4913b

Browse files
committed
- Putting the cherry on top
- Putting a bow on it - Final corrections and enhancements - Let the configuration settings determine log level
1 parent 76c3e8e commit 3b4913b

File tree

6 files changed

+46
-16
lines changed

6 files changed

+46
-16
lines changed

cmd/nginx-loadbalancer-kubernetes/main.go

-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ import (
1919
)
2020

2121
func main() {
22-
logrus.SetLevel(logrus.DebugLevel)
2322
err := run()
2423
if err != nil {
2524
logrus.Fatal(err)

deployments/deployment/configmap.yaml

+6-5
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
apiVersion: v1
22
kind: ConfigMap
33
data:
4-
nginx-hosts: "https://192.168.96.207/api"
5-
tls-mode: "ss-mtls"
6-
ca-certificate: "nlk-tls-ca-secret"
7-
client-certificate: "nlk-tls-client-secret"
4+
nginx-hosts: "https://10.0.0.1:9000/api"
5+
tls-mode: "no-tls"
6+
ca-certificate: ""
7+
client-certificate: ""
8+
log-level: "warn"
89
metadata:
910
name: nlk-config
10-
namespace: nlk
11+
namespace: nlk

deployments/deployment/deployment.yaml

+1-2
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ spec:
1717
spec:
1818
containers:
1919
- name: nginx-loadbalancer-kubernetes
20-
image: ciroque/nginx-loadbalancer-kubernetes:dev-11
21-
# image: ghcr.io/nginxinc/nginx-loadbalancer-kubernetes:125
20+
image: ghcr.io/nginxinc/nginx-loadbalancer-kubernetes:latest
2221
imagePullPolicy: Always
2322
ports:
2423
- name: http

docs/tls/SS-TLS.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ metadata:
5353
data:
5454
nginx-hosts: "http://10.1.1.4:9000/api,http://10.1.1.5:9000/api"
5555
tls-mode: "ss-tls"
56-
caCertificate: "nlk-tls-ca-secret"
56+
ca-certificate: "nlk-tls-ca-secret"
5757
```
5858
5959
## Deployment

internal/authentication/factory.go

+7-7
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import (
1818
)
1919

2020
func NewTlsConfig(settings *configuration.Settings) (*tls.Config, error) {
21-
logrus.Debugf("Creating TLS config for mode: '%s'", settings.TlsMode)
21+
logrus.Debugf("authentication::NewTlsConfig Creating TLS config for mode: '%s'", settings.TlsMode)
2222
switch settings.TlsMode {
2323
case "ss-tls": // needs ca cert
2424
return buildSelfSignedTlsConfig(settings.Certificates)
@@ -38,7 +38,7 @@ func NewTlsConfig(settings *configuration.Settings) (*tls.Config, error) {
3838
}
3939

4040
func buildSelfSignedTlsConfig(certificates *certification.Certificates) (*tls.Config, error) {
41-
logrus.Debug("Building self-signed TLS config")
41+
logrus.Debugf("authentication::buildSelfSignedTlsConfig Building self-signed TLS config, CA Secret Key(%v)", certificates.CaCertificateSecretKey)
4242
certPool, err := buildCaCertificatePool(certificates.GetCACertificate())
4343
if err != nil {
4444
return nil, err
@@ -51,7 +51,7 @@ func buildSelfSignedTlsConfig(certificates *certification.Certificates) (*tls.Co
5151
}
5252

5353
func buildSelfSignedMtlsConfig(certificates *certification.Certificates) (*tls.Config, error) {
54-
logrus.Debug("buildSelfSignedMtlsConfig Building self-signed mTLS config")
54+
logrus.Debugf("authentication::buildSelfSignedMtlsConfig Building self-signed mTLS config, CA Secret Key(%v), Client Certificate Key(%v)", certificates.CaCertificateSecretKey, certificates.ClientCertificateSecretKey)
5555
certPool, err := buildCaCertificatePool(certificates.GetCACertificate())
5656
if err != nil {
5757
return nil, err
@@ -72,14 +72,14 @@ func buildSelfSignedMtlsConfig(certificates *certification.Certificates) (*tls.C
7272
}
7373

7474
func buildBasicTlsConfig(skipVerify bool) *tls.Config {
75-
logrus.Debug("Building basic TLS config")
75+
logrus.Debugf("authentication::buildBasicTlsConfig skipVerify(%v)", skipVerify)
7676
return &tls.Config{
7777
InsecureSkipVerify: skipVerify,
7878
}
7979
}
8080

8181
func buildCaTlsConfig(certificates *certification.Certificates) (*tls.Config, error) {
82-
logrus.Debug("Building CA TLS config")
82+
logrus.Debugf("authentication::buildCaTlsConfig, Client Certificate Key(%v)", certificates.ClientCertificateSecretKey)
8383
certificate, err := buildCertificates(certificates.GetClientCertificate())
8484
if err != nil {
8585
return nil, err
@@ -92,12 +92,12 @@ func buildCaTlsConfig(certificates *certification.Certificates) (*tls.Config, er
9292
}
9393

9494
func buildCertificates(privateKeyPEM []byte, certificatePEM []byte) (tls.Certificate, error) {
95-
logrus.Debug("Building certificates")
95+
logrus.Debugf("authentication::buildCertificates, Private Key(%v), Certificate(%v)", privateKeyPEM, certificatePEM)
9696
return tls.X509KeyPair(certificatePEM, privateKeyPEM)
9797
}
9898

9999
func buildCaCertificatePool(caCert []byte) (*x509.CertPool, error) {
100-
logrus.Debugf("Building CA certificate pool")
100+
logrus.Debugf("authentication::buildCaCertificatePool, CA Certificate(%v)", caCert)
101101
block, _ := pem.Decode(caCert)
102102
if block == nil {
103103
return nil, fmt.Errorf("failed to decode PEM block containing CA certificate")

internal/configuration/settings.go

+31
Original file line numberDiff line numberDiff line change
@@ -312,6 +312,8 @@ func (s *Settings) handleUpdateEvent(_ interface{}, obj interface{}) {
312312
logrus.Warnf("Settings::handleUpdateEvent: client-certificate key not found in ConfigMap")
313313
}
314314

315+
setLogLevel(configMap.Data["log-level"])
316+
315317
logrus.Debugf("Settings::handleUpdateEvent: \n\tHosts: %v,\n\tSettings: %v ", s.NginxPlusHosts, configMap)
316318
}
317319

@@ -327,3 +329,32 @@ func isOurConfig(obj interface{}) (*corev1.ConfigMap, bool) {
327329
configMap, ok := obj.(*corev1.ConfigMap)
328330
return configMap, ok && configMap.Name == ConfigMapName && configMap.Namespace == ConfigMapsNamespace
329331
}
332+
333+
func setLogLevel(logLevel string) {
334+
logrus.Debugf("Settings::setLogLevel: %s", logLevel)
335+
switch logLevel {
336+
case "panic":
337+
logrus.SetLevel(logrus.PanicLevel)
338+
339+
case "fatal":
340+
logrus.SetLevel(logrus.FatalLevel)
341+
342+
case "error":
343+
logrus.SetLevel(logrus.ErrorLevel)
344+
345+
case "warn":
346+
logrus.SetLevel(logrus.WarnLevel)
347+
348+
case "info":
349+
logrus.SetLevel(logrus.InfoLevel)
350+
351+
case "debug":
352+
logrus.SetLevel(logrus.DebugLevel)
353+
354+
case "trace":
355+
logrus.SetLevel(logrus.TraceLevel)
356+
357+
default:
358+
logrus.SetLevel(logrus.WarnLevel)
359+
}
360+
}

0 commit comments

Comments
 (0)