出口Istio规则不起作用

时间:2017-11-10 23:36:08

标签: kubernetes istio

我有一个部署istio,可以访问谷歌地图距离矩阵api。如果我用--includeIPRanges 10.0.0.0/8运行istioctl kube-inject,它似乎可行。如果我删除此标志而改为应用出口规则则不起作用:

apiVersion: config.istio.io/v1alpha2 kind: EgressRule metadata: name: google-egress-rule namespace: microservices spec: destination: service: "maps.googleapis.com" ports: - port: 443 protocol: https - port: 80 protocol: http

部署和出口规则都在同一名称空间(微服务)。

知道我的错在哪里?

1 个答案:

答案 0 :(得分:2)

从我通过运行developers.google.com看到的内容,它会重定向到https://developers.google.com/maps/

这里有两个问题:

  1. 您已为curl http://developers.google.com/maps:443
  2. 指定了额外的EgressRule
  3. 目前,您必须通过向端口443发出http请求来访问https外部网站,例如developers.google.com。 Istio代理将为您打开与--includeIPRanges的https连接。不幸的是,除了使用IPad[1085]: critical: Stacktrace: IPad[1085]: critical: at <unknown> <0xffffffff> IPad[1085]: critical: at (wrapper managed-to-native) ObjCRuntime.Messaging.void_objc_msgSend_CATransform3D (intptr,intptr,CoreAnimation.CATransform3D) [0x0000b] in <21d68dce9d574fa1a5570d0bc0bc7703>:0 IPad[1085]: critical: at CoreAnimation.CALayer.set_Transform (CoreAnimation.CATransform3D) [0x0000b] in /Users/builder/data/lanes/4991/8a391069/source/xamarin-macios/src/build/ios/native/CoreAnimation/CALayer.g.cs:2231 IPad[1085]: critical: at Xamarin.Forms.Platform.iOS.VisualElementTracker/<>c__DisplayClass23_0.<OnUpdateNativeControl>b__0 () [0x003c3] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.iOS\VisualElementTracker.cs:210 IPad[1085]: critical: at Xamarin.Forms.Platform.iOS.CADisplayLinkTicker.StartThread () [0x0001d] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.iOS\CADisplayLinkTicker.cs:64 IPad[1085]: critical: at System.Threading.ThreadHelper.ThreadStart_Context (object) [0x00014] in /Library/Frameworks/Xamarin.iOS.framework/Versions/10.12.3.3/src/mono/mcs/class/referencesource/mscorlib/system/threading/thread.cs:68 iPad[1085]: critical: at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool) [0x00071] in /Library/Frameworks/Xamarin.iOS.framework/Versions/10.12.3.3/src/mono/mcs/class/referencesource/mscorlib/system/threading/executioncontext.cs:957 IPad[1085]: critical: at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool) [0x00000] in /Library/Frameworks/Xamarin.iOS.framework/Versions/10.12.3.3/src/mono/mcs/class/referencesource/mscorlib/system/threading/executioncontext.cs:904 IPad[1085]: critical: at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object) [0x0002b] in /Library/Frameworks/Xamarin.iOS.framework/Versions/10.12.3.3/src/mono/mcs/class/referencesource/mscorlib/system/threading/executioncontext.cs:893 IPad[1085]: critical: at System.Threading.ThreadHelper.ThreadStart () [0x00008] in /Library/Frameworks/Xamarin.iOS.framework/Versions/10.12.3.3/src/mono/mcs/class/referencesource/mscorlib/system/threading/thread.cs:105 IPad[1085]: critical: at (wrapper runtime-invoke) object.runtime_invoke_void__this__ (object,intptr,intptr,intptr) [0x0004f] in <e9a408feb7af4c46b81589c1b3a3e1a6>:0 IPad[1085]: critical: Native stacktrace: IPad[1085]: critical: 0 IPad 0x00000001059dda94 mono_handle_native_crash + 244 IPad[1085]: critical: 1 IPad 0x00000001059e9b90 mono_sigsegv_signal_handler + 288 IPad[1085]: critical: 2 libsystem_platform.dylib 0x000000011273bb3a _sigtramp + 26 IPad[1085]: critical: 3 ??? 0x000000000000ff6d 0x0 + 65389 IPad[1085]: critical: 4 QuartzCore 0x000000010c7529ab _ZL18CAAnimation_setterP11CAAnimationj12_CAValueTypePKv + 169 IPad[1085]: critical: 5 QuartzCore 0x000000010c74bd5a -[CAAnimation setDelegate:] + 30 IPad[1085]: critical: 6 UIKit 0x00000001069b2c39 -[UIViewAnimationState setAnimationAttributes:correctZeroDuration:skipDelegateAssignment:customCurve:] + 1094 IPad[1085]: critical: 7 UIKit 0x00000001069af475 -[UIViewAnimationState animationForLayer:forKey:forView:] + 1195 IPad[1085]: critical: 8 UIKit 0x00000001069b0178 -[UIViewAnimationState actionForLayer:forKey:forView:] + 99 IPad[1085]: critical: 9 UIKit 0x00000001069db52e +[UIView(Animation) _defaultUIViewActionForLayer:forKey:] + 111 IPad[1085]: critical: 10 UIKit 0x00000001071b98ec -[UIView(UIKitManual) actionForLayer:forKey:] + 119 IPad[1085]: critical: 11 QuartzCore 0x000000010c7224bc -[CALayer actionForKey:] + 437 IPad[1085]: critical: 12 QuartzCore 0x000000010c71dade _ZL12actionForKeyP7CALayerPN2CA11TransactionEP8NSString + 76 IPad[1085]: critical: 13 QuartzCore 0x000000010c71da6c _ZN2CA5Layer12begin_changeEPNS_11TransactionEjRP11objc_object + 140 IPad[1085]: critical: 14 QuartzCore 0x000000010c71de04 _ZN2CA5Layer6setterEj12_CAValueTypePKv + 164 IPad[1085]: critical: 15 QuartzCore 0x000000010c71f371 -[CALayer setTransform:] + 68 IPad[1085]: critical: 16 IPad 0x0000000105b8fc89 xamarin_dyn_objc_msgSend + 217 IPad[1085]: critical: 17 ??? 0x000000012b3cebcb 0x0 + 5020380107 IPad[1085]: critical: 18 ??? 0x000000012b3ce9c9 0x0 + 5020379593 IPad[1085]: critical: 19 ??? 0x000000012b187d49 0x0 + 5017992521 IPad[1085]: critical: 20 ??? 0x000000012cabe3d4 0x0 + 5044429780 IPad[1085]: critical: 21 ??? 0x000000012aa00f39 0x0 + 5010100025 IPad[1085]: critical: 22 IPad 0x00000001059ecab5 mono_jit_runtime_invoke + 1301 IPad[1085]: critical: 23 IPad 0x0000000105aa0dc8 do_runtime_invoke + 88 IPad[1085]: critical: 24 IPad 0x0000000105ae0fce start_wrapper + 718 IPad[1085]: critical: 25 libsystem_pthread.dylib 0x000000011274d93b _pthread_body + 180 IPad[1085]: critical: 26 libsystem_pthread.dylib 0x000000011274d887 _pthread_body + 0 IPad[1085]: critical: 27 libsystem_pthread.dylib 0x000000011274d08d thread_start + 13 IPad[1085]: critical: ================================================================= Got a SIGSEGV while executing native code. This usually indicates a fatal error in the mono runtime or one of the native libraries used by your application. =================================================================
  4. 之外,目前没有其他方法可以做到这一点